2013-08-09 24 views
5

oynanabilir 4 farklı çözünürlükte 4 farklı video ve android oynanabilir 1 video içine tür uymak istiyorum. Ben https://github.com/guardianproject/android-ffmpegffmpeg komutları 1 video içine farklı tip ve çözünürlük videoları birleştirmek ve android

yüzden videolar 1)

./ffmpeg -i 1.mp4 
Video: h264 (High), yuv420p, 1920x1080, 16959 kb/s, 29.85 fps, 90k tbr, 90k tbn, 180k tbc 
Audio: aac, 48000 Hz, stereo, s16, 106 kb/s 

2)

ffmpeg -i 2.mp4 
Video: h264 (Constrained Baseline), yuv420p, 640x480, 3102 kb/s, 29.99 fps, 90k tbr, 90k tbn, 180k tbc 
Audio: aac, 48000 Hz, stereo, s16, 93 kb/s 

3)

ffmpeg -i 3.3gp 
Video: h263, yuv420p, 1408x1152 [PAR 12:11 DAR 4:3], 2920 kb/s, 15 fps, 15 tbr, 15360 tbn, 29.97 tbc 
Audio: amrnb, 8000 Hz, 1 channels, flt, 12 kb/s 

bu 4 farklı türleri vardır kullanarak robot üzerinde taşıdık ffmpeg kullanıyorum 4)

ffmpeg -i 4.3gp 
Video: h264 (High), yuv420p, 352x288 [PAR 12:11 DAR 4:3], 216 kb/s, 24 fps, 24 tbr, 24 tbn, 48 tbc 

Ses: AAC, 44100 Hz, stereo, s16, 92 kb/s

Yani kullanarak mpegts dönüştürerek am Aşağıdaki komutlar

./ffmpeg -i 1.mp4 -c:v libx264 -vf scale=1920:1080 -r 60 -c:a aac -ar 48000 -b:a 160k -strict experimental -f mpegts 1.ts 
./ffmpeg -i 2.mp4 -c:v libx264 -vf scale=1920:1080 -r 60 -c:a aac -ar 48000 -b:a 160k -strict experimental -f mpegts 2.ts 
./ffmpeg -i 3.3gp -c:v libx264 -vf scale=1920:1080 -r 60 -c:a aac -ar 48000 -b:a 160k -strict experimental -f mpegts 3.ts 
./ffmpeg -i 4.3gp -c:v libx264 -vf scale=1920:1080 -r 60 -c:a aac -ar 48000 -b:a 160k -strict experimental -f mpegts 4.ts 

sonra f içine ts dosyaları birleştirerek. ts ve sonra

cat 1.ts 2.ts 3.ts 4.ts > f.ts 
./ffmpeg -i f.ts -c copy -bsf:a aac_adtstoasc output.mp4 

kullanarak ondan nihai .mp4 dosyası oluşturarak Ama f.ts de linux üzerinde VLC doğru oynamaya görünmüyor, bu ilk 2 mp4 videosunu + audi oynar o ve son sadece .3gp'nin sesini çalar. (output.mp4 için de aynısı) Ne eksik olduğumu anlamaya yardımcı olabilir misiniz? peşin

+1

Sorunu çözebilir misiniz? Aynı bakıyorum. –

+0

Bu listede ekledim @Divya Motivala, Çözdüğünüz herhangi bir yol varsa, cevabı gönderin –

+0

@Aalap Sorunları çözdünüz mü? – muneikh

cevap

2

yılında

Teşekkür Tek bir biçime dönüştürerek sonra teker bütün videolar birini eklemek için concat kullanabilirsiniz.

./ffmpeg -i 1.mp4 -acodec libvo_aacenc -vcodec libx264 -s 1920x1080 -r 60 -strict experimental 1.mp4 

mp4 için her şeyi dönüştürün ve sonra yukarıda verilen talimatları uygulayın:

Ayrıca, bir formata farklı biçimlendirilmiş bir video dönüştürmek için aşağıdaki komutu kullanabilirsiniz. Bu, tüm videolara tek bir dosyada katılmanızı sağlayacaktır.

+0

Concat demuxer benim için harika çalıştı! Sonuç videosu sadece smplayer (MPlayer2 2.0-701-gd4c5b7f-2ubuntu2) ve ffplay (N-78744-gbc7beb6, Yerel derleme) VLC 2.1.6 video görüntüsünü dosyanın başlangıcında doğru şekilde güncellemeyi durdurur, yardım etmek işe yaramıyor. Bu, koştuğum şey: === ffmpeg -f concat -i dosya listesi. txt -c copy output.mp4 === Giriş dosyaları yalnızca çerçeve boyutunda farklılık gösterir (aynı bit, codec ayarları vb.). – Jedihe