मेरे पास वीडियो को एन्कोड करने के लिए एक स्क्रिप्ट है (मेन्कोडेर का उपयोग करके), लेकिन क्या कमांड लाइन से एक साधारण "फीका आउट / टू ब्लैक" जोड़ने का एक तरीका है, अधिमानतः मुक्त (जैसा कि खुले स्रोत में)।
यह या तो विंडोज या उबंटू लिनक्स पर हो सकता है।
मेरे पास वीडियो को एन्कोड करने के लिए एक स्क्रिप्ट है (मेन्कोडेर का उपयोग करके), लेकिन क्या कमांड लाइन से एक साधारण "फीका आउट / टू ब्लैक" जोड़ने का एक तरीका है, अधिमानतः मुक्त (जैसा कि खुले स्रोत में)।
यह या तो विंडोज या उबंटू लिनक्स पर हो सकता है।
जवाबों:
केवल एक चीज जो मैं पा सकता था - कमांड लाइन पर आधारित - mmsuper8
एक लिनक्स टूल।
विशेष रूप से, यह mmsuper8fade
उपकरण की सुविधा देता है , जो ऐसा लगता है कि यह आपके लिए उपयोगी हो सकता है।
यदि आप इस प्रश्न को संपादित करते हैं और आपके लिए काम करने वाले उदाहरण की आपूर्ति करते हैं तो सबसे अच्छा होगा!
'फीका' वीडियो फिल्टर के साथ हाल ही में ffmpeg ऐसा कर सकता है। दुर्भाग्य से, Ubuntu रेपो में ffmpeg के पास किसी कारण के लिए सक्षम फिल्टर नहीं हैं, इसलिए आपको इसे कहीं और से प्राप्त करना होगा ( यहां देखें )।
काले से फीका करने के लिए, फ्रेम 0 से शुरू होकर, 50 से अधिक फ्रेम (2 सेकंड @ 25fps):
ffmpeg -i input.mp4 -filter:v 'fade=in:0:50' \
-c:v libx264 -crf 22 -preset veryfast -c:a copy output.mp4
21000 (14 मिनट @ 25fps) फ्रेम पर शुरू करने के लिए, 50 से अधिक फ्रेम:
ffmpeg -i input.mp4 -filter:v 'fade=out:21000:50' \
-c:v libx264 -crf 22 -preset veryfast -c:a copy output.mp4
आप दोनों को एक फ़िल्टरचैन में संयोजित कर सकते हैं:
ffmpeg -i input.mp4 -filter:v 'fade=in:0:50,fade=out:21000:50' \
-c:v libx264 -crf 22 -preset veryfast -c:a copy output.mp4
जैसा कि आप इन उदाहरणों से देख सकते हैं, वीडियो फिल्टर का उपयोग करते समय आपको वीडियो ट्रांसकोड करना होगा। चूंकि ffmpeg और mencoder कई पुस्तकालयों को साझा करते हैं, इसलिए mencoder के बजाय ffmpeg का उपयोग करना और एक अनावश्यक अतिरिक्त एनकोड से बचने के लिए अपनी स्क्रिप्ट को फिर से लिखना काफी आसान होना चाहिए। मुझे पूरा यकीन है कि आप mencoder में एक ही चीज़ हासिल कर सकते हैं, लेकिन मुझे mencoder syntax नहीं पता है।
फिल्मों के अंत (ऑडियो + वीडियो) को स्वचालित रूप से मिटाने के लिए मेरे पास यह बैश स्क्रिप्ट है:
#!/bin/bash
# Audio + vidéo fade out at the end of mp4 files
# 2015-09-09 19:07:17.0 +0200 / Gilles Quenot
# length of the fade out
fade_duration=2 # seconds
if [[ ! $2 ]]; then
cat<<EOF
Usage:
${0##*/} <input mp4> <output mp4>
EOF
exit 1
fi
for x in bc awk ffprobe ffmpeg; do
if ! type &>/dev/null $x; then
echo >&2 "$x should be installed"
((err++))
fi
done
((err > 0)) && exit 1
duration=$(ffprobe -select_streams v -show_streams "$1" 2>/dev/null |
awk -F= '$1 == "duration"{print $2}')
final_cut=$(bc -l <<< "$duration - $fade_duration")
ffmpeg -i "$1" \
-filter:v "fade=out:st=$final_cut:d=$fade_duration" \
-af "afade=t=out:st=$final_cut:d=$fade_duration" \
-c:v libx264 -crf 22 -preset veryfast -strict -2 "$2"
FadeOutMp4 <input mp4> <output mp4>