আপনি বলছেন যে আপনি "এগুলি থেকে অডিও উত্তোলন করতে চান (এমপি 3 বা অগ)"। কিন্তু এমপি 4 ফাইলে অডিও যদি তাদের মধ্যে একটি না হয় তবে কী হবে? আপনাকে যেভাবেই ট্রান্সকোড করতে হবে। তাহলে কেন অডিও ফর্ম্যাট সনাক্তকরণটি এফএফএমপিগ অবধি ছেড়ে যাবেন না?
একটি ফাইল রূপান্তর করতে:
ffmpeg -i videofile.mp4 -vn -acodec libvorbis audiofile.ogg
অনেকগুলি ফাইল রূপান্তর করতে:
for vid in *.mp4; do ffmpeg -i "$vid" -vn -acodec libvorbis "${vid%.mp4}.ogg"; done
আপনি অবশ্যই বিটরেট ইত্যাদির মতো জিনিস সেট করতে আপনার পছন্দ মতো অডিও এনকোডিংয়ের জন্য যে কোনও এফএফপিপিগ প্যারামিটারগুলি নির্বাচন করতে পারেন।
ব্যবহারের -acodec libmp3lame
এবং থেকে এক্সটেনশন পরিবর্তন .ogg
করতে .mp3
থেকে mp3 এনকোডিং-এর।
আপনি যা চান তা যদি সত্যিই অডিওটি বের করা হয় তবে আপনি কেবল অডিও ট্র্যাকটি ব্যবহার করে কোনও ফাইলটিতে "অনুলিপি" করতে পারেন -acodec copy
। অবশ্যই, প্রধান পার্থক্যটি হ'ল ট্রান্সকোডিং ধীর এবং সিপিইউ-নিবিড়, যখন অনুলিপি করা সত্যিই দ্রুত কারণ আপনি কেবল একটি ফাইল থেকে অন্য ফাইলটিতে বাইট সরিয়ে নিচ্ছেন। এখানে কীভাবে কেবল অডিও ট্র্যাকটি অনুলিপি করবেন (এটি এমপি 3 ফর্ম্যাটে ধরে নেওয়া):
ffmpeg -i videofile.mp4 -vn -acodec copy audiofile.mp3
লক্ষ্য করুন এই ক্ষেত্রে, audiofile বিন্যাস হয়েছে কি ধারক রয়েছে তার সাথে সামঞ্জস্যপূর্ণ হতে (অর্থাত যদি অডিও এএসি ফরম্যাট, আপনি বলার আছে audiofile.aac
)। আপনার ffprobe
কাছে কোন কোডেক রয়েছে তা দেখতে আপনি কমান্ডটি ব্যবহার করতে পারেন, এটি কিছু তথ্য সরবরাহ করতে পারে:
ffprobe -v error -select_streams a:0 -show_entries stream=codec_name -print_format csv=p=0 "videofile.mp4"
অডিও কোডেককে স্বয়ংক্রিয়ভাবে বিশ্লেষণ করার একটি সম্ভাব্য উপায় এবং সেই অনুযায়ী অডিও ফাইলটির নাম হ'ল:
mkdir -p output
# current directory has to contain at least one .mp4 file
for vid in *.mp4; do
codec="$(ffprobe -v error -select_streams a:0 -show_entries stream=codec_name -print_format csv=p=0 "$vid")"
case "$codec" in
mp3 ) filetype=mp3 ;;
vorbis ) filetype=ogg ;;
* ) filetype= ;;
esac
if [ "$filetype" ]; then
ffmpeg -i "$vid" -vn -acodec copy output/"${vid%.*}"."$filetype"
else
ffmpeg -i "$vid" -vn -acodec libvorbis output/"${vid%.*}".ogg
done
নোটস: আউটপুট ফাইলগুলি উপ-ডিরেক্টরিতে output
তৈরি করা হয় যা এটি শুরুতে তৈরি করে (প্রয়োজনীয় হলে)। এমপি 3 এবং ভারবিসের চেয়ে অন্য কোডেকগুলির জন্য এটি অডিওকে ওজিতে রূপান্তর করে। উবুন্টু 14.04 স্ট্যান্ডার্ড সংগ্রহস্থলগুলিতে ffmpeg নেই, তবে আপনি পিপিএ: এমসি 3man / বিশ্বাসযোগ্য-মিডিয়া সংগ্রহস্থল যুক্ত করতে পারেন এবং প্রয়োজনীয় সফ্টওয়্যার পেতে ffmpeg প্যাকেজ ইনস্টল করতে পারেন। বিশদ জন্য এখানে দেখুন ।