[Bug 775487] gstplayer: Move to playbin3 and GstStreams API
GStreamer (GNOME Bugzilla)
bugzilla at gnome.org
Mon Mar 20 13:15:19 UTC 2017
https://bugzilla.gnome.org/show_bug.cgi?id=775487
--- Comment #20 from Seungha Yang <sh.yang at lge.com> ---
(In reply to Sebastian Dröge (slomo) from comment #13)
> Review of attachment 348250 [details] [review]:
>
> ::: gst-libs/gst/player/gstplayer.c
> @@ +1890,3 @@
> + gst_message_parse_streams_selected (msg, &collection);
> +
> + if (collection) {
>
> if (!collection)
> return;
>
> Keep indentation small :) Also elsewhere the same
Got it :)
>
> @@ +1908,3 @@
> + GstStreamType stream_type;
> + const gchar *stream_id;
> + stream = gst_message_streams_selected_get_stream (msg, i);
>
> Transfer full according to docs, so need to unref the stream.
>
> Also generally, you probably want to connect to the signals of all the
> streams to know about tags/caps/etc changes
If my understanding is correct, I attached stream-notify signal to collection
not for each stream. So we can know the change of every stream now by
attachment 348255
> @@ +1912,3 @@
> + stream_id = gst_stream_get_stream_id (stream);
> + if (stream_type & GST_STREAM_TYPE_AUDIO)
> + self->audio_sid = g_strdup (stream_id);
>
> If multiple audios are selected, you would assign them all here and leak
> memory
Humm... As far as I know (although I've never use inputselector with playbin3),
multiple audios in streams-selected msg is only possible by using custom
combiner like inputselector. In that case, I guess decodebin3 will add all
audio tracks' stream-ids in selected-streams message. But, it's weird
behaviour, because player never know activated one by using selected-streams
message.
About that, we should do 2 more works now in my opinion.
- Support custom-combiner in GstPlayer (use of playbin/playbin3's
"{video,audio,text}-stream-combiner" properties).
- Filter non-activated stream out from selected-streams message (posted by
decodebin3) at playbin3, in order for selected-streams to have only one
stream-id per stream-type.
--
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