On Wed, 2 Sep 2015 14:32:03 +0200 Vittorio Giovara <[email protected]> wrote:
> There is no practical benefit in having this structure elements > bit packed given the size of the structure and its usage. > Changing types will simplify modifying the structure and accessing > its fields. > > Signed-off-by: Vittorio Giovara <[email protected]> > --- > doc/APIchanges | 1 + > libavutil/pixdesc.h | 10 +++++----- > 2 files changed, 6 insertions(+), 5 deletions(-) > > diff --git a/doc/APIchanges b/doc/APIchanges > index 7936f00..2e31ab1 100644 > --- a/doc/APIchanges > +++ b/doc/APIchanges > @@ -15,6 +15,7 @@ API changes, most recent first: > > 2015-xx-xx - lavu 54.0.0 > xxxxxxx - Change type of AVPixFmtDescriptor.flags. > + xxxxxxx - Change type of AVComponentDescriptor fields and drop bit packing. > > 2015-xx-xx - lavu 54.17.0 > xxxxxxx - Add av_blowfish_alloc(). > diff --git a/libavutil/pixdesc.h b/libavutil/pixdesc.h > index c36f5d1..bba7e05 100644 > --- a/libavutil/pixdesc.h > +++ b/libavutil/pixdesc.h > @@ -31,30 +31,30 @@ typedef struct AVComponentDescriptor { > /** > * Which of the 4 planes contains the component. > */ > - uint16_t plane : 2; > + int plane; > > /** > * Number of elements between 2 horizontally consecutive pixels minus 1. > * Elements are bits for bitstream formats, bytes otherwise. > */ > - uint16_t step_minus1 : 3; > + int step_minus1; > > /** > * Number of elements before the component of the first pixel plus 1. > * Elements are bits for bitstream formats, bytes otherwise. > */ > - uint16_t offset_plus1 : 3; > + int offset_plus1; > > /** > * Number of least significant bits that must be shifted away > * to get the value. > */ > - uint16_t shift : 3; > + int shift; > > /** > * Number of bits in the component minus 1. > */ > - uint16_t depth_minus1 : 4; > + int depth_minus1; > } AVComponentDescriptor; > > /** LGTM It's a good idea to make them signed int, because uint16_t is going to be promoted to int in expressions anyway, while unsigned int isn't. _______________________________________________ libav-devel mailing list [email protected] https://lists.libav.org/mailman/listinfo/libav-devel
