From 43bdc353fb93f6acb9d7b5e0ec0555dae9b4468f Mon Sep 17 00:00:00 2001 From: Cameron Gutman Date: Sun, 23 Feb 2020 00:22:44 -0800 Subject: [PATCH] Fix 720p streaming on MMAL --- app/streaming/video/ffmpeg-renderers/mmal.cpp | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/app/streaming/video/ffmpeg-renderers/mmal.cpp b/app/streaming/video/ffmpeg-renderers/mmal.cpp index 32f06d70..f6e53ea2 100644 --- a/app/streaming/video/ffmpeg-renderers/mmal.cpp +++ b/app/streaming/video/ffmpeg-renderers/mmal.cpp @@ -22,12 +22,17 @@ MmalRenderer::~MmalRenderer() } } -bool MmalRenderer::prepareDecoderContext(AVCodecContext*, AVDictionary** options) +bool MmalRenderer::prepareDecoderContext(AVCodecContext* context, AVDictionary** options) { // FFmpeg defaults this to 10 which is too large to fit in the default 64 MB VRAM split. // Reducing to 2 seems to work fine for our bitstreams (max of 1 buffered frame needed). av_dict_set_int(options, "extra_buffers", 2, 0); + // MMAL seems to dislike certain initial width and height values, but it seems okay + // with getting zero for the width and height. We'll zero them all the time to be safe. + context->width = 0; + context->height = 0; + SDL_LogInfo(SDL_LOG_CATEGORY_APPLICATION, "Using MMAL renderer");