mirror of
https://github.com/moonlight-stream/moonlight-qt.git
synced 2026-06-18 06:30:55 +00:00
Pass the chroma type to the VDPAU video mixer
This commit is contained in:
@@ -235,9 +235,10 @@ void VDPAURenderer::renderFrame(AVFrame* frame)
|
|||||||
// We need to create the mixer on the fly, because we don't know the dimensions
|
// We need to create the mixer on the fly, because we don't know the dimensions
|
||||||
// of our video surfaces in advance of decoding
|
// of our video surfaces in advance of decoding
|
||||||
if (m_VideoMixer == 0) {
|
if (m_VideoMixer == 0) {
|
||||||
VdpChromaType chroma;
|
VdpChromaType videoSurfaceChroma;
|
||||||
uint32_t videoSurfaceWidth, videoSurfaceHeight;
|
uint32_t videoSurfaceWidth, videoSurfaceHeight;
|
||||||
status = m_VdpVideoSurfaceGetParameters(videoSurface, &chroma, &videoSurfaceWidth, &videoSurfaceHeight);
|
status = m_VdpVideoSurfaceGetParameters(videoSurface, &videoSurfaceChroma,
|
||||||
|
&videoSurfaceWidth, &videoSurfaceHeight);
|
||||||
if (status != VDP_STATUS_OK) {
|
if (status != VDP_STATUS_OK) {
|
||||||
SDL_LogError(SDL_LOG_CATEGORY_APPLICATION,
|
SDL_LogError(SDL_LOG_CATEGORY_APPLICATION,
|
||||||
"VdpVideoSurfaceGetParameters() failed: %s",
|
"VdpVideoSurfaceGetParameters() failed: %s",
|
||||||
@@ -250,14 +251,16 @@ void VDPAURenderer::renderFrame(AVFrame* frame)
|
|||||||
"VDPAU surface size: %dx%d",
|
"VDPAU surface size: %dx%d",
|
||||||
videoSurfaceWidth, videoSurfaceHeight);
|
videoSurfaceWidth, videoSurfaceHeight);
|
||||||
|
|
||||||
#define PARAM_COUNT 2
|
#define PARAM_COUNT 3
|
||||||
const VdpVideoMixerParameter params[PARAM_COUNT] = {
|
const VdpVideoMixerParameter params[PARAM_COUNT] = {
|
||||||
VDP_VIDEO_MIXER_PARAMETER_VIDEO_SURFACE_WIDTH,
|
VDP_VIDEO_MIXER_PARAMETER_VIDEO_SURFACE_WIDTH,
|
||||||
VDP_VIDEO_MIXER_PARAMETER_VIDEO_SURFACE_HEIGHT,
|
VDP_VIDEO_MIXER_PARAMETER_VIDEO_SURFACE_HEIGHT,
|
||||||
|
VDP_VIDEO_MIXER_PARAMETER_CHROMA_TYPE,
|
||||||
};
|
};
|
||||||
const void* const paramValues[PARAM_COUNT] = {
|
const void* const paramValues[PARAM_COUNT] = {
|
||||||
&videoSurfaceWidth,
|
&videoSurfaceWidth,
|
||||||
&videoSurfaceHeight,
|
&videoSurfaceHeight,
|
||||||
|
&videoSurfaceChroma,
|
||||||
};
|
};
|
||||||
|
|
||||||
status = m_VdpVideoMixerCreate(m_Device, 0, nullptr,
|
status = m_VdpVideoMixerCreate(m_Device, 0, nullptr,
|
||||||
|
|||||||
Reference in New Issue
Block a user