2014-11-16 11 views
9

एक .ass उपशीर्षक को ffmpeg के साथ एक एमकेवी वीडियो में ट्रैक करके, इसे डिफ़ॉल्ट ट्रैक के रूप में सेट नहीं किया गया है, इसलिए प्लेबैक पर आपको मैन्युअल रूप से उपशीर्षक चालू करना होगा। क्या उपशीर्षक ट्रैक के लिए डिफ़ॉल्ट ध्वज सेट करना संभव है?ffmpeg सेट उपशीर्षक डिफ़ॉल्ट के रूप में ट्रैक

ffmpeg कमांड का प्रयोग किया:

ffmpeg -i video.mp4 -i subtitles.ass -c:v libx264 -preset veryslow \ 
-pix_fmt yuv420p10le -c:a copy -c:s copy output.mkv 

ध्यान दें कि मैं .ass उपशीर्षक प्रारूप रखना चाहते हैं, नहीं इस समान प्रश्न में सुझाव दिया की तरह mov_text के लिए उपशीर्षक परिवर्तित: How to set default streams with ffmpeg

नहीं है इसके बाद mkvpropedit के साथ डिफ़ॉल्ट ध्वज सेट करने की संभावना:

mkvpropedit output.mkv --edit track:s1 --set flag-default=1 

लेकिन क्या यह सीधे ffmpeg के साथ ऐसा करना संभव है?

+0

खेलने के लिए वीएलसी मजबूर करने के लिए डिफ़ॉल्ट के बजाय 'मजबूर' है, लेकिन सवाल ही मान्य है। मेरे साथ भी वही दिक्कत है। – Tobia

उत्तर

14

मुझे लगता है कि this patch के अनुसार यह अब संभव है। मेरे लिए कम से कम यह साथ काम करता है: इस मामले में -disposition:s:0 में

ffmpeg -i in.mp4 -i in.srt -c copy -disposition:s:0 default out.mkv 

नोट sउपशीर्षक के लिए खड़ा है और नहीं धारा। सूचकांक द्वारा दूसरे भाप का चयन करने के लिए -disposition:1 का उपयोग करें।

+2

v.3 'ffmpeg' के रूप में पहले से ही 'डिस्पोजिशन' लागू किया गया है लेकिन अभी तक दस्तावेज नहीं किया गया है। – Kondybas

+0

'डिस्पोजिशन' हाल ही में दस्तावेज किया गया है। – LordNeckbeard

4

आप उपयोग कर सकते हैं अतः शायद इस प्रश्न के लिए गलत साइट है यह

ffmpeg -f mp4 -i outfile.mp4 -f srt -i VTS_07_0.EnglishV2.srt -c:v copy -c:a copy -metadata:s:a:0 language=Japanese -c:s mov_text -metadata:s:s:0 language=English -disposition:s:s:0 forced mix.mp4 
संबंधित मुद्दे