ffmpeg

2011-09-27 21 views
8

से दो वीडियो जोड़ना मैं ffmpeg का उपयोग कर एक एमपी 4 वीडियो बनाने के लिए दो एमपी 4 वीडियो जोड़ना चाहता हूं।ffmpeg

मैं अब तक की कोशिश की

ffmpeg -i input1.mp4 -i input2.mp4 output.mp4 

, हर बार जब मैं पहली इनपुट के वीडियो कोडेक और अन्य नहीं के साथ वीडियो प्राप्त है लेकिन। मैं उन्हें कैसे जोड़ सकता हूं? इस पर किसी भी विचार की अत्यधिक सराहना की जाएगी।

+1

"पहले इनपुट के वीडियो कोडेक और दूसरे नहीं" से आपका क्या मतलब है? क्या वे अलग-अलग वीडियो प्रारूप हैं? क्या आपको आउटपुट में दोनों वीडियो की सामग्री मिलती है? – TheJuice

+0

कृपया अधिक जानकारी प्रदान करें। आप उन्हें गठबंधन करने की उम्मीद कैसे कर रहे हैं? क्रमिक रूप से? या आप एक फ़ाइल में दो समानांतर वीडियो धाराएं चाहते हैं? एमपी 4 सिर्फ एक कंटेनर है। क्या वास्तविक कोडेक्स समान हैं? अपनी फाइलों के लिए 'ffprobe' के आउटपुट दें। – misha

+0

दोनों वीडियो एक ही प्रारूप के हैं और मुझे केवल आउटपुट फ़ाइल में पहला वीडियो मिलता है। – Astha

उत्तर

5

फाइलों में शामिल होने के बारे में जानकारी के लिए कृपया FFMPEG FAQ पढ़ें।

दुर्भाग्यवश, चूंकि आप एमपी 4 फाइलों का उपयोग कर रहे हैं, इसलिए सरल कॉन्सटेनेशन आपके लिए काम नहीं करेगा क्योंकि एमपी 4 प्रारूप में "हेडर" होता है (हालांकि यह फ़ाइल की शुरुआत में जरूरी नहीं है) अनुभाग मीडिया डेटा में ऑफ़सेट्स का वर्णन करता है और इसमें शामिल है। आपको दोनों फ़ाइलों को एक प्रारूप में ट्रांसकोड करने की आवश्यकता होगी जिसे समेकित किया जा सकता है और उसके बाद उस प्रारूप से MP4 फ़ाइल उत्पन्न करें (जो उचित शीर्षलेख अनुभाग उत्पन्न करेगा)।

5

आप .mp4 फ़ाइलों को संयोजित नहीं कर सकते हैं लेकिन आप .mpg फ़ाइलों को जोड़ सकते हैं। पहले ffmpeg का उपयोग कर दोनों वीडियो को .mpg में कनवर्ट करने का प्रयास करें। फिर, संयुक्त .mpg फ़ाइल बनाने के लिए .mpg फ़ाइलों दोनों पर एक साधारण लिनक्स बिल्ली कमांड चलाएं। उसके बाद, ffmpeg का उपयोग कर concmpenated .mpg फ़ाइल को .mp4 में कनवर्ट करें। यह एक चौराहे के दृष्टिकोण की तरह है लेकिन यह काम करता है। आप आदेशों की संख्या को कम करने के लिए "नामित पाइप" का उपयोग कर सकते हैं लेकिन परिणाम वही है।

3

आप इसे ffmpeg के साथ कर सकते हैं, लेकिन वहाँ MP4Box (GPAC का हिस्सा) नामक एक छोटा सा उपकरण भी है, जो एकाधिक एमपी 4 फ़ाइलों को जोड़ सकता है।

आपके मामले में, वाक्य रचना

MP4Box -cat input1.mp4 -cat input2.mp4 output.mp4 
+2

आप इसे [कॉम्पटेट डेमक्सर] (https://trac.ffmpeg.org/wiki/Concatenate#demuxer) का उपयोग करके 'ffmpeg'' के साथ कर सकते हैं (यदि आपके इनपुट सभी समान प्रारूप हैं, आदि का उपयोग करें और आप [स्ट्रीम करना चाहते हैं कॉपी] (http://ffmpeg.org/ffmpeg.html#Stream-copy)) या [concat filter] (http://ffmpeg.org/ffmpeg-filters.html#concat) (यदि आप पुनः- एन्कोड, और/या यदि आपके इनपुट में समान प्रारूप, टाइमबेस, आदि नहीं हैं)। – LordNeckbeard

+0

अरे बहुत बहुत धन्यवाद। मैंने mp4box का उपयोग करके अपने गोप्रो से कई एमपी 4 फ़ाइलों का परीक्षण किया है। मुझे आश्चर्य है कि यह कितना अच्छा काम करता है। वे निर्दोष रूप से संयुक्त थे। – daniel

5

पिछले जवाब दिखाने के रूप में, आप एक मध्यवर्ती प्रारूप के लिए सबसे पहले बदलने की आवश्यकता है। mp4 h264 बिटस्ट्रीम है, तो आप उपयोग कर सकते हैं:

ffmpeg -i input1.mp4 -c copy -bsf:v h264_mp4toannexb -f mpegts input1.ts 
ffmpeg -i input2.mp4 -c copy -bsf:v h264_mp4toannexb -f mpegts input2.ts 
ffmpeg -i "concat:input1.ts|input2.ts" -c copy output.mp4 

एक अधिक विस्तृत जवाब आप here पा सकते हैं।