mirror of https://github.com/odrling/Aegisub
parent
f72e6794a3
commit
975c85be7c
|
@ -370,9 +370,6 @@ int FFMatroskaSource::DecodeNextFrame(AVFrame *AFrame, int64_t *AFirstStartTime,
|
|||
FrameSize = ReadFrame(FilePos, FrameSize, VideoCS, Env);
|
||||
Ret = avcodec_decode_video(VideoCodecContext, AFrame, &FrameFinished, Buffer, FrameSize);
|
||||
|
||||
if (Ret < 0)
|
||||
goto Error;
|
||||
|
||||
if (FrameFinished)
|
||||
goto Done;
|
||||
}
|
||||
|
@ -381,7 +378,7 @@ int FFMatroskaSource::DecodeNextFrame(AVFrame *AFrame, int64_t *AFirstStartTime,
|
|||
if (VideoCodecContext->has_b_frames)
|
||||
Ret = avcodec_decode_video(VideoCodecContext, AFrame, &FrameFinished, NULL, 0);
|
||||
|
||||
if (!FrameFinished || Ret < 0)
|
||||
if (!FrameFinished)
|
||||
goto Error;
|
||||
|
||||
Error:
|
||||
|
|
|
@ -246,9 +246,6 @@ int FFmpegSource::DecodeNextFrame(AVFrame *AFrame, int64_t *AStartTime) {
|
|||
*AStartTime = Packet.dts;
|
||||
|
||||
Ret = avcodec_decode_video(VideoCodecContext, AFrame, &FrameFinished, Packet.data, Packet.size);
|
||||
|
||||
if (Ret < 0)
|
||||
goto Error;
|
||||
}
|
||||
|
||||
av_free_packet(&Packet);
|
||||
|
@ -261,7 +258,7 @@ int FFmpegSource::DecodeNextFrame(AVFrame *AFrame, int64_t *AStartTime) {
|
|||
if (VideoCodecContext->has_b_frames)
|
||||
Ret = avcodec_decode_video(VideoCodecContext, AFrame, &FrameFinished, NULL, 0);
|
||||
|
||||
if (!FrameFinished || Ret < 0)
|
||||
if (!FrameFinished)
|
||||
goto Error;
|
||||
|
||||
// Ignore errors for now
|
||||
|
|
|
@ -165,6 +165,10 @@ Note that --enable-w32threads is required for multithreaded decoding to work.
|
|||
|
||||
<h2>Changes</h2>
|
||||
<ul>
|
||||
<li>1.18<ul>
|
||||
<li>Reverted error handling because it broke vc1</li>
|
||||
</ul></li>
|
||||
|
||||
<li>1.17<ul>
|
||||
<li>Now sets the video SAR (if any) in the variables FFSAR, FFSAR_NUM and FFSAR_DEN when being invoked</li>
|
||||
<li>Changed error handling slightly in video decoding (most errors are still ignored)</li>
|
||||
|
|
Loading…
Reference in New Issue