[vlc-devel] [PATCH 1/2] input: es_out: fix SET_DEFAULT regression
Francois Cartegnie
fcvlcdev at free.fr
Thu Jul 2 20:13:11 CEST 2020
refs #24924
---
src/input/es_out.c | 15 +++++++++------
1 file changed, 9 insertions(+), 6 deletions(-)
diff --git a/src/input/es_out.c b/src/input/es_out.c
index 0280939751..483f3494d4 100644
--- a/src/input/es_out.c
+++ b/src/input/es_out.c
@@ -2403,13 +2403,8 @@ static void EsOutUnselectEs( es_out_t *out, es_out_id_t *es, bool b_update )
static bool EsOutSelectMatchPrioritized( const es_out_es_props_t *p_esprops,
const es_out_id_t *es )
{
- /* If demux has specified a default track */
- if( p_esprops->i_demux_id >= 0 )
- {
- return ( es->fmt.i_id == p_esprops->i_demux_id );
- }
/* Otherwise, fallback by priority */
- else if( p_esprops->p_main_es != NULL )
+ if( p_esprops->p_main_es != NULL )
{
return ( es->fmt.i_priority > p_esprops->p_main_es->fmt.i_priority );
}
@@ -2564,6 +2559,14 @@ static void EsOutSelect( es_out_t *out, es_out_id_t *es, bool b_force )
}
}
+ /* If demux has specified a default active track */
+ if( wanted_es == NULL &&
+ p_esprops->i_demux_id >= 0 &&
+ p_esprops->i_demux_id == es->fmt.i_id )
+ {
+ wanted_es = es;
+ }
+
/* If there is no user preference, select the default track
* or adapt by ES priority */
if( b_auto_selected && wanted_es == NULL &&
--
2.25.4
More information about the vlc-devel
mailing list