Ffmpeg'de saydamlığı olan iki videoyu birleştirme


7

Aşağıdaki komutu kullanarak bir dosyaya birleştirilen iki videom var. Ne yazık ki, ikinci video ilk videoyu kapsıyor ve görünmüyor. İkinci video nasıl saydamlaştırılır (örn.% 50)?

ffmpeg
    -i in1.mp4 -i in2.mp4
    -filter_complex "nullsrc=size=480x360 [base];
        [0:v] setpts=PTS-STARTPTS, scale=480x360 [top];
        [1:v] setpts=PTS-STARTPTS, scale=480x360 [bottom];
        [base][top] overlay=shortest=1 [temp];
        [temp][bottom] overlay=shortest=1"
    -acodec libvo_aacenc -vcodec libx264 out.pm4

Sorunuzla alakasız, ancak libvo_aacencberbat bir AAC kodlayıcı. Yerine -c:a aackullanın. Eğer deneysel ffmpegolduğunu söyleyen bir hata veriyorsa , o aaczaman yükseltme yapın ffmpegçünkü aacartık deneysel değil.
lgan

Her iki giriş de ses içeriyor mu? Eğer evet ise, sesle nasıl baş etmek istersin? Komutunuzla ffmpegbir girişten sesi seçecektir. ffmpegYardım isterken her zaman komutun konsol çıktısını eklemelisin .
lgan

Yanıtlar:


6

kullanım

ffmpeg \
    -i in1.mp4 -i in2.mp4 \
    -filter_complex " \
        [0:v]setpts=PTS-STARTPTS, scale=480x360[top]; \
        [1:v]setpts=PTS-STARTPTS, scale=480x360, \
             format=yuva420p,colorchannelmixer=aa=0.5[bottom]; \
        [top][bottom]overlay=shortest=1" \
    -acodec libvo_aacenc -vcodec libx264 out.mp4

aaGerekli olan opaklık değerine ayarlayın .


Bu, ana video (in1.mp4) in2.mp4 bittikten sonra video göstermeyi bırakması dışında neredeyse benim için çalışıyor, ancak in1.mp4'ten gelen ses videonun süresi boyunca devam ediyor, sadece video "duraklatıldı"
Titan

Ayrıca açıklayabilir topve bottombenim bindirme sola dayalı oturur ve ben onu taşımak gerekiyor piksel sayısını belirtmek zorunda olsa bile, bu merkezli istiyorum
Titan

@ Mulvya bu işe yarıyor, en kısa videoyu tekrarlamanın bir yolu var mı?
Janis S.

Hangi girişin en kısa olduğunu biliyorsanız, filtre zinciri olmalıdır scale=480x360,loop=-1:99999:0,setpts=PTS-STARTPTS. 99999, kare sayısından eşit veya daha büyük bir sayıdır.
Gyan
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.