[vlc-devel] [PATCH 1/2] nvdec: add chroma and depth fallback
Rémi Denis-Courmont
remi at remlab.net
Tue Apr 7 09:48:04 CEST 2020
Hi,
I don't follow. Normally, you can't start any decoder if you don't know the format. It's even so now that if the packetiser finds a format change, we restart the decoder. That was specifically added (by Thomas?) to address switching between software and hardware decoding.
I don't see how you can even end up in the described situation, unless the demuxer lies about the ES being packetised.
Le 6 avril 2020 16:02:06 GMT+03:00, quentin.chateau at deepskycorp.com a écrit :
>From: Quentin Chateau <quentin.chateau at deepskycorp.com>
>
>When the chroma and depth is unknown to the hxxx_helper,
>fallback to the common 4:2:0 8bits format as initial value.
>The decoder may change these values later on.
>---
> modules/hw/nvdec/nvdec.c | 20 ++++++++++++--------
> 1 file changed, 12 insertions(+), 8 deletions(-)
>
>diff --git a/modules/hw/nvdec/nvdec.c b/modules/hw/nvdec/nvdec.c
>index e3aeff2355..ca28522d32 100644
>--- a/modules/hw/nvdec/nvdec.c
>+++ b/modules/hw/nvdec/nvdec.c
>@@ -923,15 +923,19 @@ static int OpenDecoder(vlc_object_t *p_this)
> // try different output
> if (p_sys->b_is_hxxx)
> {
>- uint8_t i_chroma_idc, i_depth_chroma;
>- result = hxxx_helper_get_chroma_chroma(&p_sys->hh,
>&i_chroma_idc,
>- &i_depth_luma,
>&i_depth_chroma);
>- if (result != VLC_SUCCESS) {
>- if (p_sys->b_is_hxxx)
>- hxxx_helper_clean(&p_sys->hh);
>- return VLC_EGENERIC;
>+ uint8_t hxxx_chroma_idc, hxxx_depth_chroma, hxxx_depth_luma;
>+ result = hxxx_helper_get_chroma_chroma(&p_sys->hh,
>&hxxx_chroma_idc,
>+ &hxxx_depth_luma,
>&hxxx_depth_chroma);
>+ if (result == VLC_SUCCESS)
>+ {
>+ i_depth_luma = hxxx_depth_luma;
>+ cudaChroma = MapChomaIDC(hxxx_chroma_idc);
>+ }
>+ else
>+ {
>+ cudaChroma = cudaVideoChromaFormat_420;
>+ i_depth_luma = 8;
> }
>- cudaChroma = MapChomaIDC(i_chroma_idc);
>
> unsigned i_w, i_h, i_vw, i_vh;
>result = hxxx_helper_get_current_picture_size(&p_sys->hh, &i_w, &i_h,
>&i_vw, &i_vh);
>--
>2.17.1
>
>_______________________________________________
>vlc-devel mailing list
>To unsubscribe or modify your subscription options:
>https://mailman.videolan.org/listinfo/vlc-devel
--
Envoyé de mon appareil Android avec Courriel K-9 Mail. Veuillez excuser ma brièveté.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.videolan.org/pipermail/vlc-devel/attachments/20200407/0de9e5c5/attachment.html>
More information about the vlc-devel
mailing list