From f50040fcd1801d1ce99b70635ab385e503699359 Mon Sep 17 00:00:00 2001 From: liujie129 Date: Sat, 6 Jan 2024 00:02:47 +0800 Subject: [PATCH] fix video not playing erro Signed-off-by: liujie129 --- services/media_engine/modules/demuxer/media_demuxer.cpp | 1 + services/media_engine/modules/sink/video_sink.cpp | 4 ++-- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/services/media_engine/modules/demuxer/media_demuxer.cpp b/services/media_engine/modules/demuxer/media_demuxer.cpp index ae93c5823..385e761db 100644 --- a/services/media_engine/modules/demuxer/media_demuxer.cpp +++ b/services/media_engine/modules/demuxer/media_demuxer.cpp @@ -467,6 +467,7 @@ bool MediaDemuxer::IsOffsetValid(int64_t offset) const bool MediaDemuxer::GetBufferFromUserQueue(uint32_t queueIndex, int32_t size) { + std::unique_lock lock(mutex_); MEDIA_LOG_I("Get buffer from user queue " PUBLIC_LOG_D32 ".", queueIndex); FALSE_RETURN_V_MSG_E(bufferQueueMap_.count(queueIndex) > 0 && bufferQueueMap_[queueIndex] != nullptr, false, "bufferQueue " PUBLIC_LOG_D32 " is nullptr", queueIndex); diff --git a/services/media_engine/modules/sink/video_sink.cpp b/services/media_engine/modules/sink/video_sink.cpp index e695783b3..01edea3e5 100644 --- a/services/media_engine/modules/sink/video_sink.cpp +++ b/services/media_engine/modules/sink/video_sink.cpp @@ -104,10 +104,10 @@ bool VideoSink::CheckBufferLatenessMayWait(const std::shared_ptr 0 && Plugins::HstTime2Ms(diff * HST_USECOND) > 40) { // > 40ms + } else if (diff > 0 && Plugins::HstTime2Ms(diff) > 40) { // > 40ms // buffer is late tooLate = true; MEDIA_LOG_DD("buffer is too late"); -- Gitee