History

avformat/flvdec: Fix use sizeof(AVMasteringDisplayMetadata)

sizeof AVMasteringDisplayMetadata isn't part of ABI.

Zhao Zhili committed 1 year ago

Commit f3429481 parent 7b816761 file · +13 −6Browse files

Showing the changes to libavformat (1 of 1 file). Show all

Unified · Split

libavformat/flvdec.c+13−6
@@ -1248,15 +1248,22 @@ static int flv_update_video_color_info(AVFormatContext *s, AVStream *st) · 1247 unmodified lines
1248 }1248 }
1249 1249
1250 if (has_mastering_primaries || has_mastering_luminance) {1250 if (has_mastering_primaries || has_mastering_luminance) {
1251 AVMasteringDisplayMetadata *metadata;1251 size_t size = 0;
1252 AVPacketSideData *sd = av_packet_side_data_new(&st->codecpar->coded_side_data,1252 AVMasteringDisplayMetadata *metadata = av_mastering_display_metadata_alloc_size(&size);
1253 AVPacketSideData *sd;
1254
1255 if (!metadata)
1256 return AVERROR(ENOMEM);
1257
1258 sd = av_packet_side_data_add(&st->codecpar->coded_side_data,
1253 &st->codecpar->nb_coded_side_data,1259 &st->codecpar->nb_coded_side_data,
1254 AV_PKT_DATA_MASTERING_DISPLAY_METADATA,1260 AV_PKT_DATA_MASTERING_DISPLAY_METADATA,
1255 sizeof(AVMasteringDisplayMetadata), 0);1261 metadata, size, 0);
1256 if (!sd)1262 if (!sd) {
1263 av_freep(&metadata);
1257 return AVERROR(ENOMEM);1264 return AVERROR(ENOMEM);
1258 metadata = (AVMasteringDisplayMetadata*)sd->data;1265 }
1259 memset(metadata, 0, sizeof(AVMasteringDisplayMetadata));1266
1260 // hdrCll1267 // hdrCll
1261 if (has_mastering_luminance) {1268 if (has_mastering_luminance) {
1262 metadata->max_luminance = av_d2q(mastering_meta->max_luminance, INT_MAX);1269 metadata->max_luminance = av_d2q(mastering_meta->max_luminance, INT_MAX);

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t