[vlc-devel] [PATCH] decoder device: allow modules to create a decoder device

Steve Lhomme robux4 at ycbcr.xyz
Wed Jul 10 08:32:08 CEST 2019


On 2019-07-09 16:30, Rémi Denis-Courmont wrote:
> Le tiistaina 9. heinäkuuta 2019, 10.04.32 EEST Steve Lhomme a écrit :
>> Like the transcoder or the mosaic bridge.
> 
> There are no windows in those cases, so I don't see how exposing this specific
> function helps for the stated purpose.

A decoder device may not be tied to a window. At least with Direct3D 
ones, the window is not used. We still need a way for the transcoder 
(not sure about mosaic) to tell the decoder what GPU adapter + Direct3D 
flavor it's using so the decoder is compatible. (I know this is at least 
needed for QSV).

Even in a "pure push" scenario where the decoder will pick the GPU and 
then push it to the encoder, that decoder still needs to create a 
decoder device. Note this is not how the transcoder initiates the 
encoder+decoder and I'm not sure this will change much.

>> ---
>>   include/vlc_codec.h | 2 +-
>>   src/libvlccore.sym  | 1 +
>>   2 files changed, 2 insertions(+), 1 deletion(-)
>>
>> diff --git a/include/vlc_codec.h b/include/vlc_codec.h
>> index 85d7c0ff23..2a92a4523f 100644
>> --- a/include/vlc_codec.h
>> +++ b/include/vlc_codec.h
>> @@ -587,7 +587,7 @@ typedef void
>> (*vlc_decoder_device_Close)(vlc_decoder_device *device); * This function
>> will be hidden in the future. It is now used by opengl vout * module as a
>> transition.
>>    */
>> -VLC_USED vlc_decoder_device *
>> +VLC_API vlc_decoder_device *
>>   vlc_decoder_device_Create(vout_window_t *window);
>>
>>   /**
>> diff --git a/src/libvlccore.sym b/src/libvlccore.sym
>> index 686ef13265..bf3a6a91fe 100644
>> --- a/src/libvlccore.sym
>> +++ b/src/libvlccore.sym
>> @@ -83,6 +83,7 @@ decoder_AbortPictures
>>   decoder_NewAudioBuffer
>>   decoder_UpdateDecoderDevice
>>   decoder_UpdateVideoOutput
>> +vlc_decoder_device_Create
>>   vlc_decoder_device_Hold
>>   vlc_decoder_device_Release
>>   demux_PacketizerDestroy
> 
> 
> -- 
> Rémi Denis-Courmont
> http://www.remlab.net/
> 
> 
> 
> _______________________________________________
> vlc-devel mailing list
> To unsubscribe or modify your subscription options:
> https://mailman.videolan.org/listinfo/vlc-devel
> 


More information about the vlc-devel mailing list