From 3051173f3c7c6feed4e26685beced54278182d38 Mon Sep 17 00:00:00 2001 From: Erik Zandvliet Date: Thu, 17 Apr 2014 16:21:19 +0200 Subject: [PATCH] Probably bugfix for the live audio problem --- src/output/output_rtmp.cpp | 7 +++++++ src/output/output_rtmp.h | 3 ++- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/src/output/output_rtmp.cpp b/src/output/output_rtmp.cpp index 6a21f7dd..d84dbcc4 100644 --- a/src/output/output_rtmp.cpp +++ b/src/output/output_rtmp.cpp @@ -435,6 +435,13 @@ namespace Mist { //declined track; return; } + if (myMeta.tracks[pack["trackid"].asInt()].type != "video"){ + if (pack["time"].asInt() - bookKeeping[trackMap[pack["trackid"].asInt()]].lastKeyTime >= 5000){ + pack["keyframe"] = 1LL; + DEBUG_MSG(DLVL_DEVEL, "Fake keyframe added for track %d", pack["trackid"].asInt()); + } + bookKeeping[trackMap[pack["trackid"].asInt()]].lastKeyTime = pack["time"].asInt(); + } pack["trackid"] = trackMap[pack["trackid"].asInt()]; long long unsigned int tNum = pack["trackid"].asInt(); if (!bookKeeping.count(tNum)){ diff --git a/src/output/output_rtmp.h b/src/output/output_rtmp.h index 1c0493fa..bd7590b1 100644 --- a/src/output/output_rtmp.h +++ b/src/output/output_rtmp.h @@ -6,13 +6,14 @@ namespace Mist { struct DTSCPageData { - DTSCPageData() : pageNum(0), keyNum(0), partNum(0), dataSize(0), curOffset(0), firstTime(0){} + DTSCPageData() : pageNum(0), keyNum(0), partNum(0), dataSize(0), curOffset(0), firstTime(0), lastKeyTime(-5000){} int pageNum;///