Prevent HEVC streaming with the software decoder for performance reasons

This commit is contained in:
Cameron Gutman 2018-07-26 19:26:22 -07:00
commit 0bde932550
2 changed files with 31 additions and 14 deletions

View file

@ -1,5 +1,7 @@
#include "renderer.h"
#include <Limelight.h>
SdlRenderer::SdlRenderer()
: m_Renderer(nullptr),
m_Texture(nullptr)
@ -25,10 +27,18 @@ bool SdlRenderer::prepareDecoderContext(AVCodecContext*)
}
bool SdlRenderer::initialize(SDL_Window* window,
int,
int videoFormat,
int width,
int height)
{
// NOTE: HEVC currently uses only 1 slice regardless of what
// we provide in CAPABILITY_SLICES_PER_FRAME(), so we should
// never use it for software decoding (unless common-c starts
// respecting it for HEVC).
if (videoFormat != VIDEO_FORMAT_H264) {
return false;
}
m_Renderer = SDL_CreateRenderer(window, -1, SDL_RENDERER_ACCELERATED);
if (!m_Renderer) {
SDL_LogError(SDL_LOG_CATEGORY_APPLICATION,