@@ -150,10 +150,10 @@ int ff_cbs_read_a53_cc_side_data(CodedBitstreamContext *ctx,
*data = (A53UserData) {
.user_identifier = A53_USER_IDENTIFIER_ATSC,
- .atsc = {
+ .u = { .atsc = {
.user_data_type_code = A53_USER_DATA_TYPE_CODE_CC_DATA,
- .cc_data = {
+ .u = { .cc_data = {
.process_em_data_flag = 0,
.process_cc_data_flag = 1,
.additional_data_flag = 0,
@@ -161,10 +161,10 @@ int ff_cbs_read_a53_cc_side_data(CodedBitstreamContext *ctx,
.em_data = 0,
.cc_count = cc_count,
- },
- },
+ } },
+ } },
};
- cc = &data->atsc.cc_data;
+ cc = &data->u.atsc.u.cc_data;
err = init_get_bits(&gbc, side_data, 8 * side_data_size);
if (err < 0)
@@ -190,10 +190,10 @@ int ff_cbs_write_a53_cc_side_data(CodedBitstreamContext *ctx,
int err, i;
if (data->user_identifier != A53_USER_IDENTIFIER_ATSC ||
- data->atsc.user_data_type_code != A53_USER_DATA_TYPE_CODE_CC_DATA)
+ data->u.atsc.user_data_type_code != A53_USER_DATA_TYPE_CODE_CC_DATA)
return AVERROR(EINVAL);
- cc = &data->atsc.cc_data;
+ cc = &data->u.atsc.u.cc_data;
err = av_reallocp(side_data, *side_data_size + 3 * cc->cc_count);
if (err < 0)
@@ -70,7 +70,7 @@ typedef struct A53ATSCUserData {
union {
CEA708CCData cc_data;
A53BarData bar_data;
- };
+ } u;
} A53ATSCUserData;
typedef struct A53AFDData {
@@ -83,7 +83,7 @@ typedef struct A53UserData {
union {
A53ATSCUserData atsc;
A53AFDData afd;
- };
+ } u;
} A53UserData;
@@ -99,9 +99,9 @@ static int FUNC(a53_atsc_user_data)(CodedBitstreamContext *ctx, RWContext *rw,
switch (current->user_data_type_code) {
case A53_USER_DATA_TYPE_CODE_CC_DATA:
- return FUNC(cea708_cc_data)(ctx, rw, ¤t->cc_data);
+ return FUNC(cea708_cc_data)(ctx, rw, ¤t->u.cc_data);
case A53_USER_DATA_TYPE_CODE_BAR_DATA:
- return FUNC(a53_bar_data)(ctx, rw, ¤t->bar_data);
+ return FUNC(a53_bar_data)(ctx, rw, ¤t->u.bar_data);
default:
av_log(ctx->log_ctx, AV_LOG_WARNING,
"Unknown ATSC user data found: type code %#02x.\n",
@@ -137,9 +137,9 @@ static int FUNC(a53_user_data)(CodedBitstreamContext *ctx, RWContext *rw,
switch (current->user_identifier) {
case A53_USER_IDENTIFIER_ATSC:
- return FUNC(a53_atsc_user_data)(ctx, rw, ¤t->atsc);
+ return FUNC(a53_atsc_user_data)(ctx, rw, ¤t->u.atsc);
case A53_USER_IDENTIFIER_AFD:
- return FUNC(a53_afd_data)(ctx, rw, ¤t->afd);
+ return FUNC(a53_afd_data)(ctx, rw, ¤t->u.afd);
default:
av_log(ctx->log_ctx, AV_LOG_WARNING,
"Unknown registered user data found: identifier %#08x.\n",
@@ -579,7 +579,7 @@ static int h264_metadata_filter(AVBSFContext *bsf, AVPacket *pkt)
};
H264RawSEIUserDataRegistered *udr =
&payload.payload.user_data_registered;
- size_t size = 9 + 3 * a53_ud.atsc.cc_data.cc_count;
+ size_t size = 9 + 3 * a53_ud.u.atsc.u.cc_data.cc_count;
udr->data_ref = av_buffer_alloc(2 + size);
if (!udr->data_ref) {
@@ -639,7 +639,7 @@ static int h264_metadata_filter(AVBSFContext *bsf, AVPacket *pkt)
continue;
}
if (a53_ud.user_identifier != A53_USER_IDENTIFIER_ATSC ||
- a53_ud.atsc.user_data_type_code !=
+ a53_ud.u.atsc.user_data_type_code !=
A53_USER_DATA_TYPE_CODE_CC_DATA) {
// Valid but something else (e.g. AFD).
continue;
@@ -219,7 +219,7 @@ static int mpeg2_metadata_filter(AVBSFContext *bsf, AVPacket *pkt)
continue;
}
if (a53_ud.user_identifier != A53_USER_IDENTIFIER_ATSC ||
- a53_ud.atsc.user_data_type_code !=
+ a53_ud.u.atsc.user_data_type_code !=
A53_USER_DATA_TYPE_CODE_CC_DATA) {
// Valid but something else (e.g. AFD).
continue;