Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mpc-hc/LAVFilters.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHendrik Leppkes <h.leppkes@gmail.com>2016-04-12 15:49:50 +0300
committerHendrik Leppkes <h.leppkes@gmail.com>2016-04-12 15:49:50 +0300
commit31f2c7d4477a7824567fc0ea70f1d7c24c9a041b (patch)
tree12ecc31837b9104a6791e644f6175da05112c205 /decoder
parent7d87158efada97bacf33925b515f13c3c5357a7b (diff)
Remote mpeg2 decoding at the start of a GOP, in addition to after a keyframe
This allows playing intra-refresh mpeg2 samples, and should hopefully limit the amount of distortion it may allow to be shown after a seek to open-gop streams.
Diffstat (limited to 'decoder')
-rw-r--r--decoder/LAVVideo/decoders/avcodec.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/decoder/LAVVideo/decoders/avcodec.cpp b/decoder/LAVVideo/decoders/avcodec.cpp
index 5b5c44de..73e3a323 100644
--- a/decoder/LAVVideo/decoders/avcodec.cpp
+++ b/decoder/LAVVideo/decoders/avcodec.cpp
@@ -778,6 +778,9 @@ STDMETHODIMP CDecAvcodec::Decode(const BYTE *buffer, int buflen, REFERENCE_TIME
if (state & STATE_EOS_FOUND) {
bEndOfSequence = TRUE;
}
+ if (state & STATE_GOP_FOUND && m_nCodecId == AV_CODEC_ID_MPEG2VIDEO) {
+ m_bWaitingForKeyFrame = FALSE;
+ }
} else {
avpkt.data = nullptr;
avpkt.size = 0;