[vlc-devel] [PATCH 13/31] input: resource: split the call to vout_Request()

Steve Lhomme robux4 at ycbcr.xyz
Wed Jul 10 12:51:51 CEST 2019


On 2019-07-09 16:25, Rémi Denis-Courmont wrote:
> Le perjantaina 5. heinäkuuta 2019, 17.19.52 EEST Steve Lhomme a écrit :
>> ---
>>   src/input/resource.c | 10 ++++++++--
>>   1 file changed, 8 insertions(+), 2 deletions(-)
>>
>> diff --git a/src/input/resource.c b/src/input/resource.c
>> index c0ae038c35..34b5e23f54 100644
>> --- a/src/input/resource.c
>> +++ b/src/input/resource.c
>> @@ -426,14 +426,20 @@ vout_thread_t *input_resource_GetVout(input_resource_t
>> *p_resource, }
>>   #endif
>>
>> -    if (vout_Request(cfg, dec_dev, p_resource->p_input)) {
>> +    if (vout_RequestDevice(cfg, dec_dev)) {
>> +        input_resource_PutVoutLocked(p_resource, cfg->vout, false);
>> +        vlc_mutex_unlock(&p_resource->lock);
>> +        return NULL;
>> +    }
>> +
> 
> I don't exactly follow why the device is provided by the vout here and that
> will not scale up to streaming output / hardware transcoding.

This is where the window is created and thus where the decoder device 
can be created. For example the window is not known at the "input 
resource" level.

For transcoding there's not "input resource" level (too bad) nor a 
window. But the get_device callback of the decoder will still provide a 
decoder device if needed. It's equivalent to what 
input_resource_GetVout() does here.


More information about the vlc-devel mailing list