mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-12-18 14:26:43 +00:00
gst/qtdemux/qtdemux.c: Clip the outputed NEWSEGMENT stop time to the configured segment stop time.
Original commit message from CVS: * gst/qtdemux/qtdemux.c: (gst_qtdemux_activate_segment): Clip the outputed NEWSEGMENT stop time to the configured segment stop time.
This commit is contained in:
parent
3946c571f4
commit
21dbe9ffc7
1 changed files with 8 additions and 3 deletions
|
@ -1066,7 +1066,10 @@ gst_qtdemux_activate_segment (GstQTDemux * qtdemux, QtDemuxStream * stream,
|
|||
|
||||
/* calc media start/stop */
|
||||
start = segment->media_start + seg_time;
|
||||
stop = segment->media_stop;
|
||||
if (qtdemux->segment.stop == -1)
|
||||
stop = segment->media_stop;
|
||||
else
|
||||
stop = MIN (segment->media_stop, qtdemux->segment.stop);
|
||||
|
||||
GST_DEBUG_OBJECT (qtdemux, "newsegment %d from %" GST_TIME_FORMAT
|
||||
" to %" GST_TIME_FORMAT ", time %" GST_TIME_FORMAT, seg_idx,
|
||||
|
@ -3482,8 +3485,10 @@ qtdemux_parse_trak (GstQTDemux * qtdemux, GNode * trak)
|
|||
samples[j].chunk = j;
|
||||
samples[j].offset = chunk_offset;
|
||||
|
||||
samples[j].size = (samples_per_chunk * stream->n_channels) /
|
||||
stream->samples_per_frame * stream->bytes_per_frame;
|
||||
if (stream->samples_per_frame * stream->bytes_per_frame) {
|
||||
samples[j].size = (samples_per_chunk * stream->n_channels) /
|
||||
stream->samples_per_frame * stream->bytes_per_frame;
|
||||
}
|
||||
|
||||
GST_INFO_OBJECT (qtdemux, "sample %d: timestamp %" GST_TIME_FORMAT
|
||||
", size %u", j, GST_TIME_ARGS (timestamp), samples[j].size);
|
||||
|
|
Loading…
Reference in a new issue