[FFmpeg-devel] [PATCH 3/3] avformat/vividas: reduce keybits to require half the space

Michael Niedermayer michael at niedermayer.cc
Fri Jun 21 19:03:08 EEST 2019


On Sat, Jun 08, 2019 at 08:23:22AM +0200, Reimar Döffinger wrote:
> 
> 
> On 07.06.2019, at 23:56, Michael Niedermayer <michael at niedermayer.cc> wrote:
> 
> > Signed-off-by: Michael Niedermayer <michael at niedermayer.cc>
> > ---
> > libavformat/vividas.c | 12 ++++++------
> > 1 file changed, 6 insertions(+), 6 deletions(-)
> >
> > diff --git a/libavformat/vividas.c b/libavformat/vividas.c
> > index 5e303b9c52..72f2093d13 100644
> > --- a/libavformat/vividas.c
> > +++ b/libavformat/vividas.c
> > @@ -78,11 +78,11 @@ static int viv_probe(const AVProbeData *p)
> >     return AVPROBE_SCORE_MAX;
> > }
> >
> > -static const unsigned short keybits[32] = {
> > -     163,  416,  893,   82,  223,  572, 1137,  430,
> > -     659, 1104,   13,  626,  695,  972, 1465,  686,
> > -     843, 1216,  317, 1122, 1383,   92,  513, 1158,
> > -    1243,   48,  573, 1306, 1495,  396, 1009,  350,
> > +static const uint8_t keybits[32] = {
> > + 20,  52, 111,  10,  27,  71, 142,  53,
> > + 82, 138,   1,  78,  86, 121, 183,  85,
> > +105, 152,  39, 140, 172,  11,  64, 144,
> > +155,   6,  71, 163, 186,  49, 126,  43,
> > };
> >
> > static uint32_t decode_key(uint8_t *buf)
> > @@ -91,7 +91,7 @@ static uint32_t decode_key(uint8_t *buf)
> >
> >     for (int i = 0; i < 32; i++) {
> >         unsigned p = keybits[i];
> > -        key |= (unsigned)!!(buf[p>>3] & (1<<(p&7))) << i;
> > +        key |= (unsigned)!!(buf[p] & (1<<((i*5+3)&7))) << i;
> 
> If you are changing it anyway, maybe this should just be
> (((buf[p] >> ((i*5+3)&7)) & 1u) << i;
> ?
> Though I feel like there's a few parenthesis too many and maybe
> an intermediate variable would be best...

will apply patchset with this change

thx

[...]

-- 
Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

Dictatorship: All citizens are under surveillance, all their steps and
actions recorded, for the politicians to enforce control.
Democracy: All politicians are under surveillance, all their steps and
actions recorded, for the citizens to enforce control.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 181 bytes
Desc: not available
URL: <http://ffmpeg.org/pipermail/ffmpeg-devel/attachments/20190621/f15b80e4/attachment.sig>


More information about the ffmpeg-devel mailing list