[FFmpeg-devel] [PATCH v2 1/2] avcodec/noise: don't force non-zero value for amount
Michael Niedermayer
michael at niedermayer.cc
Sat Jul 24 00:49:30 EEST 2021
On Sat, Jul 24, 2021 at 01:24:54AM +0530, Gyan Doshi wrote:
>
>
> On 2021-07-24 01:14, Michael Niedermayer wrote:
> > On Fri, Jul 23, 2021 at 04:04:49PM +0530, Gyan Doshi wrote:
> > > Currently, the user is forced to accept some noise in
> > > packet payload, even if not requested.
> > > ---
> > > doc/bitstream_filters.texi | 13 +++++-------
> > > libavcodec/noise_bsf.c | 21 +++++++++++++------
> > > tests/fate/matroska.mak | 2 +-
> > > .../fate/matroska-mastering-display-metadata | 10 ++++-----
> > > 4 files changed, 26 insertions(+), 20 deletions(-)
> > >
> > > diff --git a/doc/bitstream_filters.texi b/doc/bitstream_filters.texi
> > > index d10842ae47..2b84bda1fc 100644
> > > --- a/doc/bitstream_filters.texi
> > > +++ b/doc/bitstream_filters.texi
> > > @@ -534,20 +534,17 @@ container. Can be used for fuzzing or testing error resilience/concealment.
> > > Parameters:
> > > @table @option
> > > @item amount
> > > -A numeral string, whose value is related to how often output bytes will
> > > -be modified. Therefore, values below or equal to 0 are forbidden, and
> > > -the lower the more frequent bytes will be modified, with 1 meaning
> > > -every byte is modified.
> > > +Accepts a positive integer. Lower the value, more frequently bytes will be modified,
> > > +with @var{1} meaning every byte is modified. Default is @var{0}.
> > > @item dropamount
> > > -A numeral string, whose value is related to how often packets will be dropped.
> > > -Therefore, values below or equal to 0 are forbidden, and the lower the more
> > > -frequent packets will be dropped, with 1 meaning every packet is dropped.
> > > +Accepts a positive integer. Lower the value, more frequently packets will be dropped,
> > > +with @var{1} meaning every packet is dropped. Default is @var{0}.
> > > @end table
> > > The following example applies the modification to every byte but does not drop
> > > any packets.
> > > @example
> > > -ffmpeg -i INPUT -c copy -bsf noise[=1] output.mkv
> > > +ffmpeg -i INPUT -c copy -bsf noise=amount=1 output.mkv
> > > @end example
> > > @section null
> > > diff --git a/libavcodec/noise_bsf.c b/libavcodec/noise_bsf.c
> > > index 6ebd369633..c1b0203442 100644
> > > --- a/libavcodec/noise_bsf.c
> > > +++ b/libavcodec/noise_bsf.c
> > > @@ -33,20 +33,28 @@ typedef struct NoiseContext {
> > > unsigned int state;
> > > } NoiseContext;
> > > -static int noise(AVBSFContext *ctx, AVPacket *pkt)
> > > +static int noise_init(AVBSFContext *ctx)
> > > {
> > > NoiseContext *s = ctx->priv_data;
> > > - int amount = s->amount > 0 ? s->amount : (s->state % 10001 + 1);
> > > - int i, ret;
> > you are droping the support for variable noise
> >
> > this also breaks a simple plain "-bsf noise"
>
> Will re-add it. Is making it default required?
what else would -bsf noise do ?
I think someone using "-bsf noise" might be surprised if what it does changes
Is there a disadvantge in leaving the default ?
thx
[...]
--
Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB
In a rich man's house there is no place to spit but his face.
-- Diogenes of Sinope
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 195 bytes
Desc: not available
URL: <https://ffmpeg.org/pipermail/ffmpeg-devel/attachments/20210723/ed01d384/attachment.sig>
More information about the ffmpeg-devel
mailing list