আমি এমপি 3 ফাইলগুলি একই আকার, এমনকি আমি যখন ffmpeg দিয়ে বিটরেট পরিবর্তন করি?


27

মূলত একই ফর্ম্যাটটি ব্যবহার করে আমি একটি অডিও স্ট্রিমকে 3 টি আলাদা সেটিংসে রূপান্তর করেছি। তারা ঠিক একই আকার হয়ে শেষ। কেন?

ffmpeg -i "Likoonl-Q1-All.mp4" -c:v copy -c:a libmp3lame -q:a 1 -b:a 192k "Q1-All-192k.mp4"
ffmpeg -i "Likoonl-Q1-All.mp4" -c:v copy -c:a libmp3lame -q:a 1 -b:a 160k "Q1-All-160k.mp4"
ffmpeg -i "Likoonl-Q1-All.mp4" -c:v copy -c:a libmp3lame -q:a 1 -b:a 128k "Q1-All-128k.mp4"

উত্তর:


53

কারণ আপনি সেটিংস করছেন -q:aযা লামের ভিবিআর সেটিংস। আপনি যখন ব্যবহার করবেন -q:a, তখন সিবিআর সেটিংস ( -b:a) এর কোনও প্রভাব থাকবে না।

আপনি যদি FFmpeg উইকি থেকে এমপি 3 এনকোডিং গাইডটি সন্ধান করেন তবে আপনি -q:aতাদের যথাযথ গড় বিটরেটের সাথে সম্ভাব্য মানগুলি খুঁজে পাবেন ।

সম্পূর্ণতার জন্য, এর সম্পর্কিত অংশটি এখানে libmp3lame.c- qscaleএর দীর্ঘ নাম q:

/* rate control */
if (avctx->flags & CODEC_FLAG_QSCALE) { // VBR
    lame_set_VBR(s->gfp, vbr_default);
    lame_set_VBR_quality(s->gfp, avctx->global_quality / (float)FF_QP2LAMBDA);
} else {
    if (avctx->bit_rate) {
        if (s->abr) {                   // ABR
            lame_set_VBR(s->gfp, vbr_abr);
            lame_set_VBR_mean_bitrate_kbps(s->gfp, avctx->bit_rate / 1000);
        } else                          // CBR
            lame_set_brate(s->gfp, avctx->bit_rate / 1000);
    }
}

28
সূত্রটি খুঁজে পেতে 4 মিনিট। +1
জোনাস শ্যাফার

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