[FFmpeg-cvslog] Add support for AMR-WB encoding via libvo-amrwbenc

Michael Niedermayer michaelni at gmx.at
Thu Apr 14 00:11:30 CEST 2011


On Wed, Apr 13, 2011 at 12:04:52AM +0300, Martin Storsjö wrote:
> Hi Reimar,
> 
> On Tue, 12 Apr 2011, Reimar Döffinger wrote:
[..]
> > > +static int amr_wb_encode_frame(AVCodecContext *avctx,
> > > +                               unsigned char *frame/*out*/,
> > > +                               int buf_size, void *data/*in*/)
> > > +{
> > > +    AMRWBContext *s = avctx->priv_data;
> > > +    int size;
> > > +
> > > +    if ((s->mode = getWBBitrateMode(avctx->bit_rate)) < 0) {
> > > +        av_log(avctx, AV_LOG_ERROR, wb_bitrate_unsupported);
> > > +        return -1;
> > > +    }
> > 
> > Failing in the middle of an encode and just because we can't match the 
> > bitrate seems a bit extreme and also not very consistent with other 
> > codecs that might not take the bitrate very seriously in the first 
> > place. From a user perspective it also means the codec can't be used 
> > without special-case code.
> 
> The bitrate is checked during the init, too, so if you set it to an 
> incorrect value, it will error out already at that point, but you're 
> allowed to change between frames. Do you have a better suggestion on how 
> to handle the case if the caller sets it to an unsupported rate during the 
> encoding, while starting out at a supported bitrate?

simple suggestion

pick the closest rate, add the error to the frame

[...]

-- 
Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

The greatest way to live with honor in this world is to be what we pretend
to be. -- Socrates
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 198 bytes
Desc: Digital signature
URL: <http://ffmpeg.org/pipermail/ffmpeg-cvslog/attachments/20110414/298dc240/attachment.asc>


More information about the ffmpeg-cvslog mailing list