aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMark Thompson <sw@jkqxz.net>2020-07-27 17:32:17 +0100
committerMark Thompson <sw@jkqxz.net>2020-09-02 00:00:50 +0100
commit1fe77d4a637c4033180a35b6ebf13b5a4707d2a4 (patch)
treed8afba5345efd74aecfab760e08c483aed10cd7b
parent0271098e6c9ff8f2a97d65087e424f6d547e53f9 (diff)
downloadffmpeg-1fe77d4a637c4033180a35b6ebf13b5a4707d2a4.tar.gz
cbs: Ensure that reference fields always follow the associated pointer
Having these together allows us to find both pointers given the address of only one of them.
-rw-r--r--libavcodec/cbs_av1.h6
-rw-r--r--libavcodec/cbs_h264.h18
-rw-r--r--libavcodec/cbs_h265.h18
-rw-r--r--libavcodec/cbs_jpeg.h2
-rw-r--r--libavcodec/cbs_mpeg2.h10
-rw-r--r--libavcodec/cbs_vp9.h2
6 files changed, 28 insertions, 28 deletions
diff --git a/libavcodec/cbs_av1.h b/libavcodec/cbs_av1.h
index 913a6e5dea..7a0c08c596 100644
--- a/libavcodec/cbs_av1.h
+++ b/libavcodec/cbs_av1.h
@@ -284,8 +284,8 @@ typedef struct AV1RawFrameHeader {
typedef struct AV1RawTileData {
uint8_t *data;
- size_t data_size;
AVBufferRef *data_ref;
+ size_t data_size;
} AV1RawTileData;
typedef struct AV1RawTileGroup {
@@ -346,8 +346,8 @@ typedef struct AV1RawMetadataITUTT35 {
uint8_t itu_t_t35_country_code_extension_byte;
uint8_t *payload;
- size_t payload_size;
AVBufferRef *payload_ref;
+ size_t payload_size;
} AV1RawMetadataITUTT35;
typedef struct AV1RawMetadataTimecode {
@@ -379,8 +379,8 @@ typedef struct AV1RawMetadata {
typedef struct AV1RawPadding {
uint8_t *payload;
- size_t payload_size;
AVBufferRef *payload_ref;
+ size_t payload_size;
} AV1RawPadding;
diff --git a/libavcodec/cbs_h264.h b/libavcodec/cbs_h264.h
index f54ccd3b36..a6fe0a6af2 100644
--- a/libavcodec/cbs_h264.h
+++ b/libavcodec/cbs_h264.h
@@ -277,16 +277,16 @@ typedef struct H264RawSEIPanScanRect {
typedef struct H264RawSEIUserDataRegistered {
uint8_t itu_t_t35_country_code;
uint8_t itu_t_t35_country_code_extension_byte;
- uint8_t *data;
- size_t data_length;
+ uint8_t *data;
AVBufferRef *data_ref;
+ size_t data_length;
} H264RawSEIUserDataRegistered;
typedef struct H264RawSEIUserDataUnregistered {
uint8_t uuid_iso_iec_11578[16];
- uint8_t *data;
- size_t data_length;
+ uint8_t *data;
AVBufferRef *data_ref;
+ size_t data_length;
} H264RawSEIUserDataUnregistered;
typedef struct H264RawSEIRecoveryPoint {
@@ -334,9 +334,9 @@ typedef struct H264RawSEIPayload {
H264RawSEIAlternativeTransferCharacteristics
alternative_transfer_characteristics;
struct {
- uint8_t *data;
- size_t data_length;
+ uint8_t *data;
AVBufferRef *data_ref;
+ size_t data_length;
} other;
} payload;
} H264RawSEIPayload;
@@ -429,10 +429,10 @@ typedef struct H264RawSliceHeader {
typedef struct H264RawSlice {
H264RawSliceHeader header;
- uint8_t *data;
- size_t data_size;
- int data_bit_start;
+ uint8_t *data;
AVBufferRef *data_ref;
+ size_t data_size;
+ int data_bit_start;
} H264RawSlice;
typedef struct H264RawFiller {
diff --git a/libavcodec/cbs_h265.h b/libavcodec/cbs_h265.h
index 73897f77a4..15b22bbfd4 100644
--- a/libavcodec/cbs_h265.h
+++ b/libavcodec/cbs_h265.h
@@ -183,9 +183,9 @@ typedef struct H265RawVUI {
} H265RawVUI;
typedef struct H265RawExtensionData {
- uint8_t *data;
- size_t bit_length;
+ uint8_t *data;
AVBufferRef *data_ref;
+ size_t bit_length;
} H265RawExtensionData;
typedef struct H265RawVPS {
@@ -541,10 +541,10 @@ typedef struct H265RawSliceHeader {
typedef struct H265RawSlice {
H265RawSliceHeader header;
- uint8_t *data;
- size_t data_size;
- int data_bit_start;
+ uint8_t *data;
AVBufferRef *data_ref;
+ size_t data_size;
+ int data_bit_start;
} H265RawSlice;
@@ -600,15 +600,15 @@ typedef struct H265RawSEIUserDataRegistered {
uint8_t itu_t_t35_country_code;
uint8_t itu_t_t35_country_code_extension_byte;
uint8_t *data;
- size_t data_length;
AVBufferRef *data_ref;
+ size_t data_length;
} H265RawSEIUserDataRegistered;
typedef struct H265RawSEIUserDataUnregistered {
uint8_t uuid_iso_iec_11578[16];
uint8_t *data;
- size_t data_length;
AVBufferRef *data_ref;
+ size_t data_length;
} H265RawSEIUserDataUnregistered;
typedef struct H265RawSEIRecoveryPoint {
@@ -710,9 +710,9 @@ typedef struct H265RawSEIPayload {
alternative_transfer_characteristics;
H265RawSEIAlphaChannelInfo alpha_channel_info;
struct {
- uint8_t *data;
- size_t data_length;
+ uint8_t *data;
AVBufferRef *data_ref;
+ size_t data_length;
} other;
} payload;
H265RawExtensionData extension_data;
diff --git a/libavcodec/cbs_jpeg.h b/libavcodec/cbs_jpeg.h
index ff1961106f..6305f0ee86 100644
--- a/libavcodec/cbs_jpeg.h
+++ b/libavcodec/cbs_jpeg.h
@@ -80,8 +80,8 @@ typedef struct JPEGRawScanHeader {
typedef struct JPEGRawScan {
JPEGRawScanHeader header;
uint8_t *data;
- size_t data_size;
AVBufferRef *data_ref;
+ size_t data_size;
} JPEGRawScan;
typedef struct JPEGRawQuantisationTable {
diff --git a/libavcodec/cbs_mpeg2.h b/libavcodec/cbs_mpeg2.h
index 5bcafd09f0..f7075a460d 100644
--- a/libavcodec/cbs_mpeg2.h
+++ b/libavcodec/cbs_mpeg2.h
@@ -76,9 +76,9 @@ typedef struct MPEG2RawSequenceHeader {
typedef struct MPEG2RawUserData {
uint8_t user_data_start_code;
- uint8_t *user_data;
- size_t user_data_length;
+ uint8_t *user_data;
AVBufferRef *user_data_ref;
+ size_t user_data_length;
} MPEG2RawUserData;
typedef struct MPEG2RawSequenceExtension {
@@ -206,10 +206,10 @@ typedef struct MPEG2RawSliceHeader {
typedef struct MPEG2RawSlice {
MPEG2RawSliceHeader header;
- uint8_t *data;
- size_t data_size;
- int data_bit_start;
+ uint8_t *data;
AVBufferRef *data_ref;
+ size_t data_size;
+ int data_bit_start;
} MPEG2RawSlice;
typedef struct MPEG2RawSequenceEnd {
diff --git a/libavcodec/cbs_vp9.h b/libavcodec/cbs_vp9.h
index 40e62476ed..af15eb4bac 100644
--- a/libavcodec/cbs_vp9.h
+++ b/libavcodec/cbs_vp9.h
@@ -165,8 +165,8 @@ typedef struct VP9RawFrame {
VP9RawFrameHeader header;
uint8_t *data;
- size_t data_size;
AVBufferRef *data_ref;
+ size_t data_size;
} VP9RawFrame;
typedef struct VP9RawSuperframeIndex {