[FFmpeg-cvslog] lavu: Remove bit packing from AVComponentDescriptor

Vittorio Giovara git at videolan.org
Tue Sep 8 14:53:43 CEST 2015


ffmpeg | branch: master | Vittorio Giovara <vittorio.giovara at gmail.com> | Wed Sep  2 18:59:38 2015 +0200| [6b3ef7f080293956b2e5212b83135c6b051212e9] | committer: Vittorio Giovara

lavu: Remove bit packing from AVComponentDescriptor

There is no practical benefit in having this structure elements
bit packed given the size of the structure and its usage.
Change types from uint16_t (packed) to plain int in order to simplify
modifying the structure and accessing its fields.

Signed-off-by: Vittorio Giovara <vittorio.giovara at gmail.com>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=6b3ef7f080293956b2e5212b83135c6b051212e9
---

 doc/APIchanges      |    2 ++
 libavutil/pixdesc.h |   10 +++++-----
 2 files changed, 7 insertions(+), 5 deletions(-)

diff --git a/doc/APIchanges b/doc/APIchanges
index c944fff..1c268ed 100644
--- a/doc/APIchanges
+++ b/doc/APIchanges
@@ -15,6 +15,8 @@ API changes, most recent first:
 
 2015-xx-xx - lavu 55.0.0
   xxxxxxx - Change type of AVPixFmtDescriptor.flags from uint8_t to uint64_t.
+  xxxxxxx - Change type of AVComponentDescriptor fields from uint16_t to int
+            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;
 
 /**



More information about the ffmpeg-cvslog mailing list