summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--subprojects/gst-plugins-bad/gst/videoparsers/gsth264parse.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/subprojects/gst-plugins-bad/gst/videoparsers/gsth264parse.c b/subprojects/gst-plugins-bad/gst/videoparsers/gsth264parse.c
index 387cde20fb..11581b09e5 100644
--- a/subprojects/gst-plugins-bad/gst/videoparsers/gsth264parse.c
+++ b/subprojects/gst-plugins-bad/gst/videoparsers/gsth264parse.c
@@ -1254,6 +1254,10 @@ gst_h264_parse_handle_frame_packetized (GstBaseParse * parse,
tmp_frame.overhead = frame->overhead;
tmp_frame.buffer = gst_buffer_copy_region (buffer, GST_BUFFER_COPY_ALL,
nalu.offset, nalu.size);
+ /* Don't lose timestamp when offset is not 0. */
+ GST_BUFFER_PTS (tmp_frame.buffer) = GST_BUFFER_PTS (buffer);
+ GST_BUFFER_DTS (tmp_frame.buffer) = GST_BUFFER_DTS (buffer);
+ GST_BUFFER_DURATION (tmp_frame.buffer) = GST_BUFFER_DURATION (buffer);
/* Set marker on last packet */
if (nl + nalu.size == left) {