[Bug 733532] tsdemux: implement convert queries on the sinkpad
GStreamer (bugzilla.gnome.org)
bugzilla at gnome.org
Wed Sep 17 06:59:10 PDT 2014
https://bugzilla.gnome.org/show_bug.cgi?id=733532
GStreamer | gst-plugins-bad | git
--- Comment #7 from Edward Hervey <bilboed at bilboed.com> 2014-09-17 13:59:04 UTC ---
(In reply to comment #6)
>
> About the locking, you might only have to care about "reffing" and copying
> point to what you need during the operation (using OBJECT_LOCK), unless all
> these object are guarantied to stay around while you old a ref on the element
> itself. I would also like if you check if mpegts_packetizer is thread safe.
The tricky one is the program.
I'd grab the object lock, take the pcr_pid, release the lock and then do the
rest of the calculation (and error out properly if there's already no program).
>
> ::: gst/mpegtsdemux/tsdemux.c
> @@ +586,3 @@
> +
> + if (G_UNLIKELY (demux->program == NULL))
> + return FALSE;
>
> Should you also check base->packetizer, or is this one refcount "protected" ?
> (just to double check). You need some locking/refcount, as this may be called
> from any thread.
->packetizer always exists
>
> @@ +592,3 @@
> + if (src_fmt == GST_FORMAT_BYTES && dest_fmt == GST_FORMAT_TIME) {
> + dest_val = mpegts_packetizer_offset_to_ts (base->packetizer, src_val,
> + demux->program->pcr_pid);
>
> Is this call thread safe ?
yes
--
Configure bugmail: https://bugzilla.gnome.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
You are the assignee for the bug.
More information about the gstreamer-bugs
mailing list