অডিও কোডেক পরিবর্তন করতে চাই তবে এফএফএমপিইগের সাথে ভিডিও সেটিংস রাখুন


27

আমার একটি ভিডিও রয়েছে যার জন্য আমি অডিও কোডেকটিকে এএসি 320 কেবিপিএস / 44.100 কেএইচজেডে রূপান্তর করতে চাই। আমি ffmpeg স্যুইচগুলির জন্য কী ব্যবহার করব যাতে সমস্ত ভিডিও সেটিংস এবং কোডেক একই থাকে, তবে কেবল অডিও কোডেক এবং সেটিংস পরিবর্তন হয়?

আমার ভিডিওটি এখানে:

$ ffmpeg -i Winnipeg.rb\ Scala-Talk.mov 
FFmpeg version SVN-r25375, Copyright (c) 2000-2010 the FFmpeg developers
  built on Oct  6 2010 13:02:41 with gcc 4.2.1 (Apple Inc. build 5664)
  configuration: --enable-libmp3lame --enable-shared --disable-mmx --arch=x86_64
  libavutil     50.32. 2 / 50.32. 2
  libavcore      0. 9. 1 /  0. 9. 1
  libavcodec    52.92. 0 / 52.92. 0
  libavformat   52.80. 0 / 52.80. 0
  libavdevice   52. 2. 2 / 52. 2. 2
  libavfilter    1.48. 0 /  1.48. 0
  libswscale     0.12. 0 /  0.12. 0

Seems stream 0 codec frame rate differs from container frame rate: 2000.00 (2000/1) -> 10.00 (10/1)
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'Winnipeg.rb Scala-Talk.mov':
  Metadata:
    major_brand     : qt  
    minor_version   : 537199360
    compatible_brands: qt  
  Duration: 01:10:53.00, start: 0.000000, bitrate: 283 kb/s
    Stream #0.0(eng): Video: h264, yuv420p, 800x598, 94 kb/s, 10 fps, 10 tbr, 1k tbn, 2k tbc
    Stream #0.1(eng): Audio: adpcm_ima_qt, 22050 Hz, 1 channels, s16
    Stream #0.2(eng): Audio: adpcm_ima_qt, 22050 Hz, 1 channels, s16
At least one output file must be specified

অগ্রিম ধন্যবাদ! Ffmpeg এর সাথে একটি জিনিস আমি কখনই কুঁচকে উঠতে পারিনি, তা হল যে আপনি যে পরিবর্তন করতে চান না তার জন্য প্রতিটি সামান্য সেটিংটি পুনরায় সাজানো ছাড়াই কীভাবে কেবল "টুইট" ফাইলগুলি করা যায়।


অডিও (পাশাপাশি ভিডিও) মোটামুটি নিম্নমানের বলে মনে হয়। নোট করুন যে আপনি ফর্ম্যাট পরিবর্তন করে, নমুনার হার বাড়িয়ে, এবং বিটরেট বাড়িয়ে অডিওটির গুণমানকে বাড়িয়ে তুলবেন না।
প্রবাহ

উত্তর:


35

উভয়কে ধন্যবাদ, ফল্টমের মন্তব্যে এহসানের জবাবের সমষ্টি।

ffmpeg -i input.avi -acodec mp3 -vcodec copy out.avi

কেবল স্ব-রেফারেন্সের জন্য যেহেতু আমি সবসময় এই -vcodec copyঅংশটি ভুলে যাই
ইগোরোশি

2
আপনি নিজের উত্তরটি ব্যাখ্যা করার জন্য কিছুটা বাড়িয়ে দিতে পারেন? ধন্যবাদ।
ফিক্সার 1234

2
-i input.aviআপনি রূপান্তর করতে চান ফাইল নির্দিষ্ট করে। out.aviরূপান্তরিত ফাইল। -acodec mp3আউটপুট ফাইলে লেখার সময় অডিও স্ট্রিমটিকে এমপি 3 এ রূপান্তর করতে বলে। vcodec copyকেবলমাত্র স্ট্রিমটি পরিবর্তন না করে আউটপুট ফাইলে অনুলিপি করতে বলেছে।
Wodin

8

আপনি কী করছেন তা বিচার করা শক্ত, যেহেতু ffmpeg কমান্ডটি আপনার পোস্টে কিছুটা ছড়িয়ে পড়েছিল।

একটি অডিও ট্র্যাক প্রতিস্থাপন করতে:

ffmpeg -i test.avi -i normalized.mp3 -map 0:0 -map 1:0 -vcodec copy -acodec copy new_test.avi

উপরের প্যারামিটারগুলি সম্পর্কে আরও তথ্য পাওয়া যায়: এফএফপিপেগ ডকুমেন্টেশন


1
ধন্যবাদ। এটি আমার সমস্যার সমাধান করেছে। আমি যখন পরিচালনা করি ffmpeg -i old.mkv -i onlySound.m4a out.mkvঅপারেশনটি আরও বেশি সময় নেয়। কেন এই সু?
জেটা.ইনকোস্টেটর

6

আপনি যদি কেবল অডিও এবং / অথবা ভিডিও কোডেক (গুলি) পরিবর্তন করতে চান তবে এগুলি কেবল প্যারামিটার হিসাবে যুক্ত করতে পারেন:

কেবল অডিও কোডেককে এমপি 3 এ পরিবর্তন করুন (মূল কোডেকটি কখনও ছিল)

ffmpeg -i input.avi -acodec mp3 out.avi

কেবল ভিডিও কোডেককে h264 এ পরিবর্তন করুন

ffmpeg -i input.avi -vcodec h264 out.avi

এটি লক্ষ্য করা ভাল যে ffmpeg অবশ্যই নতুন কোডেকের এনকোডিং সমর্থন করবে। Https://stackoverflow.com/questions/3377300/ কি- are-all- codecs- supported- by- ffmpeg দেখুন


5
এটি আমার পক্ষে কাজ করেছে, তবে -vcodec copyআমার ভিডিওটি h.264 তে ট্রান্সকোড করার চেষ্টা থেকে বিরত রাখতে আমার যুক্ত করা দরকার। ডুনো কেন এটি ডিফল্টরূপে করেছিল।
ফ্লেটম

-1

আপনি হ্যান্ডব্রেক কেন ব্যবহার করবেন না যা ভিডিও রাখতে এবং অডিও পরিবর্তন করতে দেয় এবং এটি এফএফপিপেজের জন্য একটি জিইউআই এবং এটি একটি কবজির মতো কাজ করে।


3
হ্যান্ডব্র্যাক আসলে এটি করতে পারে না; এটি অডিও বা সাবটাইটেল স্ট্রিমগুলির একটি সাধারণ অনুলিপি করতে পারে তবে এটি সবসময় ভিডিওটিকে পুনরায় এনকোড করে।
অশুভসূচ
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.