avformat/matroskadec: add support for LCEVC ITU-T35 payloads

Signed-off-by: James Almer <jamrial@gmail.com>
This commit is contained in:
James Almer
2026-03-26 17:18:28 -03:00
parent 47dc4e3429
commit ec86dade2f

View File

@@ -3968,6 +3968,32 @@ static int matroska_parse_block_additional(MatroskaDemuxContext *matroska,
break;
}
break;
case ITU_T_T35_COUNTRY_CODE_UK:
bytestream2_skipu(&bc, 1); // t35_uk_country_code_second_octet
if (bytestream2_get_bytes_left(&bc) < 2)
return AVERROR_INVALIDDATA;
provider_code = bytestream2_get_be16u(&bc);
av_log(matroska->ctx, AV_LOG_WARNING, "provider_code %d\n", provider_code);
switch (provider_code) {
case ITU_T_T35_PROVIDER_CODE_VNOVA: {
uint8_t *data;
if (bytestream2_get_bytes_left(&bc) < 2)
return AVERROR_INVALIDDATA;
data = av_packet_new_side_data(pkt, AV_PKT_DATA_LCEVC, bytestream2_get_bytes_left(&bc));
if (!data)
return AVERROR(ENOMEM);
bytestream2_get_bufferu(&bc, data, bytestream2_get_bytes_left(&bc));
return 0;
}
default:
break;
}
break;
default:
break;
}