decodebin3: add some missing processing from input-selector
I'm trying to update our custom player from playbin2 to playbin3, and I noticed that our audio sink is not working properly because there is no update of the segement event while switching audio track.
I've made a minimal python script to print those segments while switching tracks on playbin2:
USING PLAYBIN2
=========================
"segment, flags=(GstSegmentFlags)GST_SEGMENT_FLAG_NONE, rate=(double)1, applied-rate=(double)1, format=(GstFormat)time, base=(guint64)0, offset=(guint64)0, start=(guint64)0, stop=(guint64)18446744073709551615, time=(guint64)0, position=(guint64)0, duration=(guint64)46665000000;"
=========================
keyboard_input> 1
=========================
"segment, flags=(GstSegmentFlags)GST_SEGMENT_FLAG_NONE, rate=(double)1, applied-rate=(double)1, format=(GstFormat)time, base=(guint64)0, offset=(guint64)0, start=(guint64)0, stop=(guint64)18446744073709551615, time=(guint64)0, position=(guint64)3166199545, duration=(guint64)46665000000;"
=========================
keyboard_input> 0
=========================
"segment, flags=(GstSegmentFlags)GST_SEGMENT_FLAG_NONE, rate=(double)1, applied-rate=(double)1, format=(GstFormat)time, base=(guint64)0, offset=(guint64)0, start=(guint64)0, stop=(guint64)18446744073709551615, time=(guint64)0, position=(guint64)8396000000, duration=(guint64)46665000000;"
=========================
keyboard_input> q
On playbin3:
USING PLAYBIN3
audio streams ->
b6f4ad3888f3e55e0825734661b2a580f9dd8be3879abd2d466fda6f5da5c092/002:3452711582
b6f4ad3888f3e55e0825734661b2a580f9dd8be3879abd2d466fda6f5da5c092/010:215750297
current audio track -> b6f4ad3888f3e55e0825734661b2a580f9dd8be3879abd2d466fda6f5da5c092/002:3452711582
audio/mpeg
mpegversion=(int)4
framed=(boolean)true
stream-format=(string)raw
codec_data=(buffer)1190
level=(string)2
base-profile=(string)lc
profile=(string)lc
channels=(int)2
rate=(int)48000
=========================
"segment, flags=(GstSegmentFlags)GST_SEGMENT_FLAG_NONE, rate=(double)1, applied-rate=(double)1, format=(GstFormat)time, base=(guint64)0, offset=(guint64)0, start=(guint64)0, stop=(guint64)18446744073709551615, time=(guint64)0, position=(guint64)0, duration=(guint64)46665000000;"
=========================
keyboard_input> 1
current audio track -> b6f4ad3888f3e55e0825734661b2a580f9dd8be3879abd2d466fda6f5da5c092/010:215750297
audio/mpeg
mpegversion=(int)4
framed=(boolean)true
stream-format=(string)raw
codec_data=(buffer)1388
level=(string)1
base-profile=(string)lc
profile=(string)lc
channels=(int)1
rate=(int)22050
keyboard_input> 0
current audio track -> b6f4ad3888f3e55e0825734661b2a580f9dd8be3879abd2d466fda6f5da5c092/002:3452711582
audio/mpeg
mpegversion=(int)4
framed=(boolean)true
stream-format=(string)raw
codec_data=(buffer)1190
level=(string)2
base-profile=(string)lc
profile=(string)lc
channels=(int)2
rate=(int)48000
keyboard_input> q
And now with 16e88a09
USING PLAYBIN3
audio streams ->
b6f4ad3888f3e55e0825734661b2a580f9dd8be3879abd2d466fda6f5da5c092/002:3452711582
b6f4ad3888f3e55e0825734661b2a580f9dd8be3879abd2d466fda6f5da5c092/010:215750297
current audio track -> b6f4ad3888f3e55e0825734661b2a580f9dd8be3879abd2d466fda6f5da5c092/002:3452711582
audio/mpeg
mpegversion=(int)4
framed=(boolean)true
stream-format=(string)raw
codec_data=(buffer)1190
level=(string)2
base-profile=(string)lc
profile=(string)lc
channels=(int)2
rate=(int)48000
=========================
"segment, flags=(GstSegmentFlags)GST_SEGMENT_FLAG_NONE, rate=(double)1, applied-rate=(double)1, format=(GstFormat)time, base=(guint64)0, offset=(guint64)0, start=(guint64)0, stop=(guint64)18446744073709551615, time=(guint64)0, position=(guint64)0, duration=(guint64)46665000000;"
=========================
keyboard_input> 1
current audio track -> b6f4ad3888f3e55e0825734661b2a580f9dd8be3879abd2d466fda6f5da5c092/010:215750297
audio/mpeg
mpegversion=(int)4
framed=(boolean)true
stream-format=(string)raw
codec_data=(buffer)1388
level=(string)1
base-profile=(string)lc
profile=(string)lc
channels=(int)1
rate=(int)22050
=========================
"segment, flags=(GstSegmentFlags)GST_SEGMENT_FLAG_NONE, rate=(double)1, applied-rate=(double)1, format=(GstFormat)time, base=(guint64)0, offset=(guint64)0, start=(guint64)0, stop=(guint64)18446744073709551615, time=(guint64)0, position=(guint64)3425333331, duration=(guint64)46665000000;"
=========================
keyboard_input> 0
current audio track -> b6f4ad3888f3e55e0825734661b2a580f9dd8be3879abd2d466fda6f5da5c092/002:3452711582
audio/mpeg
mpegversion=(int)4
framed=(boolean)true
stream-format=(string)raw
codec_data=(buffer)1190
level=(string)2
base-profile=(string)lc
profile=(string)lc
channels=(int)2
rate=(int)48000
=========================
"segment, flags=(GstSegmentFlags)GST_SEGMENT_FLAG_NONE, rate=(double)1, applied-rate=(double)1, format=(GstFormat)time, base=(guint64)0, offset=(guint64)0, start=(guint64)0, stop=(guint64)18446744073709551615, time=(guint64)0, position=(guint64)5163439909, duration=(guint64)46665000000;"
=========================
keyboard_input> q