wavpackparse: set both pts and dts so baseparse doesn't make up wrong dts after seeks

https://bugzilla.gnome.org/show_bug.cgi?id=752106
This commit is contained in:
Tim-Philipp Müller 2015-09-04 19:45:37 +01:00
parent 0d88f27108
commit fcdb79ef7b

View file

@ -544,11 +544,12 @@ gst_wavpack_parse_handle_frame (GstBaseParse * parse,
GST_LOG_OBJECT (parse, "rate: %u, width: %u, chans: %u", rate, width, chans);
GST_BUFFER_TIMESTAMP (buf) =
GST_BUFFER_PTS (buf) =
gst_util_uint64_scale_int (wph.block_index, GST_SECOND, rate);
GST_BUFFER_DTS (buf) = GST_BUFFER_PTS (buf);
GST_BUFFER_DURATION (buf) =
gst_util_uint64_scale_int (wph.block_index + wph.block_samples,
GST_SECOND, rate) - GST_BUFFER_TIMESTAMP (buf);
GST_SECOND, rate) - GST_BUFFER_PTS (buf);
if (G_UNLIKELY (wvparse->sample_rate != rate || wvparse->channels != chans
|| wvparse->width != width || wvparse->channel_mask != mask)) {