मेरे एमपी 3 फाइलें एक ही आकार की क्यों हैं, यहां तक ​​कि जब मैं ffmpeg के साथ बिटरेट को बदलता हूं?


25

मैंने मूल रूप से एक ही प्रारूप का उपयोग करके एक ऑडियो स्ट्रीम को 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"

जवाबों:


52

क्योंकि आप -q:aवह सेटिंग कर रहे हैं जो LAME की VBR सेटिंग है। जब आप उपयोग करते हैं -q:a, तो सीबीआर सेटिंग ( -b:a) का कोई प्रभाव नहीं होगा।

यदि आप FFmpeg विकि से MP3 एन्कोडिंग गाइड में देखते हैं, तो आपको -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
— जोनास शफर

मुझे आश्चर्य है कि अगर यह मामला नहीं था! बहुत बहुत धन्यवाद।
— अर्लेन बीइलर
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.