[vlc-devel] [PATCH 1/2] access: make an access able to request a meta update

Rémi Denis-Courmont remi at remlab.net
Sat Nov 29 12:57:55 CET 2014


Le 2014-11-29 14:44, Ludovic Fauvet a écrit :
> On Fri, Nov 28, 2014, at 17:36, Rémi Denis-Courmont wrote:
>> Le 2014-11-28 18:20, Ludovic Fauvet a écrit :
>> > +    if( p_access->info.i_update & ACCESS_UPDATE_META )
>> > +    {
>> > +        vlc_meta_t *p_meta = vlc_meta_New();
>> > +        if( unlikely( p_meta == NULL ) )
>> > +            return;
>> > +
>> > +        access_Control( p_access, ACCESS_GET_META, p_meta );
>> > +        es_out_ControlSetMeta( p_input->p->p_es_out, p_meta );
>> > +        vlc_meta_Delete( p_meta );
>>
>> I doubt that you can safely access the ES output from the access
>> thread. And I guess it will break if the access is from a slave or a
>> stream URL.
>
> es_out_ControlSetMeta is an es_out_Control and should be properly 
> locked
> by EsOutControl so I don't think that accessing the es_out from the
> access is an issue here.
>
> I'm more puzzled by the the slave / stream URL. I tried passing an
> --input-slave http://<insert-a-random-webradio-stream> and it worked 
> as
> expected. Can you elaborate a bit more on this?

It should _not_ work. For stream URL, there should not even be an 
input. For slave, I would argue that only the master should set the 
meta.

-- 
Rémi Denis-Courmont



More information about the vlc-devel mailing list