summarylogtreecommitdiffstats
path: root/ffmpeg-full-rkmpp-remove-stream-start.patch
diff options
context:
space:
mode:
Diffstat (limited to 'ffmpeg-full-rkmpp-remove-stream-start.patch')
-rw-r--r--ffmpeg-full-rkmpp-remove-stream-start.patch83
1 files changed, 0 insertions, 83 deletions
diff --git a/ffmpeg-full-rkmpp-remove-stream-start.patch b/ffmpeg-full-rkmpp-remove-stream-start.patch
deleted file mode 100644
index febff8e34d15..000000000000
--- a/ffmpeg-full-rkmpp-remove-stream-start.patch
+++ /dev/null
@@ -1,83 +0,0 @@
-From: LongChair <longchair@hotmail.com>
-Date: Tue, 2 Jan 2018 11:38:01 +0000 (+0100)
-Subject: avcodec/rkmpp : remove stream start retries before first frame.
-X-Git-Url: http://git.videolan.org/?p=ffmpeg.git;a=commitdiff_plain;h=2ca65fc7b74444edd51d5803a2c1e05a801a6023
-
-avcodec/rkmpp : remove stream start retries before first frame.
-
-those were needed because of some odd mpp behavior that seems to have
-been fixed.
-
-Makes the code cleaner.
-
-Signed-off-by: wm4 <nfxjfg@googlemail.com>
----
-
-diff --git a/libavcodec/rkmppdec.c b/libavcodec/rkmppdec.c
-index 946b827918..143d05bd51 100644
---- a/libavcodec/rkmppdec.c
-+++ b/libavcodec/rkmppdec.c
-@@ -47,7 +47,6 @@ typedef struct {
- MppApi *mpi;
- MppBufferGroup frame_group;
-
-- char first_frame;
- char first_packet;
- char eos_reached;
-
-@@ -329,28 +328,14 @@ static int rkmpp_retrieve_frame(AVCodecContext *avctx, AVFrame *frame)
- MppBuffer buffer = NULL;
- AVDRMFrameDescriptor *desc = NULL;
- AVDRMLayerDescriptor *layer = NULL;
-- int retrycount = 0;
- int mode;
- MppFrameFormat mppformat;
- uint32_t drmformat;
-
-- // on start of decoding, MPP can return -1, which is supposed to be expected
-- // this is due to some internal MPP init which is not completed, that will
-- // only happen in the first few frames queries, but should not be interpreted
-- // as an error, Therefore we need to retry a couple times when we get -1
-- // in order to let it time to complete it's init, then we sleep a bit between retries.
--retry_get_frame:
- ret = decoder->mpi->decode_get_frame(decoder->ctx, &mppframe);
-- if (ret != MPP_OK && ret != MPP_ERR_TIMEOUT && !decoder->first_frame) {
-- if (retrycount < 5) {
-- av_log(avctx, AV_LOG_DEBUG, "Failed to get a frame, retrying (code = %d, retrycount = %d)\n", ret, retrycount);
-- usleep(10000);
-- retrycount++;
-- goto retry_get_frame;
-- } else {
-- av_log(avctx, AV_LOG_ERROR, "Failed to get a frame from MPP (code = %d)\n", ret);
-- goto fail;
-- }
-+ if (ret != MPP_OK && ret != MPP_ERR_TIMEOUT) {
-+ av_log(avctx, AV_LOG_ERROR, "Failed to get a frame from MPP (code = %d)\n", ret);
-+ goto fail;
- }
-
- if (mppframe) {
-@@ -366,7 +351,6 @@ retry_get_frame:
- avctx->height = mpp_frame_get_height(mppframe);
-
- decoder->mpi->control(decoder->ctx, MPP_DEC_SET_INFO_CHANGE_READY, NULL);
-- decoder->first_frame = 1;
-
- av_buffer_unref(&decoder->frames_ref);
-
-@@ -480,7 +464,6 @@ retry_get_frame:
- goto fail;
- }
-
-- decoder->first_frame = 0;
- return 0;
- } else {
- av_log(avctx, AV_LOG_ERROR, "Failed to retrieve the frame buffer, frame is dropped (code = %d)\n", ret);
-@@ -560,7 +543,6 @@ static void rkmpp_flush(AVCodecContext *avctx)
-
- ret = decoder->mpi->reset(decoder->ctx);
- if (ret == MPP_OK) {
-- decoder->first_frame = 1;
- decoder->first_packet = 1;
- } else
- av_log(avctx, AV_LOG_ERROR, "Failed to reset MPI (code = %d)\n", ret);