किसी वीडियो में लोगो जोड़ने के लिए overlay
वीडियो फ़िल्टर का उपयोग करना :
ffmpeg -i video.mp4 -i logo.png -filter_complex "[0:v][1:v]overlay" \
-codec:a copy out.mp4
इस कमांड को समझने के लिए आपको यह जानना होगा कि स्ट्रीम स्पेसियर क्या है और FFmpeg फ़िल्टरिंग का परिचय पढ़ने से मदद मिलेगी। [0:v]
पहले इनपुट ( video.mp4
) के वीडियो स्ट्रीम (एस) को [1:v]
संदर्भित करता है , और दूसरे इनपुट के वीडियो स्ट्रीम को संदर्भित करता है ( logo.mp4
)। यह है कि आप कैसे overlay
इनपुट का उपयोग करने के लिए बता सकते हैं। आप छोड़ सकते हैं [0:v][1:v]
, और overlay
अभी भी काम करेंगे, लेकिन यह स्पष्ट होने की सलाह दी जाती है और संभवतः अज्ञात चूक पर भरोसा नहीं किया जाता है।
डिफ़ॉल्ट रूप से लोगो को ऊपरी बाएँ में रखा जाएगा।
ऑडियो का उपयोग करके स्ट्रीम को कॉपी-codec:a copy
करेगा । यह केवल ऑडियो को पुन: एन्कोडिंग करने के बजाय पुन: मक्स करता है। इसे ऑडियो की "कॉपी और पेस्ट" के रूप में सोचें।
लोगो को घुमाते हुए
यह उदाहरण लोगो को 10 पिक्सेल दाईं ओर और 10 पिक्सेल नीचे ले जाएगा:
ffmpeg -i video.mp4 -i logo.png -filter_complex "[0:v][1:v]overlay=10:10" \
-codec:a copy out.mp4
यह उदाहरण लोगो को दाईं ओर 10 पिक्सेल और 10 पिक्सेल नीचे ले जाएगा:
ffmpeg -i video.mp4 -i logo.png -filter_complex \
"[0:v][1:v]overlay=main_w-overlay_w-10:10" -codec:a copy out.mp4
main_w
"मुख्य" इनपुट (पृष्ठभूमि या [0:v]
) overlay_w
की चौड़ाई को संदर्भित करता है , और "ओवरले" इनपुट (लोगो [1:v]
) की चौड़ाई को संदर्भित करता है । इसलिए, उदाहरण में, इसका अनुवाद किया जा सकता है overlay=320-90-10:10
या overlay=220:10
।
ओवरले का समय
कुछ फ़िल्टर समयरेखा संपादन को संभाल सकते हैं जो आपको यह निर्धारित करने के लिए अंकगणितीय अभिव्यक्तियों का उपयोग करने की अनुमति देता है जब एक फ़िल्टर लागू किया जाना चाहिए। का संदर्भ लें ffmpeg -filters
देखने के लिए जो फिल्टर समर्थन समय संपादन।
यह उदाहरण 30 सेकंड तक लोगो को दिखाएगा:
ffmpeg -i video.mp4 -i logo.png -filter_complex \
"[0:v][1:v]overlay=10:10:enable=between(t\,0\,30)" -codec:a copy out.mp4
यदि आप लोगो को फीका करना चाहते हैं तो mark4o के उत्तर को देखें ।