[vlc-devel] [PATCH 01/15] Enable selection of secondary SPU ES in the core

Roland Bewick roland.bewick at gmail.com
Fri May 17 13:01:35 CEST 2019

On 17/05/2019 3:16 PM, Thomas Guillem wrote:
> On Thu, May 16, 2019, at 15:40, Roland Bewick wrote:
>> Hi,
>> I've chosen the following implementation for vlc_player_SelectTrackList:
>> 1. Deselect all selected tracks not matching the provided list.
>> 2. Sequentially select the tracks that aren't already selected.
>> When a track is selected in the QT GUI, I check the category of the track.
>> - If Not SPU_ES, use vlc_player_SelectTrack as usual.
>> - If SPU_ES:
>>       1. find which tracks are already selected by looping through all
>> tracks of the same category
>>       2. If more than one track is already selected, do not proceed with
>> the selection
>>       3. Call vlc_player_SelectTrackList using the ids of the new track
>> and the already selected tracks
>> To ensure that multiple tracks get selected in the core (es_out.c) I've
>> added a new parameter to EsOutSelect.
> Fine wih me, that is what I had in mind.
> For es_out implementation, I prefer to send directly the list of ES via a new control. This allow to select multiples tracks atomically (only one lock held).

Great, I can do that.

I'll create a new list in vlc_player_SelectTrackList containing only the 
list of ids of ES that aren't selected yet, so that vlc_es_id_Hold isn't 
called unnecessarily on any already selected ES.

Since multiple ES Ids are getting sent it also might be better to add an 
EsOutSelectList method rather than overloading the existing EsOutSelect 
(partial and automatic selection modes don't apply).

I think I should be able to find my way from here and submit a new patch 

Thanks Thomas,


More information about the vlc-devel mailing list