mirror of
https://github.com/moonlight-stream/moonlight-qt.git
synced 2026-06-18 06:30:55 +00:00
Fix DXVA2 chroma subsampling assuming interlaced content
This commit is contained in:
@@ -1109,14 +1109,17 @@ void DXVA2Renderer::renderFrame(AVFrame *frame)
|
|||||||
switch (frame->chroma_location) {
|
switch (frame->chroma_location) {
|
||||||
case AVCHROMA_LOC_LEFT:
|
case AVCHROMA_LOC_LEFT:
|
||||||
m_Desc.SampleFormat.VideoChromaSubsampling = DXVA2_VideoChromaSubsampling_Horizontally_Cosited |
|
m_Desc.SampleFormat.VideoChromaSubsampling = DXVA2_VideoChromaSubsampling_Horizontally_Cosited |
|
||||||
DXVA2_VideoChromaSubsampling_Vertically_AlignedChromaPlanes;
|
DXVA2_VideoChromaSubsampling_Vertically_AlignedChromaPlanes |
|
||||||
|
DXVA2_VideoChromaSubsampling_ProgressiveChroma;
|
||||||
break;
|
break;
|
||||||
case AVCHROMA_LOC_CENTER:
|
case AVCHROMA_LOC_CENTER:
|
||||||
m_Desc.SampleFormat.VideoChromaSubsampling = DXVA2_VideoChromaSubsampling_Vertically_AlignedChromaPlanes;
|
m_Desc.SampleFormat.VideoChromaSubsampling = DXVA2_VideoChromaSubsampling_Vertically_AlignedChromaPlanes |
|
||||||
|
DXVA2_VideoChromaSubsampling_ProgressiveChroma;
|
||||||
break;
|
break;
|
||||||
case AVCHROMA_LOC_TOPLEFT:
|
case AVCHROMA_LOC_TOPLEFT:
|
||||||
m_Desc.SampleFormat.VideoChromaSubsampling = DXVA2_VideoChromaSubsampling_Horizontally_Cosited |
|
m_Desc.SampleFormat.VideoChromaSubsampling = DXVA2_VideoChromaSubsampling_Horizontally_Cosited |
|
||||||
DXVA2_VideoChromaSubsampling_Vertically_Cosited;
|
DXVA2_VideoChromaSubsampling_Vertically_Cosited |
|
||||||
|
DXVA2_VideoChromaSubsampling_ProgressiveChroma;
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
m_Desc.SampleFormat.VideoChromaSubsampling = DXVA2_VideoChromaSubsampling_Unknown;
|
m_Desc.SampleFormat.VideoChromaSubsampling = DXVA2_VideoChromaSubsampling_Unknown;
|
||||||
|
|||||||
Reference in New Issue
Block a user