From: Limin Wang <[email protected]>
Signed-off-by: Limin Wang <[email protected]>
---
libavformat/rtpdec_rfc4175.c | 19 +++++++++++++++++++
1 file changed, 19 insertions(+)
diff --git a/libavformat/rtpdec_rfc4175.c b/libavformat/rtpdec_rfc4175.c
index 367567d..db6b9b8 100644
--- a/libavformat/rtpdec_rfc4175.c
+++ b/libavformat/rtpdec_rfc4175.c
@@ -30,6 +30,7 @@
struct PayloadContext {
char *sampling;
char *framerate;
+ char *TCS;
int depth;
int width;
int height;
@@ -66,6 +67,21 @@ static int rfc4175_parse_format(AVStream *stream,
PayloadContext *data)
return AVERROR_INVALIDDATA;
}
+ if (!data->TCS)
+ stream->codecpar->color_trc = AVCOL_TRC_UNSPECIFIED;
+ else if (!strncmp(data->TCS, "SDR", 3))
+ stream->codecpar->color_trc = AVCOL_TRC_BT709;
+ else if (!strncmp(data->TCS, "PQ", 2))
+ stream->codecpar->color_trc = AVCOL_TRC_SMPTE2084;
+ else if (!strncmp(data->TCS, "HLG", 3))
+ stream->codecpar->color_trc = AVCOL_TRC_ARIB_STD_B67;
+ else if (!strncmp(data->TCS, "LINEAR", 6))
+ stream->codecpar->color_trc = AVCOL_TRC_LINEAR;
+ else if (!strncmp(data->TCS, "ST428-1", 7))
+ stream->codecpar->color_trc = AVCOL_TRC_SMPTEST428_1;
+ else if (!strncmp(data->TCS, "UNSPECIFIED", 11))
+ stream->codecpar->color_trc = AVCOL_TRC_UNSPECIFIED;
+
desc = av_pix_fmt_desc_get(pixfmt);
stream->codecpar->format = pixfmt;
stream->codecpar->codec_tag = tag;
@@ -97,6 +113,8 @@ static int rfc4175_parse_fmtp(AVFormatContext *s, AVStream
*stream,
data->depth = atoi(value);
else if (!strncmp(attr, "exactframerate", 14))
data->framerate = av_strdup(value);
+ else if (!strncmp(attr, "TCS", 3))
+ data->TCS = av_strdup(value);
return 0;
}
@@ -126,6 +144,7 @@ static int rfc4175_parse_sdp_line(AVFormatContext *s, int
st_index,
ret = rfc4175_parse_format(stream, data);
av_freep(&data->sampling);
av_freep(&data->framerate);
+ av_freep(&data->TCS);
return ret;
}
--
1.8.3.1
_______________________________________________
ffmpeg-devel mailing list
[email protected]
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
To unsubscribe, visit link above, or email
[email protected] with subject "unsubscribe".