Perché i miei file MP3 hanno le stesse dimensioni, anche quando cambio bitrate con ffmpeg?


27

Ho convertito un flusso audio in 3 diverse impostazioni utilizzando essenzialmente lo stesso formato. Hanno finito per avere esattamente le stesse dimensioni. Perchè è questo?

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"

Risposte:


53

Perché stai impostando -q:aqual è l'impostazione VBR di LAME. Quando si utilizza -q:a, l'impostazione CBR ( -b:a) non avrà alcun effetto.

Se guardi la guida alla codifica MP3 dal wiki di FFmpeg troverai i possibili valori -q:acon il loro bitrate medio corrispondente.

Per completezza, ecco la parte rilevante di libmp3lame.c- qscaleè il nome lungo di 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 minuti per trovare la fonte. +1
Jonas Schäfer,

Mi chiedevo se non fosse così! Molte grazie.
Arlen Beiler,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.