Refactor renderer initialization to reduce duplication and inconsistency

This commit is contained in:
Cameron Gutman
2019-04-18 20:02:14 -07:00
parent e51ad1a68a
commit 1dfca525cf
2 changed files with 65 additions and 55 deletions
+8 -1
View File
@@ -1,5 +1,7 @@
#pragma once
#include <functional>
#include "decoder.h"
#include "ffmpeg-renderers/renderer.h"
#include "ffmpeg-renderers/pacer/pacer.h"
@@ -31,7 +33,12 @@ private:
bool createFrontendRenderer(PDECODER_PARAMETERS params);
IFFmpegRenderer* createHwAccelRenderer(const AVCodecHWConfig* hwDecodeCfg);
bool tryInitializeRenderer(AVCodec* decoder,
PDECODER_PARAMETERS params,
const AVCodecHWConfig* hwConfig,
std::function<IFFmpegRenderer*()> createRendererFunc);
static IFFmpegRenderer* createHwAccelRenderer(const AVCodecHWConfig* hwDecodeCfg);
void reset();