[vlc-devel] [PATCH 6/5] [RFC] input: allow setting the "sout" while playing and restart the output accordingly

Rémi Denis-Courmont remi at remlab.net
Tue Apr 26 15:25:07 CEST 2016


Le 2016-04-26 15:01, Steve Lhomme a écrit :
> On Tue, Apr 26, 2016 at 2:40 PM, Rémi Denis-Courmont 
> <remi at remlab.net> wrote:
>> Le 2016-04-26 13:45, Steve Lhomme a écrit :
>>>
>>> On Sat, Apr 23, 2016 at 3:09 PM, Steve Lhomme <robux4 at gmail.com> 
>>> wrote:
>>>>
>>>> On Sat, Apr 23, 2016 at 11:52 AM, Rémi Denis-Courmont 
>>>> <remi at remlab.net>
>>>> wrote:
>>>>>
>>>>> On Friday 22 April 2016 17:56:46 Steve Lhomme wrote:
>>>>>>
>>>>>> setting the "sout" on the libvlc instance also works, rather 
>>>>>> than the
>>>>>> input_thread_t
>>>>>
>>>>>
>>>>> No. This is known to cause a lot of problems and have caused a 
>>>>> lot more
>>>>> in the
>>>>> past.
>>>>
>>>>
>>>> Where is the user supposed to set the "sout" (by means of the UI) 
>>>> so
>>>> that it uses the proper render?
>>>>
>>>>  Looking at the "vout" it's either in the config or directly on 
>>>> the
>>>> currently playing input_thread_t. I'm fine with setting the value 
>>>> in
>>>> the config, the user will have to explicitly disable the renderer
>>>> between VLC launches.
>>>
>>>
>>> If we want to be able to update the output chain when the "sout" is
>>> set/unset during playback, we need a way to hook the callback on 
>>> the
>>> "sout" variable.
>>
>>
>> If is the important word. I think that is utterly insane and thus 
>> unwanted.
>>
>> The sout instance, the sout plugins downstream, and the ES output 
>> upstream
>> are all stateful and tied to the demuxer(s). We can't just change 
>> them while
>> the input thread is running.
>
> Isn't that what ES_OUT_RESTART_ES is for ? If they're tried, they're
> untied at that point.

ES_OUT_RESTART_ES is used to restart ES's of one category. Currently 
it's only a hack to add/remove video splitters, and it would no longer 
be needed if vout pools were fixed.

If you restart all ES's, there is no point in retaining the input 
thread.

-- 
Rémi Denis-Courmont
http://www.remlab.net/


More information about the vlc-devel mailing list