ffmpeg drawtext फ़िल्टर - पाठ के साथ पारदर्शी पृष्ठभूमि बनाएँ


11

मैं वर्तमान में drawtextफिल्टर के साथ काम कर रहा हूं । अब तक मैं केवल drawtextसही फ़ॉन्ट का उपयोग करने और पाठ को क्षैतिज रूप से केंद्रित करने के लिए विकल्प कॉन्फ़िगरेशन के साथ सफल रहा हूं । drawtextनीचे दिखाए गए अनुसार मैं वीडियो पर टेक्स्ट कैसे प्रदर्शित कर सकता हूं ?

ffmpeg

ffmpeg -i "/media/test/test.mp4" -vf drawtext="fontfile=/usr/share/fonts/truetype/open-sans/OpenSans-Regular.ttf:text='Title of this Video':x=(w-tw)/2:y=(h-th)/2"  /media/test_edited.mp4"

जवाबों:


21

drawboxबॉक्स के लिए, और drawtextपाठ के लिए उपयोग करें ।

लाल भृंग

ffmpeg -i input.mp4 -vf \
"format=yuv444p, \
 drawbox=y=ih/PHI:color=black@0.4:width=iw:height=48:t=fill, \
 drawtext=fontfile=OpenSans-Regular.ttf:text='Title of this Video':fontcolor=white:fontsize=24:x=(w-tw)/2:y=(h/PHI)+th, \
 format=yuv420p" \
-c:v libx264 -c:a copy -movflags +faststart output.mp4
  • drawtextएक boxविकल्प है, लेकिन जहां तक ​​मैं बता सकता हूं कि यह एक मनमानी चौड़ाई नहीं हो सकती है और पाठ के आकार के सापेक्ष है, इसलिए drawboxइसके बजाय इसका उपयोग किया जाता है।

  • formatफिल्टर का रंग सुधार करने के लिए प्रयोग किया जाता है drawboxक्षेत्र; अन्यथा, आपके इनपुट और आउटपुट प्रारूपों के आधार पर, क्षेत्र डी-संतृप्त या मोनोक्रोम देख सकता है। formatफिल्टर तो यह सुनिश्चित करें कि आउटपुट फ़ाइल का पिक्सेल प्रारूप सभी खिलाड़ियों के साथ संगत है फिर से प्रयोग किया जाता है।

  • ऑडियो को इस उदाहरण में कॉपी किया जा रहा है क्योंकि आप इसे अनावश्यक रूप से फिर से एनकोड नहीं करना चाहते हैं।

  • पुराने ffmpegउपयोगकर्ताओं को t=maxइसके बजाय उपयोग करना होगा t=fill।


बिल्कुल सही, यह वर्तमान प्रश्न के दायरे से बाहर है और मुझे एक नया प्रश्न बनाने की आवश्यकता हो सकती है। snapchatटाइमर जोड़ने का कोई सुझाव । उदाहरण के लिए, मैंने कुछ टेस्टिंग की और ffmpeg में एक टेस्टिंग आर्क वीडियो स्रोत है जिसमें टाइमर है ffplay -f lavfi -i testsrc:। प्रारंभिक टाइमर के अंक 0 में 29x52 पिक्सेल का आकार है और शीर्ष-कोने कोने से इसकी स्थिति क्षैतिज रूप से 256 पिक्सेल और 94 पिक्सेल ऊर्ध्वाधर है। मैं एक अंक के क्षेत्र को इस तरह से काट सकता हूंffmpeg -f lavfi -i testsrc -vf crop=29:52:256:94 -t 10 timer1.mp4
— कोड_एड_स्टूडेंट

मैंने प्रश्न के लिए एक टाइमर के साथ एक छवि को जोड़ा। टाइमर वीडियो की अवधि के आधार पर एक काउंट डाउन है।
— कोड_एड_स्टूडेंट

हां, मैं इसके लिए एक नया प्रश्न बनाऊंगा। तुम सही हो। 30. 29, 28...आदि
— Code_Ed_Student

नया प्रश्न पोस्ट किया गया: video.stackexchange.com/questions/15556/ffmpeg-video-with-timer
— Code_Ed_Student

1
महान और आप सही हैं यह बॉक्स को प्रभावित करता है
— Code_Ed_Student

1

ffmpeg -i C: \ Users \ Developer_2 \ Videos \ 2.mkv -vf drawtext = "fontfile = C \: / Regular.ttf: text = 'apcis.tmou.org': fontcolor / white: fontize = 24: box = 1: boxcolor=black@0.4: x = w-tw: y = h-th "C: \ inetpub \ wwwroot \ videos \ 1.mp4


यह मेरे लिए काम किया है, लेकिन मैं boxcolor-white@0.9 का उपयोग कर रहा हूं
— कृपाण tabatabaee yazdi
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.