mirror of
https://github.com/nyanmisaka/ffmpeg-rockchip.git
synced 2026-01-23 23:21:06 +01:00
使用h264_rkmpp解码mp4格式的视频,8551帧的视频最后只解码出2778帧图像 #212
Labels
No labels
bug
enhancement
help wanted
invalid
pull-request
question
upstream
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference: starred/ffmpeg-rockchip#212
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @hsj1104 on GitHub (Sep 2, 2025).
我用的是api,下面是其中一部分日志的内容:
Received a 'errinfo' frame: 16
Wrote 708 bytes to decoder
Received a 'errinfo' frame: 16
Received a 'errinfo' frame: 16
stream 0, sample 7905, dts 832766667
Wrote 420 bytes to decoder
Received a 'errinfo' frame: 16
Received a frame
Received a frame
Wrote 55544 bytes to decoder
Received a frame
Received a frame
Received a 'errinfo' frame: 16
stream 0, sample 7906, dts 832900000
Wrote 316 bytes to decoder
Received a 'errinfo' frame: 16
stream 0, sample 7907, dts 832966667
Wrote 294 bytes to decoder
Received a 'errinfo' frame: 16
stream 0, sample 7908, dts 833000000
Decoding VUI
Wrote 9651 bytes to decoder
Received a 'errinfo' frame: 16
Received a 'errinfo' frame: 16
stream 0, sample 7909, dts 833033333
Decoding VUI
Wrote 11454 bytes to decoder
stream 0, sample 7910, dts 833166667
Wrote 266 bytes to decoder
Wrote 68456 bytes to decoder
stream 0, sample 7911, dts 833300000
Wrote 102 bytes to decoder
stream 0, sample 7912, dts 833433333
Wrote 89 bytes to decoder
stream 0, sample 7913, dts 833566667
Received a frame
Wrote 87 bytes to decoder
stream 0, sample 7914, dts 833700000
Decoder buffer is full
Received a 'errinfo' frame: 16
Wrote 87 bytes to decoder
Received a 'errinfo' frame: 16
Received a frame
Received a frame
Received a frame
Wrote 57214 bytes to decoder
errinfo返回16一直查不到是什么意思
@nyanmisaka commented on GitHub (Sep 2, 2025):
The appearance of errinfo means that the video itself contains errors and MPP automatically drops frames.
@hsj1104 commented on GitHub (Sep 2, 2025):
问题是我用ffplay播放是正常的,会不会和日志里面的”Decoder buffer is full“有关,但是我调用avcodec_send_packet的时候一直都是返回0的
@nyanmisaka commented on GitHub (Sep 2, 2025):
Nope. "Decoder buffer is full" is normal.
@hsj1104 commented on GitHub (Sep 2, 2025):
刚刚试了一下把调试级别改成debug,ffplay确实也有打印那个errinfo 16的信息,后面我试了一下用软件解码,打印了另外一些信息:
@hsj1104 commented on GitHub (Sep 2, 2025):
[h264 @ 0x7f1c0026c0] nal_unit_type: 7(SPS), nal_ref_idc: 3
[h264 @ 0x7f1c0026c0] nal_unit_type: 8(PPS), nal_ref_idc: 3
[h264 @ 0x7f1c0026c0] sps_id 1 out of range
[h264 @ 0x7f1c0026c0] SPS decoding failure, trying again after escaping the NAL
[h264 @ 0x7f1c0026c0] nal_unit_type: 8(PPS), nal_ref_idc: 3
[h264 @ 0x7f1c0026c0] sps_id 1 out of range
[h264 @ 0x7f1c0026c0] nal_unit_type: 7(SPS), nal_ref_idc: 3
[h264 @ 0x7f1c0026c0] nal_unit_type: 8(PPS), nal_ref_idc: 3
[h264 @ 0x7f1c0026c0] nal_unit_type: 6(SEI), nal_ref_idc: 0
[h264 @ 0x7f1c0026c0] nal_unit_type: 5(IDR), nal_ref_idc: 3
[h264 @ 0x7f1c0026c0] Format yuv420p chosen by get_format().
[h264 @ 0x7f1c0026c0] Reinit context to 1536x1632, pix_fmt: yuv420p
[h264 @ 0x7f1c0026c0] no picture
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7f1c000c10] All info found 0B f=0/0
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7f1c000c10] After avformat_find_stream_info() pos: 92520 bytes read:98304 seeks:0 frames:1
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '../bags/output.mp4':
Metadata:
major_brand : isom
minor_version : 512
compatible_brands: isomavc1mp41
creation_time : 2025-09-02T03:24:35.000000Z
Duration: 00:14:59.50, start: 0.000000, bitrate: 307 kb/s
Stream #0:0(und), 1, 1/30: Video: h264 (Main), 1 reference frame (avc1 / 0x31637661), yuv420p(left), 1536x1622 (1536x1632), 0/1, 306 kb/s, 9.51 fps, 30 tbr, 30 tbn, 2000k tbc (default)
Metadata:
creation_time : 2025-09-02T03:24:35.000000Z
handler_name : mp4-muxer-hdlr
vendor_id : [0][0][0][0]
detected 8 logical cores
[h264 @ 0x7f1c007140] nal_unit_type: 7(SPS), nal_ref_idc: 3
[h264 @ 0x7f1c007140] nal_unit_type: 8(PPS), nal_ref_idc: 3
[h264 @ 0x7f1c007140] sps_id 1 out of range
[h264 @ 0x7f1c007140] SPS decoding failure, trying again after escaping the NAL
[h264 @ 0x7f1c007140] nal_unit_type: 8(PPS), nal_ref_idc: 3
[h264 @ 0x7f1c007140] sps_id 1 out of range
[h264 @ 0x7f1c007140] nal_unit_type: 7(SPS), nal_ref_idc: 3
[h264 @ 0x7f1c007140] nal_unit_type: 8(PPS), nal_ref_idc: 3
[h264 @ 0x7f1c007140] nal_unit_type: 6(SEI), nal_ref_idc: 0
[h264 @ 0x7f1c007140] nal_unit_type: 5(IDR), nal_ref_idc: 3
[h264 @ 0x7f1c007140] Format yuv420p chosen by get_format().
[h264 @ 0x7f1c007140] Reinit context to 1536x1632, pix_fmt: yuv420p
[h264 @ 0x7f1c007140] no picture
[h264 @ 0x7f1c005890] nal_unit_type: 7(SPS), nal_ref_idc: 3
[h264 @ 0x7f1c005890] nal_unit_type: 8(PPS), nal_ref_idc: 3
[h264 @ 0x7f1c005890] nal_unit_type: 6(SEI), nal_ref_idc: 0
[h264 @ 0x7f1c005890] nal_unit_type: 5(IDR), nal_ref_idc: 3
[h264 @ 0x7f1c005890] no picture
[h264 @ 0x7f1c0bfd20] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2
[h264 @ 0x7f1c0d27b0] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2
[h264 @ 0x7f1c0d27b0] Frame num gap 3 1
[h264 @ 0x7f1c20cee0] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2
[h264 @ 0x7f1c20cee0] Frame num gap 5 3
[h264 @ 0x7f1c056640] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2
[h264 @ 0x7f1c056640] Frame num gap 7 5
[h264 @ 0x7f1c0721b0] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2
[h264 @ 0x7f1c0721b0] Frame num gap 9 7
[h264 @ 0x7f1c08de10] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2
[h264 @ 0x7f1c08de10] Frame num gap 11 9
[h264 @ 0x7f1c0d7150] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2
[h264 @ 0x7f1c0d7150] Frame num gap 13 11
[h264 @ 0x7f1c007140] nal_unit_type: 7(SPS), nal_ref_idc: 3
[h264 @ 0x7f1c007140] nal_unit_type: 8(PPS), nal_ref_idc: 3
[h264 @ 0x7f1c007140] nal_unit_type: 5(IDR), nal_ref_idc: 3
[h264 @ 0x7f1c005890] nal_unit_type: 7(SPS), nal_ref_idc: 3
[h264 @ 0x7f1c005890] nal_unit_type: 8(PPS), nal_ref_idc: 3
[h264 @ 0x7f1c005890] nal_unit_type: 6(SEI), nal_ref_idc: 0
Video frame changed from size:0x0 format:none serial:-1 to size:1536x1622 format:yuv420p serial:1
[h264 @ 0x7f1c005890] nal_unit_type: 5(IDR), nal_ref_idc: 3
[ffplay_buffer @ 0x7f0c7af190] Setting 'video_size' to value '1536x1622'
[ffplay_buffer @ 0x7f0c7af190] Setting 'pix_fmt' to value '0'
[ffplay_buffer @ 0x7f0c7af190] Setting 'time_base' to value '1/30'
[ffplay_buffer @ 0x7f0c7af190] Setting 'pixel_aspect' to value '0/1'
[ffplay_buffer @ 0x7f0c7af190] Setting 'frame_rate' to value '30/1'
[ffplay_buffer @ 0x7f0c7af190] w:1536 h:1622 pixfmt:yuv420p tb:1/30 fr:30/1 sar:0/1
[AVFilterGraph @ 0x7f1c0d4d80] query_formats: 2 queried, 1 merged, 0 already done, 0 delayed
[h264 @ 0x7f1c0bfd20] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2
[h264 @ 0x7f1c0d27b0] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2
[h264 @ 0x7f1c0d27b0] Frame num gap 3 1
[h264 @ 0x7f1c20cee0] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2
[h264 @ 0x7f1c20cee0] Frame num gap 5 3
Created 1536x1622 texture with SDL_PIXELFORMAT_IYUV.
[h264 @ 0x7f1c056640] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2
[h264 @ 0x7f1c056640] Frame num gap 7 5
[h264 @ 0x7f1c0721b0] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2
[h264 @ 0x7f1c0721b0] Frame num gap 9 7
[h264 @ 0x7f1c08de10] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2
[h264 @ 0x7f1c08de10] Frame num gap 11 9
[h264 @ 0x7f1c0d7150] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2
[h264 @ 0x7f1c0d7150] Frame num gap 13 11
[h264 @ 0x7f1c007140] nal_unit_type: 7(SPS), nal_ref_idc: 3 f=0/0
[h264 @ 0x7f1c007140] nal_unit_type: 8(PPS), nal_ref_idc: 3
[h264 @ 0x7f1c007140] nal_unit_type: 5(IDR), nal_ref_idc: 3
[h264 @ 0x7f1c005890] nal_unit_type: 7(SPS), nal_ref_idc: 3 f=0/0
[h264 @ 0x7f1c005890] nal_unit_type: 8(PPS), nal_ref_idc: 3
[h264 @ 0x7f1c005890] nal_unit_type: 6(SEI), nal_ref_idc: 0
[h264 @ 0x7f1c005890] nal_unit_type: 5(IDR), nal_ref_idc: 3
[h264 @ 0x7f1c0bfd20] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2
[h264 @ 0x7f1c0d27b0] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2
[h264 @ 0x7f1c0d27b0] Frame num gap 3 1
[h264 @ 0x7f1c20cee0] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2
[h264 @ 0x7f1c20cee0] Frame num gap 5 3
[h264 @ 0x7f1c056640] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2
[h264 @ 0x7f1c056640] Frame num gap 7 5
[h264 @ 0x7f1c0721b0] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2
[h264 @ 0x7f1c0721b0] Frame num gap 9 7
[h264 @ 0x7f1c08de10] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2
[h264 @ 0x7f1c08de10] Frame num gap 11 9
[h264 @ 0x7f1c0d7150] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2
[h264 @ 0x7f1c0d7150] Frame num gap 13 11
[h264 @ 0x7f1c007140] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2
[h264 @ 0x7f1c007140] Frame num gap 15 13
[h264 @ 0x7f1c005890] nal_unit_type: 7(SPS), nal_ref_idc: 3 f=0/0
[h264 @ 0x7f1c005890] nal_unit_type: 8(PPS), nal_ref_idc: 3
[h264 @ 0x7f1c005890] nal_unit_type: 5(IDR), nal_ref_idc: 3
[h264 @ 0x7f1c0bfd20] nal_unit_type: 7(SPS), nal_ref_idc: 3 f=0/0
[h264 @ 0x7f1c0bfd20] nal_unit_type: 8(PPS), nal_ref_idc: 3
[h264 @ 0x7f1c0bfd20] nal_unit_type: 6(SEI), nal_ref_idc: 0
[h264 @ 0x7f1c0bfd20] nal_unit_type: 5(IDR), nal_ref_idc: 3
[h264 @ 0x7f1c0d27b0] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2
[h264 @ 0x7f1c20cee0] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2
[h264 @ 0x7f1c20cee0] Frame num gap 3 1
[h264 @ 0x7f1c056640] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2
[h264 @ 0x7f1c056640] Frame num gap 5 3
[h264 @ 0x7f1c0721b0] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2
[h264 @ 0x7f1c0721b0] Frame num gap 7 5
[h264 @ 0x7f1c08de10] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2
[h264 @ 0x7f1c08de10] Frame num gap 9 7
[h264 @ 0x7f1c0d7150] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2
[h264 @ 0x7f1c0d7150] Frame num gap 11 9
[h264 @ 0x7f1c007140] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2
[h264 @ 0x7f1c007140] Frame num gap 13 11
[h264 @ 0x7f1c005890] nal_unit_type: 7(SPS), nal_ref_idc: 3 f=0/0
[h264 @ 0x7f1c005890] nal_unit_type: 8(PPS), nal_ref_idc: 3
[h264 @ 0x7f1c005890] nal_unit_type: 5(IDR), nal_ref_idc: 3
[h264 @ 0x7f1c0bfd20] nal_unit_type: 7(SPS), nal_ref_idc: 3 f=0/0
[h264 @ 0x7f1c0bfd20] nal_unit_type: 8(PPS), nal_ref_idc: 3
[h264 @ 0x7f1c0bfd20] nal_unit_type: 6(SEI), nal_ref_idc: 0
[h264 @ 0x7f1c0bfd20] nal_unit_type: 5(IDR), nal_ref_idc: 3
[h264 @ 0x7f1c0d27b0] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2
[h264 @ 0x7f1c20cee0] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2
[h264 @ 0x7f1c20cee0] Frame num gap 3 1
[h264 @ 0x7f1c056640] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2
[h264 @ 0x7f1c056640] Frame num gap 5 3
[h264 @ 0x7f1c0721b0] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2
[h264 @ 0x7f1c0721b0] Frame num gap 7 5
[h264 @ 0x7f1c08de10] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2
[h264 @ 0x7f1c08de10] Frame num gap 9 7
[h264 @ 0x7f1c0d7150] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2
[h264 @ 0x7f1c0d7150] Frame num gap 11 9
[h264 @ 0x7f1c007140] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2
[h264 @ 0x7f1c007140] Frame num gap 13 11
[h264 @ 0x7f1c005890] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2
[h264 @ 0x7f1c005890] Frame num gap 15 13
[h264 @ 0x7f1c0bfd20] nal_unit_type: 7(SPS), nal_ref_idc: 3 f=0/0
[h264 @ 0x7f1c0bfd20] nal_unit_type: 8(PPS), nal_ref_idc: 3
[h264 @ 0x7f1c0bfd20] nal_unit_type: 5(IDR), nal_ref_idc: 3
[h264 @ 0x7f1c0d27b0] nal_unit_type: 7(SPS), nal_ref_idc: 3 f=0/0
[h264 @ 0x7f1c0d27b0] nal_unit_type: 8(PPS), nal_ref_idc: 3
[h264 @ 0x7f1c0d27b0] nal_unit_type: 6(SEI), nal_ref_idc: 0
[h264 @ 0x7f1c0d27b0] nal_unit_type: 5(IDR), nal_ref_idc: 3
[h264 @ 0x7f1c20cee0] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2
[h264 @ 0x7f1c056640] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2
[h264 @ 0x7f1c056640] Frame num gap 3 1
[h264 @ 0x7f1c0721b0] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2
[h264 @ 0x7f1c0721b0] Frame num gap 5 3
[h264 @ 0x7f1c08de10] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2
[h264 @ 0x7f1c08de10] Frame num gap 7 5
[h264 @ 0x7f1c0d7150] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2
[h264 @ 0x7f1c0d7150] Frame num gap 9 7
[h264 @ 0x7f1c007140] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2
[h264 @ 0x7f1c007140] Frame num gap 11 9
[h264 @ 0x7f1c005890] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2
[h264 @ 0x7f1c005890] Frame num gap 13 11
[h264 @ 0x7f1c0bfd20] nal_unit_type: 7(SPS), nal_ref_idc: 3 f=0/0
[h264 @ 0x7f1c0bfd20] nal_unit_type: 8(PPS), nal_ref_idc: 3
[h264 @ 0x7f1c0bfd20] nal_unit_type: 5(IDR), nal_ref_idc: 3
[h264 @ 0x7f1c0d27b0] nal_unit_type: 7(SPS), nal_ref_idc: 3 f=0/0
[h264 @ 0x7f1c0d27b0] nal_unit_type: 8(PPS), nal_ref_idc: 3
[h264 @ 0x7f1c0d27b0] nal_unit_type: 6(SEI), nal_ref_idc: 0
[h264 @ 0x7f1c0d27b0] nal_unit_type: 5(IDR), nal_ref_idc: 3
[h264 @ 0x7f1c20cee0] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2
[h264 @ 0x7f1c056640] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2
[h264 @ 0x7f1c056640] Frame num gap 3 1
@nyanmisaka commented on GitHub (Sep 2, 2025):
You should test your video using mpi_dec_test and report any problems to MPP. There's nothing i can do.
https://github.com/rockchip-linux/mpp/tree/develop/test