rockchip-linux / mpp

Media Process Platform (MPP) module
484 stars 159 forks source link

mpi_dec_test failed with latest MPP source code #292

Closed zhouwg closed 2 years ago

zhouwg commented 2 years ago

Required Info
Host Operating System & Version {Ubuntu 20.04.2 }
MPP Version { mpp_info: mpp version: 22400055 author: Herman Chen 2022-02-24 }
MPP Branch { develop }
Board RK3568
Board OS Linux
Board OS Kernel Version (4.19.161)

Issue Description

mpi_dec_test failed with latest MPP source code

How to reproduce the issue

(1) mpi_dec_test sanity check with original librockchip_mpp.so.0

# uname -a
Linux RK356X 4.19.161 #4 SMP Tue Dec 14 14:56:37 CST 2021 aarch64 GNU/Linux

# ls -l /usr/lib/librockchip_*
lrwxrwxrwx 1 root root      20 Apr 17 09:04 /usr/lib/librockchip_mpp.so -> librockchip_mpp.so.1
-rwxr-xr-x 1 root root 5470632 Apr 18 02:04 /usr/lib/librockchip_mpp.so.0
-rwxr-xr-x 1 root root 5470632 Apr 18 01:50 /usr/lib/librockchip_mpp.so.0.org
lrwxrwxrwx 1 root root      20 Apr 17 09:04 /usr/lib/librockchip_mpp.so.1 -> librockchip_mpp.so.0
lrwxrwxrwx 1 root root      20 Apr 17 09:04 /usr/lib/librockchip_vpu.so -> librockchip_vpu.so.1
-rwxr-xr-x 1 root root  183000 Apr 18 01:56 /usr/lib/librockchip_vpu.so.0
-rwxr-xr-x 1 root root  193896 Apr 18 01:54 /usr/lib/librockchip_vpu.so.0.org
lrwxrwxrwx 1 root root      20 Apr 17 09:04 /usr/lib/librockchip_vpu.so.1 -> librockchip_vpu.so.0

# ffprobe /vdi/video/h264.bin 
ffprobe version N-106509-g21ca221068 Copyright (c) 2007-2022 the FFmpeg developers
  libavutil      57. 24.101 / 57. 24.101
  libavcodec     59. 25.100 / 59. 25.100
  libavformat    59. 20.101 / 59. 20.101
  libavdevice    59.  6.100 / 59.  6.100
  libavfilter     8. 30.100 /  8. 30.100
  libswscale      6.  6.100 /  6.  6.100
  libswresample   4.  6.100 /  4.  6.100
  libpostproc    56.  5.100 / 56.  5.100
Input #0, h264, from '/vdi/video/h264.bin':
  Duration: N/A, bitrate: N/A
  Stream #0:0: Video: h264 (Main), yuv420p(tv, smpte170m/smpte170m/bt709, progressive), 320x240, 25 fps, 25 tbr, 1200k tbn

# ./mpi_dec_test -i /vdi/video/h264.bin -o /vdi/video/test.yuv -w 320 -h 240 -t 7
mpp[29883]: mpp_opt: setup:real node 18:22 info 11:11
mpp[29883]: mpi_dec_utils: input file /vdi/video/h264.bin size 94815
mpp[29883]: mpi_dec_utils: cmd parse result:
mpp[29883]: mpi_dec_utils: input  file name: /vdi/video/h264.bin
mpp[29883]: mpi_dec_utils: output file name: /vdi/video/test.yuv
mpp[29883]: mpi_dec_utils: width      :  320
mpp[29883]: mpi_dec_utils: height     :  240
mpp[29883]: mpi_dec_utils: type       :    7
mpp[29883]: mpi_dec_utils: max frames :    0
mpp[29883]: mpi_dec_test: mpi_dec_test start
mpp[29883]: mpp_info: mpp version: unknown mpp version for missing VCS info
mpp[29883]: mpi_dec_test: 0x3dfab440 mpi_dec_test decoder test start w 320 h 240 type 7
mpp[29883]: mpp_rt: NOT found ion allocator
mpp[29883]: mpp_rt: found drm allocator
mpp[29883]: mpi_dec_test: 0x3dfab440 decode_get_frame get info changed found
mpp[29883]: mpi_dec_test: 0x3dfab440 decoder require buffer w:h [320:240] stride [320:240] buf_size 153600
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 0
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 1
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 2
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 3
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 4
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 5
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 6
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 7
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 8
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 9
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 10
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 11
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 12
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 13
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 14
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 15
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 16
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 17
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 18
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 19
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 20
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 21
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 22
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 23
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 24
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 25
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 26
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 27
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 28
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 29
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 30
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 31
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 32
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 33
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 34
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 35
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 36
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 37
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 38
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 39
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 40
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 41
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 42
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 43
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 44
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 45
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 46
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 47
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 48
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 49
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 50
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 51
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 52
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 53
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 54
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 55
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 56
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 57
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 58
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 59
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 60
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 61
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 62
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 63
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 64
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 65
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 66
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 67
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 68
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 69
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 70
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 71
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 72
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 73
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 74
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 75
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 76
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 77
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 78
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 79
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 80
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 81
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 82
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 83
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 84
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 85
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 86
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 87
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 88
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 89
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 90
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 91
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 92
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 93
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 94
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 95
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 96
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 97
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 98
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 99
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 100
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 101
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 102
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 103
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 104
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 105
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 106
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 107
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 108
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 109
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 110
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 111
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 112
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 113
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 114
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 115
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 116
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 117
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 118
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 119
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 120
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 121
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 122
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 123
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 124
mpp[29883]: mpi_dec_test: 0x3dfab440 found last packet
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 125
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 126
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 127
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 128
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 129
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 130
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 131
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 132
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 133
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 134
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 135
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 136
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 137
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 138
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 139
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 140
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 141
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 142
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 143
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 144
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 145
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 146
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 147
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 148
mpp[29883]: mpi_dec_test: 0x3dfab440 decode get frame 149
mpp[29883]: mpi_dec_test: 0x3dfab440 found last packet
mpp[29883]: mpi_dec_test: decode 150 frames time 451 ms delay  13 ms fps 332.44
mpp[29883]: mpi_dec_test: test success max memory 1.03 MB

(2) replace librockchip_mpp.so.0 with libs from latest MPP source code

rockchip-linux-mpp/out/arm64-v8a/test]# ls -l ../mpp/*so*
lrwxrwxrwx 1 dbus dbus      20 Apr 18 01:36 ../mpp/librockchip_mpp.so -> librockchip_mpp.so.1
-rwxrwxr-x 1 dbus dbus 5404432 Apr 18 01:36 ../mpp/librockchip_mpp.so.0
lrwxrwxrwx 1 dbus dbus      20 Apr 18 01:36 ../mpp/librockchip_mpp.so.1 -> librockchip_mpp.so.0

rockchip-linux-mpp/out/arm64-v8a/test]# cp ../mpp/librockchip_mpp.so.0 /usr/lib/librockchip_mp
p.so.0

rockchip-linux-mpp/out/arm64-v8a/test]# ls -l /usr/lib/librockchip_*

lrwxrwxrwx 1 root root      20 Apr 17 09:04 /usr/lib/librockchip_mpp.so -> librockchip_mpp.so.1
-rwxr-xr-x 1 root root 5404432 Apr 18 02:18 /usr/lib/librockchip_mpp.so.0
-rwxr-xr-x 1 root root 5470632 Apr 18 01:50 /usr/lib/librockchip_mpp.so.0.org
lrwxrwxrwx 1 root root      20 Apr 17 09:04 /usr/lib/librockchip_mpp.so.1 -> librockchip_mpp.so.0
lrwxrwxrwx 1 root root      20 Apr 17 09:04 /usr/lib/librockchip_vpu.so -> librockchip_vpu.so.1
-rwxr-xr-x 1 root root  183000 Apr 18 01:56 /usr/lib/librockchip_vpu.so.0
-rwxr-xr-x 1 root root  193896 Apr 18 01:54 /usr/lib/librockchip_vpu.so.0.org
lrwxrwxrwx 1 root root      20 Apr 17 09:04 /usr/lib/librockchip_vpu.so.1 -> librockchip_vpu.so.0

(3) mpi_dec_test sanity check with replaced librockchip_mpp.so.0 which generated from latest MPP source code

rockchip-linux-mpp/out/arm64-v8a/test]# ./mpi_dec_test -i /vdi/video/h264.bin -o /vdi/video/te
st.yuv -w 320 -h 240 -t 7
mpp[29903]: mpp_opt: setup:real node 18:22 info 11:11
mpp[29903]: mpi_dec_utils: input file /vdi/video/h264.bin size 94815
mpp[29903]: mpi_dec_utils: cmd parse result:
mpp[29903]: mpi_dec_utils: input  file name: /vdi/video/h264.bin
mpp[29903]: mpi_dec_utils: output file name: /vdi/video/test.yuv
mpp[29903]: mpi_dec_utils: width      :  320
mpp[29903]: mpi_dec_utils: height     :  240
mpp[29903]: mpi_dec_utils: type       :    7
mpp[29903]: mpi_dec_utils: max frames :    0
mpp[29903]: mpi_dec_test: mpi_dec_test start
mpp[29903]: mpp_info: mpp version: 22400055 author: Herman Chen   2022-02-24 [mpi_enc_utils]: Fix opt node count error
mpp[29903]: mpi_dec_test: 0x26111440 mpi_dec_test decoder test start w 320 h 240 type 7
mpp[29903]: mpp_rt: NOT found ion allocator
mpp[29903]: mpp_rt: found drm allocator
mpp[29903]: mpi_dec_test: 0x26111440 decode_get_frame get info changed found
mpp[29903]: mpi_dec_test: 0x26111440 decoder require buffer w:h [320:240] stride [320:240] buf_size 153600
mpp[29903]: mpp_serivce: mpp_service_cmd_send ioctl MPP_IOC_CFG_V1 failed ret -1 errno 12 Cannot allocate memory
mpp[29903]: hal_h264d_vdpu34x: vdpu34x_h264d_start send cmd failed 12
mpp[29903]: mpp_serivce: mpp_service_cmd_poll ioctl MPP_IOC_CFG_V1 failed ret -1 errno 5 Input/output error
mpp[29903]: hal_h264d_vdpu34x: vdpu34x_h264d_wait poll cmd failed 5
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 0 err 1 discard 0
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 1 err 0 discard 1
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 2 err 1 discard 0
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 3 err 0 discard 1
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 4 err 1 discard 0
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 5 err 0 discard 1
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 6 err 1 discard 0
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 7 err 0 discard 1
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 8 err 1 discard 0
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 9 err 0 discard 1
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 10 err 1 discard 0
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 11 err 0 discard 1
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 12 err 1 discard 0
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 13 err 0 discard 1
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 14 err 1 discard 0
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 15 err 0 discard 1
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 16 err 1 discard 0
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 17 err 0 discard 1
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 18 err 1 discard 0
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 19 err 0 discard 1
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 20 err 1 discard 0
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 21 err 0 discard 1
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 22 err 1 discard 0
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 23 err 0 discard 1
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 24 err 1 discard 0
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 25 err 0 discard 1
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 26 err 1 discard 0
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 27 err 0 discard 1
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 28 err 1 discard 0
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 29 err 0 discard 1
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 30 err 1 discard 0
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 31 err 0 discard 1
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 32 err 1 discard 0
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 33 err 0 discard 1
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 34 err 1 discard 0
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 35 err 0 discard 1
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 36 err 1 discard 0
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 37 err 0 discard 1
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 38 err 1 discard 0
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 39 err 0 discard 1
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 40 err 1 discard 0
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 41 err 0 discard 1
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 42 err 1 discard 0
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 43 err 0 discard 1
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 44 err 1 discard 0
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 45 err 0 discard 1
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 46 err 1 discard 0
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 47 err 0 discard 1
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 48 err 1 discard 0
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 49 err 0 discard 1
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 50 err 1 discard 0
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 51 err 0 discard 1
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 52 err 1 discard 0
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 53 err 0 discard 1
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 54 err 1 discard 0
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 55 err 0 discard 1
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 56 err 1 discard 0
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 57 err 0 discard 1
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 58 err 1 discard 0
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 59 err 0 discard 1
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 60 err 1 discard 0
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 61 err 0 discard 1
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 62 err 1 discard 0
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 63 err 0 discard 1
mpp[29903]: mpp_serivce: mpp_service_cmd_send ioctl MPP_IOC_CFG_V1 failed ret -1 errno 12 Cannot allocate memory
mpp[29903]: hal_h264d_vdpu34x: vdpu34x_h264d_start send cmd failed 12
mpp[29903]: mpp_serivce: mpp_service_cmd_poll ioctl MPP_IOC_CFG_V1 failed ret -1 errno 5 Input/output error
mpp[29903]: hal_h264d_vdpu34x: vdpu34x_h264d_wait poll cmd failed 5
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 64 err 1 discard 0
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 65 err 0 discard 1
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 66 err 1 discard 0
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 67 err 0 discard 1
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 68 err 1 discard 0
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 69 err 0 discard 1
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 70 err 1 discard 0
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 71 err 0 discard 1
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 72 err 1 discard 0
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 73 err 0 discard 1
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 74 err 1 discard 0
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 75 err 0 discard 1
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 76 err 1 discard 0
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 77 err 0 discard 1
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 78 err 1 discard 0
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 79 err 0 discard 1
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 80 err 1 discard 0
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 81 err 0 discard 1
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 82 err 1 discard 0
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 83 err 0 discard 1
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 84 err 1 discard 0
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 85 err 0 discard 1
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 86 err 1 discard 0
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 87 err 0 discard 1
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 88 err 1 discard 0
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 89 err 0 discard 1
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 90 err 1 discard 0
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 91 err 0 discard 1
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 92 err 1 discard 0
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 93 err 0 discard 1
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 94 err 1 discard 0
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 95 err 0 discard 1
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 96 err 1 discard 0
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 97 err 0 discard 1
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 98 err 1 discard 0
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 99 err 0 discard 1
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 100 err 1 discard 0
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 101 err 0 discard 1
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 102 err 1 discard 0
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 103 err 0 discard 1
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 104 err 1 discard 0
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 105 err 0 discard 1
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 106 err 1 discard 0
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 107 err 0 discard 1
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 108 err 1 discard 0
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 109 err 0 discard 1
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 110 err 1 discard 0
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 111 err 0 discard 1
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 112 err 1 discard 0
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 113 err 0 discard 1
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 114 err 1 discard 0
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 115 err 0 discard 1
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 116 err 1 discard 0
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 117 err 0 discard 1
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 118 err 1 discard 0
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 119 err 0 discard 1
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 120 err 1 discard 0
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 121 err 0 discard 1
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 122 err 1 discard 0
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 123 err 0 discard 1
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 124 err 1 discard 0
mpp[29903]: mpi_dec_test: 0x26111440 found last packet
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 125 err 0 discard 1
mpp[29903]: mpp_serivce: mpp_service_cmd_send ioctl MPP_IOC_CFG_V1 failed ret -1 errno 12 Cannot allocate memory
mpp[29903]: hal_h264d_vdpu34x: vdpu34x_h264d_start send cmd failed 12
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 126 err 1 discard 0
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 127 err 0 discard 1
mpp[29903]: mpp_serivce: mpp_service_cmd_poll ioctl MPP_IOC_CFG_V1 failed ret -1 errno 5 Input/output error
mpp[29903]: hal_h264d_vdpu34x: vdpu34x_h264d_wait poll cmd failed 5
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 128 err 1 discard 0
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 129 err 0 discard 1
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 130 err 1 discard 0
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 131 err 0 discard 1
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 132 err 1 discard 0
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 133 err 0 discard 1
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 134 err 1 discard 0
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 135 err 0 discard 1
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 136 err 1 discard 0
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 137 err 0 discard 1
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 138 err 1 discard 0
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 139 err 0 discard 1
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 140 err 1 discard 0
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 141 err 0 discard 1
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 142 err 1 discard 0
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 143 err 0 discard 1
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 144 err 1 discard 0
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 145 err 0 discard 1
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 146 err 1 discard 0
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 147 err 0 discard 1
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 148 err 1 discard 0
mpp[29903]: mpi_dec_test: 0x26111440 decode get frame 149 err 1 discard 0
mpp[29903]: mpi_dec_test: 0x26111440 found last packet
mpp[29903]: mpi_dec_test: decode 150 frames time 6404 ms delay 2100 ms fps 23.42
mpp[29903]: mpi_dec_test: test success max memory 1.03 MB

Help wanted

(1)pls help to clarify why this issue happened; (2)should I use the latest MPP source code for the product? (3)why /dev/vpu_service was not founded on RK3568 board?

HermanChen commented 2 years ago

(3) /dev/vpu_service is the old device used before kernel 3.10. It is not used on kernel 4.4 and later. (2) The ubunut code may need some patches? (1) Can you add some log to trace the initial process or strace the check the drm buffer open / close process?

zhouwg commented 2 years ago

@HermanChen , thanks your comments and help.

mpi_dec_test sanity check with original librockchip_mpp.so:

[root@RK356X:/vdi/vendor/rk3568/rockchip-linux-mpp/out/arm64-v8a/test]# strace mpi_dec_test -i /vdi/video/h264.bin -o /vdi/
video/test.yuv -w 320 -h 240 -t 7
execve("/usr/bin/mpi_dec_test", ["mpi_dec_test", "-i", "/vdi/video/h264.bin", "-o", "/vdi/video/test.yuv", "-w", "320", "-h", "240", "-t", "7"], 0x7fce330650 /* 20 vars */) = 0
brk(NULL)                               = 0x13a7c000
faccessat(AT_FDCWD, "/etc/ld.so.preload", R_OK) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=33734, ...}) = 0
mmap(NULL, 33734, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7fbcb73000
close(3)                                = 0
openat(AT_FDCWD, "/usr/lib/librockchip_mpp.so.1", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0\267\0\1\0\0\0\2400\3\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=5470632, ...}) = 0
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7fbcb71000
mmap(NULL, 2065528, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7fbc956000
mprotect(0x7fbcb2c000, 65536, PROT_NONE) = 0
mmap(0x7fbcb3c000, 73728, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1d6000) = 0x7fbcb3c000
mmap(0x7fbcb4e000, 1144, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7fbcb4e000
close(3)                                = 0
openat(AT_FDCWD, "/lib/libpthread.so.0", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0\267\0\1\0\0\0 d\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=2813968, ...}) = 0
mmap(NULL, 185360, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7fbc928000
mprotect(0x7fbc941000, 61440, PROT_NONE) = 0
mmap(0x7fbc950000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x18000) = 0x7fbc950000
mmap(0x7fbc952000, 13328, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7fbc952000
close(3)                                = 0
openat(AT_FDCWD, "/usr/lib/libstdc++.so.6", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0\267\0\1\0\0\0\360-\f\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=10190336, ...}) = 0
mmap(NULL, 2359480, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7fbc6e7000
mprotect(0x7fbc905000, 61440, PROT_NONE) = 0
mmap(0x7fbc914000, 65536, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x21d000) = 0x7fbc914000
mmap(0x7fbc924000, 12472, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7fbc924000
close(3)                                = 0
openat(AT_FDCWD, "/lib/libm.so.6", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0\267\0\1\0\0\0\320\267\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=2912056, ...}) = 0
mmap(NULL, 712816, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7fbc638000
mprotect(0x7fbc6d6000, 61440, PROT_NONE) = 0
mmap(0x7fbc6e5000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x9d000) = 0x7fbc6e5000
close(3)                                = 0
openat(AT_FDCWD, "/lib/libgcc_s.so.1", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0\267\0\1\0\0\0 .\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=538192, ...}) = 0
mmap(NULL, 214120, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7fbc603000
mprotect(0x7fbc627000, 61440, PROT_NONE) = 0
mmap(0x7fbc636000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x23000) = 0x7fbc636000
close(3)                                = 0
openat(AT_FDCWD, "/lib/libc.so.6", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0\267\0\1\0\0\0000\17\2\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=17813704, ...}) = 0
mmap(NULL, 1491048, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7fbc496000
mprotect(0x7fbc5e9000, 65536, PROT_NONE) = 0
mmap(0x7fbc5f9000, 24576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x153000) = 0x7fbc5f9000
mmap(0x7fbc5ff000, 12392, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7fbc5ff000
close(3)                                = 0
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7fbcb6f000
mprotect(0x7fbc5f9000, 16384, PROT_READ) = 0
mprotect(0x7fbc636000, 4096, PROT_READ) = 0
mprotect(0x7fbc6e5000, 4096, PROT_READ) = 0
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7fbc494000
mprotect(0x7fbc914000, 45056, PROT_READ) = 0
mprotect(0x7fbc950000, 4096, PROT_READ) = 0
mmap(NULL, 12288, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7fbc491000
mprotect(0x7fbcb3c000, 12288, PROT_READ) = 0
mprotect(0x41d000, 4096, PROT_READ)     = 0
mprotect(0x7fbcb7e000, 4096, PROT_READ) = 0
munmap(0x7fbcb73000, 33734)             = 0
set_tid_address(0x7fbcb70010)           = 770
set_robust_list(0x7fbcb70020, 24)       = 0
rt_sigaction(SIGRTMIN, {sa_handler=0x7fbc92def0, sa_mask=[], sa_flags=SA_SIGINFO}, NULL, 8) = 0
rt_sigaction(SIGRT_1, {sa_handler=0x7fbc92dfa0, sa_mask=[], sa_flags=SA_RESTART|SA_SIGINFO}, NULL, 8) = 0
rt_sigprocmask(SIG_UNBLOCK, [RTMIN RT_1], NULL, 8) = 0
prlimit64(0, RLIMIT_STACK, NULL, {rlim_cur=8192*1024, rlim_max=RLIM64_INFINITY}) = 0
brk(NULL)                               = 0x13a7c000
brk(0x13aae000)                         = 0x13aae000
openat(AT_FDCWD, "/vdi/video/h264.bin", O_RDONLY) = 3
fstat(3, {st_mode=S_IFREG|0775, st_size=94815, ...}) = 0
fstat(3, {st_mode=S_IFREG|0775, st_size=94815, ...}) = 0
lseek(3, 90112, SEEK_SET)               = 90112
read(3, "O\277\377\377\377\223\377\205?\377\343\377\377y\377\311\211\377\377\377\377P\233\1\0\0\0\0\0\1\6\5"..., 4703) = 4703
lseek(3, 0, SEEK_SET)                   = 0
mmap(NULL, 8392704, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_STACK, -1, 0) = 0x7fbbc90000
mprotect(0x7fbbc91000, 8388608, PROT_READ|PROT_WRITE) = 0
clone(child_stack=0x7fbc48fad0, flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|CLONE_THREAD|CLONE_SYSVSEM|CLONE_SETTLS|CLONE_PARENT_SETTID|CLONE_CHILD_CLEARTID, parent_tidptr=0x7fbc4902a0, tls=0x7fbc4908d0, child_tidptr=0x7fbc4902a0) = 771
openat(AT_FDCWD, "/etc/localtime", O_RDONLY|O_CLOEXEC) = 4
fstat(4, {st_mode=S_IFREG|0644, st_size=127, ...}) = 0
fstat(4, {st_mode=S_IFREG|0644, st_size=127, ...}) = 0
read(4, "TZif2\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\1\0\0\0\1\0\0\0\0"..., 4096) = 127
lseek(4, -71, SEEK_CUR)                 = 56
read(4, "TZif2\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\1\0\0\0\1\0\0\0\0"..., 4096) = 71
close(4)                                = 0
getpid()                                = 770
writev(2, [{iov_base="mpp[770]: mpi_dec_utils: input f"..., iov_len=67}], 1mpp[770]: mpi_dec_utils: input file /vdi/video/h264.bin size 94815
) = 67
socket(AF_UNIX, SOCK_DGRAM|SOCK_CLOEXEC, 0) = 4
connect(4, {sa_family=AF_UNIX, sun_path="/dev/log"}, 110) = 0
sendto(4, "<14>Apr 18 10:02:48 mpp[770]: mp"..., 87, MSG_NOSIGNAL, NULL, 0) = 87
getpid()                                = 770
writev(2, [{iov_base="mpp[770]: mpi_dec_utils: cmd par"..., iov_len=43}], 1mpp[770]: mpi_dec_utils: cmd parse result:
) = 43
sendto(4, "<14>Apr 18 10:02:48 mpp[770]: mp"..., 63, MSG_NOSIGNAL, NULL, 0) = 63
getpid()                                = 770
writev(2, [{iov_base="mpp[770]: mpi_dec_utils: input  "..., iov_len=63}], 1mpp[770]: mpi_dec_utils: input  file name: /vdi/video/h264.bin
) = 63
sendto(4, "<14>Apr 18 10:02:48 mpp[770]: mp"..., 83, MSG_NOSIGNAL, NULL, 0) = 83
getpid()                                = 770
writev(2, [{iov_base="mpp[770]: mpi_dec_utils: output "..., iov_len=63}], 1mpp[770]: mpi_dec_utils: output file name: /vdi/video/test.yuv
) = 63
sendto(4, "<14>Apr 18 10:02:48 mpp[770]: mp"..., 83, MSG_NOSIGNAL, NULL, 0) = 83
getpid()                                = 770
writev(2, [{iov_base="mpp[770]: mpi_dec_utils: width  "..., iov_len=43}], 1mpp[770]: mpi_dec_utils: width      :  320
) = 43
sendto(4, "<14>Apr 18 10:02:48 mpp[770]: mp"..., 63, MSG_NOSIGNAL, NULL, 0) = 63
getpid()                                = 770
writev(2, [{iov_base="mpp[770]: mpi_dec_utils: height "..., iov_len=43}], 1mpp[770]: mpi_dec_utils: height     :  240
) = 43
sendto(4, "<14>Apr 18 10:02:48 mpp[770]: mp"..., 63, MSG_NOSIGNAL, NULL, 0) = 63
getpid()                                = 770
writev(2, [{iov_base="mpp[770]: mpi_dec_utils: type   "..., iov_len=43}], 1mpp[770]: mpi_dec_utils: type       :    7
) = 43
sendto(4, "<14>Apr 18 10:02:48 mpp[770]: mp"..., 63, MSG_NOSIGNAL, NULL, 0) = 63
getpid()                                = 770
writev(2, [{iov_base="mpp[770]: mpi_dec_utils: max fra"..., iov_len=43}], 1mpp[770]: mpi_dec_utils: max frames :    0
) = 43
sendto(4, "<14>Apr 18 10:02:48 mpp[770]: mp"..., 63, MSG_NOSIGNAL, NULL, 0) = 63
getpid()                                = 770
writev(2, [{iov_base="mpp[770]: mpi_dec_test: mpi_dec_"..., iov_len=43}], 1mpp[770]: mpi_dec_test: mpi_dec_test start
) = 43
sendto(4, "<14>Apr 18 10:02:48 mpp[770]: mp"..., 63, MSG_NOSIGNAL, NULL, 0) = 63
openat(AT_FDCWD, "/vdi/video/test.yuv", O_RDWR|O_CREAT|O_TRUNC, 0666) = 5
getpid()                                = 770
writev(2, [{iov_base="mpp[770]: mpp_info: mpp version:"..., iov_len=74}], 1mpp[770]: mpp_info: mpp version: unknown mpp version for missing VCS info
) = 74
sendto(4, "<14>Apr 18 10:02:48 mpp[770]: mp"..., 94, MSG_NOSIGNAL, NULL, 0) = 94
getpid()                                = 770
writev(2, [{iov_base="mpp[770]: mpi_dec_test: 0x13a928"..., iov_len=86}], 1mpp[770]: mpi_dec_test: 0x13a92820 mpi_dec_test decoder test start w 320 h 240 type 7
) = 86
sendto(4, "<14>Apr 18 10:02:48 mpp[770]: mp"..., 106, MSG_NOSIGNAL, NULL, 0) = 106
openat(AT_FDCWD, "/proc/device-tree/compatible", O_RDONLY) = 6
read(6, "rockchip,rk3568-evb1-ddr4-v10\0ro"..., 127) = 46
close(6)                                = 0
faccessat(AT_FDCWD, "/dev/ion", R_OK|W_OK) = -1 ENOENT (No such file or directory)
getpid()                                = 770
writev(2, [{iov_base="mpp[770]: mpp_rt: NOT found ion "..., iov_len=42}], 1mpp[770]: mpp_rt: NOT found ion allocator
) = 42
sendto(4, "<14>Apr 18 10:02:48 mpp[770]: mp"..., 62, MSG_NOSIGNAL, NULL, 0) = 62
faccessat(AT_FDCWD, "/dev/dri/card0", R_OK|W_OK) = 0
getpid()                                = 770
writev(2, [{iov_base="mpp[770]: mpp_rt: found drm allo"..., iov_len=38}], 1mpp[770]: mpp_rt: found drm allocator
) = 38
sendto(4, "<14>Apr 18 10:02:48 mpp[770]: mp"..., 58, MSG_NOSIGNAL, NULL, 0) = 58
faccessat(AT_FDCWD, "/dev/mpp_service", R_OK|W_OK) = 0
openat(AT_FDCWD, "/dev/dri/card0", O_RDWR|O_CLOEXEC) = 6
openat(AT_FDCWD, "/dev/dri/card0", O_RDWR|O_CLOEXEC) = 7
faccessat(AT_FDCWD, "/dev/mpp_service", R_OK|W_OK) = 0
openat(AT_FDCWD, "/dev/mpp_service", O_RDWR|O_CLOEXEC) = 8
ioctl(8, V4L2_SUBDEV_IR_TX_NOTIFY, 0x7ffd860198) = 0
faccessat(AT_FDCWD, "/proc/mpp_service/supports-cmd", F_OK) = 0
ioctl(8, V4L2_SUBDEV_IR_TX_NOTIFY, 0x7ffd8601f8) = 0
ioctl(8, V4L2_SUBDEV_IR_TX_NOTIFY, 0x7ffd8601f8) = 0
ioctl(8, V4L2_SUBDEV_IR_TX_NOTIFY, 0x7ffd8601f8) = 0
ioctl(8, V4L2_SUBDEV_IR_TX_NOTIFY, 0x7ffd8601f8) = 0
ioctl(8, V4L2_SUBDEV_IR_TX_NOTIFY, 0x7ffd8601f8) = 0
close(8)                                = 0
openat(AT_FDCWD, "/dev/mpp_service", O_RDWR|O_CLOEXEC) = 8
ioctl(8, V4L2_SUBDEV_IR_TX_NOTIFY, 0x7ffd860198) = 0
ioctl(8, V4L2_SUBDEV_IR_TX_NOTIFY, 0x7ffd860198) = 0
close(8)                                = 0
openat(AT_FDCWD, "/dev/mpp_service", O_RDWR|O_CLOEXEC) = 8
ioctl(8, V4L2_SUBDEV_IR_TX_NOTIFY, 0x7ffd860198) = 0
ioctl(8, V4L2_SUBDEV_IR_TX_NOTIFY, 0x7ffd860198) = 0
close(8)                                = 0
openat(AT_FDCWD, "/dev/mpp_service", O_RDWR|O_CLOEXEC) = 8
ioctl(8, V4L2_SUBDEV_IR_TX_NOTIFY, 0x7ffd860198) = 0
ioctl(8, V4L2_SUBDEV_IR_TX_NOTIFY, 0x7ffd860198) = 0
close(8)                                = 0
openat(AT_FDCWD, "/dev/mpp_service", O_RDWR|O_CLOEXEC) = 8
ioctl(8, V4L2_SUBDEV_IR_TX_NOTIFY, 0x7ffd860198) = 0
ioctl(8, V4L2_SUBDEV_IR_TX_NOTIFY, 0x7ffd860198) = 0
close(8)                                = 0
openat(AT_FDCWD, "/dev/mpp_service", O_RDWR|O_CLOEXEC) = 8
ioctl(8, V4L2_SUBDEV_IR_TX_NOTIFY, 0x7ffd860198) = 0
ioctl(8, V4L2_SUBDEV_IR_TX_NOTIFY, 0x7ffd860198) = 0
close(8)                                = 0
openat(AT_FDCWD, "/dev/mpp_service", O_RDWR|O_CLOEXEC) = 8
ioctl(8, V4L2_SUBDEV_IR_TX_NOTIFY, 0x7ffd860198) = 0
ioctl(8, V4L2_SUBDEV_IR_TX_NOTIFY, 0x7ffd860198) = 0
close(8)                                = 0
openat(AT_FDCWD, "/dev/mpp_service", O_RDWR|O_CLOEXEC) = 8
ioctl(8, V4L2_SUBDEV_IR_TX_NOTIFY, 0x7ffd860198) = 0
ioctl(8, V4L2_SUBDEV_IR_TX_NOTIFY, 0x7ffd860198) = 0
close(8)                                = 0
faccessat(AT_FDCWD, "/proc/version", R_OK) = 0
openat(AT_FDCWD, "/proc/version", O_RDONLY) = 8
fstat(8, {st_mode=S_IFREG|0444, st_size=0, ...}) = 0
read(8, "Linux version 4.19.161 (zhjt@ser"..., 1024) = 192
close(8)                                = 0
openat(AT_FDCWD, "/dev/mpp_service", O_RDWR|O_CLOEXEC) = 8
ioctl(8, V4L2_SUBDEV_IR_TX_NOTIFY, 0x7ffd860208) = 0
ioctl(6, DRM_IOCTL_MODE_CREATE_DUMB, 0x7ffd860098) = 0
ioctl(6, DRM_IOCTL_PRIME_HANDLE_TO_FD, 0x7ffd8600b0) = 0
fcntl(9, F_GETFL)                       = 0x2 (flags O_RDWR)
mmap(NULL, 28672, PROT_READ|PROT_WRITE, MAP_SHARED, 9, 0) = 0x7fbcb75000
mmap(NULL, 2101248, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7fbba8f000
mmap(NULL, 1052672, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7fbb98e000
mmap(NULL, 2101248, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7fbb78d000
mmap(NULL, 8392704, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_STACK, -1, 0) = 0x7fbaf8c000
mprotect(0x7fbaf8d000, 8388608, PROT_READ|PROT_WRITE) = 0
clone(child_stack=0x7fbb78bad0, flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|CLONE_THREAD|CLONE_SYSVSEM|CLONE_SETTLS|CLONE_PARENT_SETTID|CLONE_CHILD_CLEARTID, parent_tidptr=0x7fbb78c2a0, tls=0x7fbb78c8d0, child_tidptr=0x7fbb78c2a0) = 772
openat(AT_FDCWD, "/proc/self/task/772/comm", O_RDWR) = 10
write(10, "mpp_dec_parser", 14)         = 14
close(10)                               = 0
mmap(NULL, 8392704, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_STACK, -1, 0) = 0x7fba78b000
mprotect(0x7fba78c000, 8388608, PROT_READ|PROT_WRITE) = 0
clone(child_stack=0x7fbaf8aad0, flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|CLONE_THREAD|CLONE_SYSVSEM|CLONE_SETTLS|CLONE_PARENT_SETTID|CLONE_CHILD_CLEARTID, parent_tidptr=0x7fbaf8b2a0, tls=0x7fbaf8b8d0, child_tidptr=0x7fbaf8b2a0) = 773
openat(AT_FDCWD, "/proc/self/task/773/comm", O_RDWR) = 10
write(10, "mpp_dec_hal", 11)            = 11
close(10)                               = 0
futex(0x13aa68f0, FUTEX_WAKE_PRIVATE, 1) = 1
futex(0x13aa6898, FUTEX_WAKE_PRIVATE, 1) = 1
futex(0x13a94e40, FUTEX_WAKE_PRIVATE, 1) = 1
futex(0x13aa68f4, FUTEX_WAKE_PRIVATE, 1) = 1
futex(0x13aa6898, FUTEX_WAKE_PRIVATE, 1) = 1
futex(0x13a94e40, FUTEX_WAKE_PRIVATE, 1) = 1
mmap(NULL, 8392704, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_STACK, -1, 0) = 0x7fb9f8a000
mprotect(0x7fb9f8b000, 8388608, PROT_READ|PROT_WRITE) = 0
clone(child_stack=0x7fba789ad0, flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|CLONE_THREAD|CLONE_SYSVSEM|CLONE_SETTLS|CLONE_PARENT_SETTID|CLONE_CHILD_CLEARTID, parent_tidptr=0x7fba78a2a0, tls=0x7fba78a8d0, child_tidptr=0x7fba78a2a0) = 774
futex(0x7fba78a2a0, FUTEX_WAIT, 774, NULLmpp[770]: mpi_dec_test: 0x13a92820 decode_get_frame get info changed found
mpp[770]: mpi_dec_test: 0x13a92820 decoder require buffer w:h [320:240] stride [320:240] buf_size 153600
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 0
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 1
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 2
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 3
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 4
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 5
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 6
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 7
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 8
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 9
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 10
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 11
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 12
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 13
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 14
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 15
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 16
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 17
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 18
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 19
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 20
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 21
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 22
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 23
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 24
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 25
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 26
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 27
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 28
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 29
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 30
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 31
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 32
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 33
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 34
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 35
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 36
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 37
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 38
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 39
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 40
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 41
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 42
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 43
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 44
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 45
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 46
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 47
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 48
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 49
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 50
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 51
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 52
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 53
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 54
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 55
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 56
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 57
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 58
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 59
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 60
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 61
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 62
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 63
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 64
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 65
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 66
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 67
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 68
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 69
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 70
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 71
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 72
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 73
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 74
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 75
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 76
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 77
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 78
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 79
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 80
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 81
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 82
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 83
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 84
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 85
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 86
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 87
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 88
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 89
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 90
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 91
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 92
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 93
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 94
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 95
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 96
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 97
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 98
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 99
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 100
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 101
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 102
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 103
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 104
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 105
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 106
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 107
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 108
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 109
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 110
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 111
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 112
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 113
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 114
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 115
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 116
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 117
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 118
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 119
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 120
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 121
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 122
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 123
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 124
mpp[770]: mpi_dec_test: 0x13a92820 found last packet
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 125
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 126
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 127
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 128
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 129
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 130
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 131
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 132
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 133
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 134
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 135
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 136
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 137
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 138
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 139
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 140
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 141
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 142
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 143
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 144
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 145
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 146
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 147
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 148
mpp[770]: mpi_dec_test: 0x13a92820 decode get frame 149
mpp[770]: mpi_dec_test: 0x13a92820 found last packet
mpp[770]: mpi_dec_test: decode 150 frames time 451 ms delay  13 ms fps 332.21
) = 0
futex(0x13aa68f4, FUTEX_WAKE_PRIVATE, 1) = 1
futex(0x13aa6898, FUTEX_WAKE_PRIVATE, 1) = 1
futex(0x13a94ea8, FUTEX_WAIT_BITSET_PRIVATE|FUTEX_CLOCK_REALTIME, 0, NULL, 0xffffffff) = -1 EAGAIN (Resource temporarily unavailable)
futex(0x13aa68f0, FUTEX_WAKE_PRIVATE, 1) = 1
futex(0x13aa6898, FUTEX_WAKE_PRIVATE, 1) = 1
futex(0x7fbb78c2a0, FUTEX_WAIT, 772, NULL) = 0
futex(0x13aa6ab0, FUTEX_WAKE_PRIVATE, 1) = 1
futex(0x13aa6a58, FUTEX_WAKE_PRIVATE, 1) = 1
munmap(0x7fbba8f000, 2101248)           = 0
munmap(0x7fbb98e000, 1052672)           = 0
munmap(0x7fbb78d000, 2101248)           = 0
ioctl(6, DRM_IOCTL_PRIME_FD_TO_HANDLE, 0x7ffd860140) = 0
close(12)                               = 0
ioctl(6, DRM_IOCTL_MODE_DESTROY_DUMB, 0x7ffd860148) = 0
ioctl(6, DRM_IOCTL_PRIME_FD_TO_HANDLE, 0x7ffd860140) = 0
close(15)                               = 0
ioctl(6, DRM_IOCTL_MODE_DESTROY_DUMB, 0x7ffd860148) = 0
ioctl(6, DRM_IOCTL_PRIME_FD_TO_HANDLE, 0x7ffd860140) = 0
close(18)                               = 0
ioctl(6, DRM_IOCTL_MODE_DESTROY_DUMB, 0x7ffd860148) = 0
close(8)                                = 0
ioctl(6, DRM_IOCTL_PRIME_FD_TO_HANDLE, 0x7ffd8601b0) = 0
munmap(0x7fbcb75000, 28672)             = 0
close(9)                                = 0
ioctl(6, DRM_IOCTL_MODE_DESTROY_DUMB, 0x7ffd8601b8) = 0
ioctl(6, DRM_IOCTL_PRIME_FD_TO_HANDLE, 0x7ffd8601b0) = 0
close(13)                               = 0
ioctl(6, DRM_IOCTL_MODE_DESTROY_DUMB, 0x7ffd8601b8) = 0
ioctl(6, DRM_IOCTL_PRIME_FD_TO_HANDLE, 0x7ffd860300) = 0
munmap(0x7fb9acc000, 153600)            = 0
close(20)                               = 0
ioctl(6, DRM_IOCTL_MODE_DESTROY_DUMB, 0x7ffd860308) = 0
ioctl(6, DRM_IOCTL_PRIME_FD_TO_HANDLE, 0x7ffd860300) = 0
munmap(0x7fb9b18000, 153600)            = 0
close(14)                               = 0
ioctl(6, DRM_IOCTL_MODE_DESTROY_DUMB, 0x7ffd860308) = 0
ioctl(6, DRM_IOCTL_PRIME_FD_TO_HANDLE, 0x7ffd860300) = 0
munmap(0x7fb9af2000, 153600)            = 0
close(19)                               = 0
ioctl(6, DRM_IOCTL_MODE_DESTROY_DUMB, 0x7ffd860308) = 0
ioctl(6, DRM_IOCTL_PRIME_FD_TO_HANDLE, 0x7ffd860300) = 0
munmap(0x7fb9b3e000, 153600)            = 0
close(17)                               = 0
ioctl(6, DRM_IOCTL_MODE_DESTROY_DUMB, 0x7ffd860308) = 0
ioctl(6, DRM_IOCTL_PRIME_FD_TO_HANDLE, 0x7ffd860300) = 0
munmap(0x7fb9b64000, 153600)            = 0
close(11)                               = 0
ioctl(6, DRM_IOCTL_MODE_DESTROY_DUMB, 0x7ffd860308) = 0
ioctl(6, DRM_IOCTL_PRIME_FD_TO_HANDLE, 0x7ffd860300) = 0
munmap(0x7fb9a80000, 153600)            = 0
close(22)                               = 0
ioctl(6, DRM_IOCTL_MODE_DESTROY_DUMB, 0x7ffd860308) = 0
ioctl(6, DRM_IOCTL_PRIME_FD_TO_HANDLE, 0x7ffd860300) = 0
munmap(0x7fb9aa6000, 153600)            = 0
close(21)                               = 0
ioctl(6, DRM_IOCTL_MODE_DESTROY_DUMB, 0x7ffd860308) = 0
write(5, "\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200"..., 3072) = 3072
close(5)                                = 0
getpid()                                = 770
writev(2, [{iov_base="mpp[770]: mpi_dec_test: test suc"..., iov_len=56}], 1mpp[770]: mpi_dec_test: test success max memory 1.03 MB
) = 56
sendto(4, "<14>Apr 18 10:02:50 mpp[770]: mp"..., 76, MSG_NOSIGNAL, NULL, 0) = 76
close(3)                                = 0
close(6)                                = 0
close(7)                                = 0
close(4)                                = 0
exit_group(0)                           = ?
+++ exited with 0 +++

mpi_dec_test sanity check with librockchip_mpp.so which generated from latest MPP source code:

[root@RK356X:/vdi/vendor/rk3568/rockchip-linux-mpp/out/arm64-v8a/test]# strace mpi_dec_test -i /vdi/video/h264.bin -o /vdi/
video/test.yuv -w 320 -h 240 -t 7
execve("/usr/bin/mpi_dec_test", ["mpi_dec_test", "-i", "/vdi/video/h264.bin", "-o", "/vdi/video/test.yuv", "-w", "320", "-h", "240", "-t", "7"], 0x7fc54671a0 /* 20 vars */) = 0
brk(NULL)                               = 0x322a7000
faccessat(AT_FDCWD, "/etc/ld.so.preload", R_OK) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=33734, ...}) = 0
mmap(NULL, 33734, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7fa3275000
close(3)                                = 0
openat(AT_FDCWD, "/usr/lib/librockchip_mpp.so.1", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0\267\0\1\0\0\0\260\300\2\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=5408496, ...}) = 0
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7fa3273000
mmap(NULL, 2112952, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7fa304d000
mprotect(0x7fa322e000, 65536, PROT_NONE) = 0
mmap(0x7fa323e000, 73728, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1e1000) = 0x7fa323e000
mmap(0x7fa3250000, 3512, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7fa3250000
close(3)                                = 0
openat(AT_FDCWD, "/lib/libpthread.so.0", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0\267\0\1\0\0\0 d\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=2813968, ...}) = 0
mmap(NULL, 185360, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7fa301f000
mprotect(0x7fa3038000, 61440, PROT_NONE) = 0
mmap(0x7fa3047000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x18000) = 0x7fa3047000
mmap(0x7fa3049000, 13328, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7fa3049000
close(3)                                = 0
openat(AT_FDCWD, "/usr/lib/libstdc++.so.6", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0\267\0\1\0\0\0\360-\f\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=10190336, ...}) = 0
mmap(NULL, 2359480, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7fa2dde000
mprotect(0x7fa2ffc000, 61440, PROT_NONE) = 0
mmap(0x7fa300b000, 65536, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x21d000) = 0x7fa300b000
mmap(0x7fa301b000, 12472, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7fa301b000
close(3)                                = 0
openat(AT_FDCWD, "/lib/libm.so.6", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0\267\0\1\0\0\0\320\267\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=2912056, ...}) = 0
mmap(NULL, 712816, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7fa2d2f000
mprotect(0x7fa2dcd000, 61440, PROT_NONE) = 0
mmap(0x7fa2ddc000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x9d000) = 0x7fa2ddc000
close(3)                                = 0
openat(AT_FDCWD, "/lib/libgcc_s.so.1", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0\267\0\1\0\0\0 .\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=538192, ...}) = 0
mmap(NULL, 214120, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7fa2cfa000
mprotect(0x7fa2d1e000, 61440, PROT_NONE) = 0
mmap(0x7fa2d2d000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x23000) = 0x7fa2d2d000
close(3)                                = 0
openat(AT_FDCWD, "/lib/libc.so.6", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0\267\0\1\0\0\0000\17\2\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=17813704, ...}) = 0
mmap(NULL, 1491048, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7fa2b8d000
mprotect(0x7fa2ce0000, 65536, PROT_NONE) = 0
mmap(0x7fa2cf0000, 24576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x153000) = 0x7fa2cf0000
mmap(0x7fa2cf6000, 12392, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7fa2cf6000
close(3)                                = 0
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7fa3271000
mprotect(0x7fa2cf0000, 16384, PROT_READ) = 0
mprotect(0x7fa2d2d000, 4096, PROT_READ) = 0
mprotect(0x7fa2ddc000, 4096, PROT_READ) = 0
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7fa2b8b000
mprotect(0x7fa300b000, 45056, PROT_READ) = 0
mprotect(0x7fa3047000, 4096, PROT_READ) = 0
mmap(NULL, 12288, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7fa2b88000
mprotect(0x7fa323e000, 12288, PROT_READ) = 0
mprotect(0x41d000, 4096, PROT_READ)     = 0
mprotect(0x7fa3280000, 4096, PROT_READ) = 0
munmap(0x7fa3275000, 33734)             = 0
set_tid_address(0x7fa3271ff0)           = 790
set_robust_list(0x7fa3272000, 24)       = 0
rt_sigaction(SIGRTMIN, {sa_handler=0x7fa3024ef0, sa_mask=[], sa_flags=SA_SIGINFO}, NULL, 8) = 0
rt_sigaction(SIGRT_1, {sa_handler=0x7fa3024fa0, sa_mask=[], sa_flags=SA_RESTART|SA_SIGINFO}, NULL, 8) = 0
rt_sigprocmask(SIG_UNBLOCK, [RTMIN RT_1], NULL, 8) = 0
prlimit64(0, RLIMIT_STACK, NULL, {rlim_cur=8192*1024, rlim_max=RLIM64_INFINITY}) = 0
brk(NULL)                               = 0x322a7000
brk(0x322d9000)                         = 0x322d9000
openat(AT_FDCWD, "/vdi/video/h264.bin", O_RDONLY) = 3
fstat(3, {st_mode=S_IFREG|0775, st_size=94815, ...}) = 0
fstat(3, {st_mode=S_IFREG|0775, st_size=94815, ...}) = 0
lseek(3, 90112, SEEK_SET)               = 90112
read(3, "O\277\377\377\377\223\377\205?\377\343\377\377y\377\311\211\377\377\377\377P\233\1\0\0\0\0\0\1\6\5"..., 4703) = 4703
lseek(3, 0, SEEK_SET)                   = 0
mmap(NULL, 8392704, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_STACK, -1, 0) = 0x7fa2387000
mprotect(0x7fa2388000, 8388608, PROT_READ|PROT_WRITE) = 0
clone(child_stack=0x7fa2b86ad0, flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|CLONE_THREAD|CLONE_SYSVSEM|CLONE_SETTLS|CLONE_PARENT_SETTID|CLONE_CHILD_CLEARTID, parent_tidptr=0x7fa2b872a0, tls=0x7fa2b878d0, child_tidptr=0x7fa2b872a0) = 791
openat(AT_FDCWD, "/etc/localtime", O_RDONLY|O_CLOEXEC) = 4
fstat(4, {st_mode=S_IFREG|0644, st_size=127, ...}) = 0
fstat(4, {st_mode=S_IFREG|0644, st_size=127, ...}) = 0
read(4, "TZif2\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\1\0\0\0\1\0\0\0\0"..., 4096) = 127
lseek(4, -71, SEEK_CUR)                 = 56
read(4, "TZif2\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\1\0\0\0\1\0\0\0\0"..., 4096) = 71
close(4)                                = 0
getpid()                                = 790
writev(2, [{iov_base="mpp[790]: mpi_dec_utils: input f"..., iov_len=67}], 1mpp[790]: mpi_dec_utils: input file /vdi/video/h264.bin size 94815
) = 67
socket(AF_UNIX, SOCK_DGRAM|SOCK_CLOEXEC, 0) = 4
connect(4, {sa_family=AF_UNIX, sun_path="/dev/log"}, 110) = 0
sendto(4, "<14>Apr 18 10:07:34 mpp[790]: mp"..., 87, MSG_NOSIGNAL, NULL, 0) = 87
getpid()                                = 790
writev(2, [{iov_base="mpp[790]: mpi_dec_utils: cmd par"..., iov_len=43}], 1mpp[790]: mpi_dec_utils: cmd parse result:
) = 43
sendto(4, "<14>Apr 18 10:07:34 mpp[790]: mp"..., 63, MSG_NOSIGNAL, NULL, 0) = 63
getpid()                                = 790
writev(2, [{iov_base="mpp[790]: mpi_dec_utils: input  "..., iov_len=63}], 1mpp[790]: mpi_dec_utils: input  file name: /vdi/video/h264.bin
) = 63
sendto(4, "<14>Apr 18 10:07:34 mpp[790]: mp"..., 83, MSG_NOSIGNAL, NULL, 0) = 83
getpid()                                = 790
writev(2, [{iov_base="mpp[790]: mpi_dec_utils: output "..., iov_len=63}], 1mpp[790]: mpi_dec_utils: output file name: /vdi/video/test.yuv
) = 63
sendto(4, "<14>Apr 18 10:07:34 mpp[790]: mp"..., 83, MSG_NOSIGNAL, NULL, 0) = 83
getpid()                                = 790
writev(2, [{iov_base="mpp[790]: mpi_dec_utils: width  "..., iov_len=43}], 1mpp[790]: mpi_dec_utils: width      :  320
) = 43
sendto(4, "<14>Apr 18 10:07:34 mpp[790]: mp"..., 63, MSG_NOSIGNAL, NULL, 0) = 63
getpid()                                = 790
writev(2, [{iov_base="mpp[790]: mpi_dec_utils: height "..., iov_len=43}], 1mpp[790]: mpi_dec_utils: height     :  240
) = 43
sendto(4, "<14>Apr 18 10:07:34 mpp[790]: mp"..., 63, MSG_NOSIGNAL, NULL, 0) = 63
getpid()                                = 790
writev(2, [{iov_base="mpp[790]: mpi_dec_utils: type   "..., iov_len=43}], 1mpp[790]: mpi_dec_utils: type       :    7
) = 43
sendto(4, "<14>Apr 18 10:07:34 mpp[790]: mp"..., 63, MSG_NOSIGNAL, NULL, 0) = 63
getpid()                                = 790
writev(2, [{iov_base="mpp[790]: mpi_dec_utils: max fra"..., iov_len=43}], 1mpp[790]: mpi_dec_utils: max frames :    0
) = 43
sendto(4, "<14>Apr 18 10:07:34 mpp[790]: mp"..., 63, MSG_NOSIGNAL, NULL, 0) = 63
getpid()                                = 790
writev(2, [{iov_base="mpp[790]: mpi_dec_test: mpi_dec_"..., iov_len=43}], 1mpp[790]: mpi_dec_test: mpi_dec_test start
) = 43
sendto(4, "<14>Apr 18 10:07:34 mpp[790]: mp"..., 63, MSG_NOSIGNAL, NULL, 0) = 63
openat(AT_FDCWD, "/vdi/video/test.yuv", O_RDWR|O_CREAT|O_TRUNC, 0666) = 5
getpid()                                = 790
writev(2, [{iov_base="mpp[790]: mpp_info: mpp version:"..., iov_len=117}], 1mpp[790]: mpp_info: mpp version: 22400055 author: Herman Chen   2022-02-24 [mpi_enc_utils]: Fix opt node count error
) = 117
sendto(4, "<14>Apr 18 10:07:34 mpp[790]: mp"..., 137, MSG_NOSIGNAL, NULL, 0) = 137
getpid()                                = 790
writev(2, [{iov_base="mpp[790]: mpi_dec_test: 0x322bd8"..., iov_len=86}], 1mpp[790]: mpi_dec_test: 0x322bd820 mpi_dec_test decoder test start w 320 h 240 type 7
) = 86
sendto(4, "<14>Apr 18 10:07:34 mpp[790]: mp"..., 106, MSG_NOSIGNAL, NULL, 0) = 106
openat(AT_FDCWD, "/proc/device-tree/compatible", O_RDONLY) = 6
read(6, "rockchip,rk3568-evb1-ddr4-v10\0ro"..., 127) = 46
close(6)                                = 0
faccessat(AT_FDCWD, "/dev/ion", R_OK|W_OK) = -1 ENOENT (No such file or directory)
getpid()                                = 790
writev(2, [{iov_base="mpp[790]: mpp_rt: NOT found ion "..., iov_len=42}], 1mpp[790]: mpp_rt: NOT found ion allocator
) = 42
sendto(4, "<14>Apr 18 10:07:34 mpp[790]: mp"..., 62, MSG_NOSIGNAL, NULL, 0) = 62
faccessat(AT_FDCWD, "/dev/dri/card0", R_OK|W_OK) = 0
getpid()                                = 790
writev(2, [{iov_base="mpp[790]: mpp_rt: found drm allo"..., iov_len=38}], 1mpp[790]: mpp_rt: found drm allocator
) = 38
sendto(4, "<14>Apr 18 10:07:34 mpp[790]: mp"..., 58, MSG_NOSIGNAL, NULL, 0) = 58
faccessat(AT_FDCWD, "/dev/mpp_service", R_OK|W_OK) = 0
faccessat(AT_FDCWD, "/dev/mpp_service", R_OK|W_OK) = 0
openat(AT_FDCWD, "/dev/mpp_service", O_RDWR|O_CLOEXEC) = 6
ioctl(6, V4L2_SUBDEV_IR_TX_NOTIFY, 0x7fe4f1a5c8) = 0
faccessat(AT_FDCWD, "/proc/mpp_service/supports-cmd", F_OK) = 0
ioctl(6, V4L2_SUBDEV_IR_TX_NOTIFY, 0x7fe4f1a628) = 0
ioctl(6, V4L2_SUBDEV_IR_TX_NOTIFY, 0x7fe4f1a628) = 0
ioctl(6, V4L2_SUBDEV_IR_TX_NOTIFY, 0x7fe4f1a628) = 0
ioctl(6, V4L2_SUBDEV_IR_TX_NOTIFY, 0x7fe4f1a628) = 0
ioctl(6, V4L2_SUBDEV_IR_TX_NOTIFY, 0x7fe4f1a628) = 0
close(6)                                = 0
openat(AT_FDCWD, "/dev/mpp_service", O_RDWR|O_CLOEXEC) = 6
ioctl(6, V4L2_SUBDEV_IR_TX_NOTIFY, 0x7fe4f1a5c8) = 0
ioctl(6, V4L2_SUBDEV_IR_TX_NOTIFY, 0x7fe4f1a5c8) = 0
close(6)                                = 0
openat(AT_FDCWD, "/dev/mpp_service", O_RDWR|O_CLOEXEC) = 6
ioctl(6, V4L2_SUBDEV_IR_TX_NOTIFY, 0x7fe4f1a5c8) = 0
ioctl(6, V4L2_SUBDEV_IR_TX_NOTIFY, 0x7fe4f1a5c8) = 0
close(6)                                = 0
openat(AT_FDCWD, "/dev/mpp_service", O_RDWR|O_CLOEXEC) = 6
ioctl(6, V4L2_SUBDEV_IR_TX_NOTIFY, 0x7fe4f1a5c8) = 0
ioctl(6, V4L2_SUBDEV_IR_TX_NOTIFY, 0x7fe4f1a5c8) = 0
close(6)                                = 0
openat(AT_FDCWD, "/dev/mpp_service", O_RDWR|O_CLOEXEC) = 6
ioctl(6, V4L2_SUBDEV_IR_TX_NOTIFY, 0x7fe4f1a5c8) = 0
ioctl(6, V4L2_SUBDEV_IR_TX_NOTIFY, 0x7fe4f1a5c8) = 0
close(6)                                = 0
openat(AT_FDCWD, "/dev/mpp_service", O_RDWR|O_CLOEXEC) = 6
ioctl(6, V4L2_SUBDEV_IR_TX_NOTIFY, 0x7fe4f1a5c8) = 0
ioctl(6, V4L2_SUBDEV_IR_TX_NOTIFY, 0x7fe4f1a5c8) = 0
close(6)                                = 0
openat(AT_FDCWD, "/dev/mpp_service", O_RDWR|O_CLOEXEC) = 6
ioctl(6, V4L2_SUBDEV_IR_TX_NOTIFY, 0x7fe4f1a5c8) = 0
ioctl(6, V4L2_SUBDEV_IR_TX_NOTIFY, 0x7fe4f1a5c8) = 0
close(6)                                = 0
openat(AT_FDCWD, "/dev/mpp_service", O_RDWR|O_CLOEXEC) = 6
ioctl(6, V4L2_SUBDEV_IR_TX_NOTIFY, 0x7fe4f1a5c8) = 0
ioctl(6, V4L2_SUBDEV_IR_TX_NOTIFY, 0x7fe4f1a5c8) = 0
close(6)                                = 0
faccessat(AT_FDCWD, "/proc/version", R_OK) = 0
openat(AT_FDCWD, "/proc/version", O_RDONLY) = 6
fstat(6, {st_mode=S_IFREG|0444, st_size=0, ...}) = 0
read(6, "Linux version 4.19.161 (zhjt@ser"..., 1024) = 192
close(6)                                = 0
openat(AT_FDCWD, "/dev/mpp_service", O_RDWR|O_CLOEXEC) = 6
ioctl(6, V4L2_SUBDEV_IR_TX_NOTIFY, 0x7fe4f1a638) = 0
mmap(NULL, 2101248, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7fa2186000
mmap(NULL, 1052672, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7fa2085000
mmap(NULL, 2101248, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7fa1e84000
brk(0x322fa000)                         = 0x322fa000
mmap(NULL, 8392704, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_STACK, -1, 0) = 0x7fa1683000
mprotect(0x7fa1684000, 8388608, PROT_READ|PROT_WRITE) = 0
clone(child_stack=0x7fa1e82ad0, flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|CLONE_THREAD|CLONE_SYSVSEM|CLONE_SETTLS|CLONE_PARENT_SETTID|CLONE_CHILD_CLEARTID, parent_tidptr=0x7fa1e832a0, tls=0x7fa1e838d0, child_tidptr=0x7fa1e832a0) = 792
mmap(NULL, 8392704, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_STACK, -1, 0) = 0x7fa0e82000
mprotect(0x7fa0e83000, 8388608, PROT_READ|PROT_WRITE) = 0
clone(child_stack=0x7fa1681ad0, flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|CLONE_THREAD|CLONE_SYSVSEM|CLONE_SETTLS|CLONE_PARENT_SETTID|CLONE_CHILD_CLEARTID, parent_tidptr=0x7fa16822a0, tls=0x7fa16828d0, child_tidptr=0x7fa16822a0) = 793
futex(0x322d8cf0, FUTEX_WAKE_PRIVATE, 1) = 1
futex(0x322d8c98, FUTEX_WAKE_PRIVATE, 1) = 1
futex(0x322bfe40, FUTEX_WAKE_PRIVATE, 1) = 1
futex(0x322d8cf4, FUTEX_WAKE_PRIVATE, 1) = 1
futex(0x322d8c98, FUTEX_WAKE_PRIVATE, 1) = 1
futex(0x322bfe40, FUTEX_WAKE_PRIVATE, 1) = 1
mmap(NULL, 8392704, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_STACK, -1, 0) = 0x7fa0681000
mprotect(0x7fa0682000, 8388608, PROT_READ|PROT_WRITE) = 0
clone(child_stack=0x7fa0e80ad0, flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|CLONE_THREAD|CLONE_SYSVSEM|CLONE_SETTLS|CLONE_PARENT_SETTID|CLONE_CHILD_CLEARTID, parent_tidptr=0x7fa0e812a0, tls=0x7fa0e818d0, child_tidptr=0x7fa0e812a0) = 794
futex(0x7fa0e812a0, FUTEX_WAIT, 794, NULLmpp[790]: mpi_dec_test: 0x322bd820 decode_get_frame get info changed found
mpp[790]: mpi_dec_test: 0x322bd820 decoder require buffer w:h [320:240] stride [320:240] buf_size 153600
mpp[790]: mpp_serivce: mpp_service_cmd_send ioctl MPP_IOC_CFG_V1 failed ret -1 errno 12 Cannot allocate memory
mpp[790]: hal_h264d_vdpu34x: vdpu34x_h264d_start send cmd failed 12
mpp[790]: mpp_serivce: mpp_service_cmd_poll ioctl MPP_IOC_CFG_V1 failed ret -1 errno 5 Input/output error
mpp[790]: hal_h264d_vdpu34x: vdpu34x_h264d_wait poll cmd failed 5
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 0 err 1 discard 0
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 1 err 0 discard 1
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 2 err 1 discard 0
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 3 err 0 discard 1
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 4 err 1 discard 0
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 5 err 0 discard 1
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 6 err 1 discard 0
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 7 err 0 discard 1
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 8 err 1 discard 0
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 9 err 0 discard 1
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 10 err 1 discard 0
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 11 err 0 discard 1
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 12 err 1 discard 0
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 13 err 0 discard 1
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 14 err 1 discard 0
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 15 err 0 discard 1
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 16 err 1 discard 0
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 17 err 0 discard 1
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 18 err 1 discard 0
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 19 err 0 discard 1
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 20 err 1 discard 0
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 21 err 0 discard 1
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 22 err 1 discard 0
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 23 err 0 discard 1
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 24 err 1 discard 0
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 25 err 0 discard 1
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 26 err 1 discard 0
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 27 err 0 discard 1
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 28 err 1 discard 0
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 29 err 0 discard 1
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 30 err 1 discard 0
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 31 err 0 discard 1
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 32 err 1 discard 0
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 33 err 0 discard 1
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 34 err 1 discard 0
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 35 err 0 discard 1
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 36 err 1 discard 0
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 37 err 0 discard 1
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 38 err 1 discard 0
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 39 err 0 discard 1
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 40 err 1 discard 0
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 41 err 0 discard 1
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 42 err 1 discard 0
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 43 err 0 discard 1
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 44 err 1 discard 0
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 45 err 0 discard 1
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 46 err 1 discard 0
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 47 err 0 discard 1
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 48 err 1 discard 0
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 49 err 0 discard 1
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 50 err 1 discard 0
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 51 err 0 discard 1
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 52 err 1 discard 0
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 53 err 0 discard 1
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 54 err 1 discard 0
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 55 err 0 discard 1
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 56 err 1 discard 0
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 57 err 0 discard 1
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 58 err 1 discard 0
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 59 err 0 discard 1
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 60 err 1 discard 0
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 61 err 0 discard 1
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 62 err 1 discard 0
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 63 err 0 discard 1
mpp[790]: mpp_serivce: mpp_service_cmd_send ioctl MPP_IOC_CFG_V1 failed ret -1 errno 12 Cannot allocate memory
mpp[790]: hal_h264d_vdpu34x: vdpu34x_h264d_start send cmd failed 12
mpp[790]: mpp_serivce: mpp_service_cmd_poll ioctl MPP_IOC_CFG_V1 failed ret -1 errno 5 Input/output error
mpp[790]: hal_h264d_vdpu34x: vdpu34x_h264d_wait poll cmd failed 5
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 64 err 1 discard 0
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 65 err 0 discard 1
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 66 err 1 discard 0
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 67 err 0 discard 1
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 68 err 1 discard 0
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 69 err 0 discard 1
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 70 err 1 discard 0
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 71 err 0 discard 1
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 72 err 1 discard 0
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 73 err 0 discard 1
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 74 err 1 discard 0
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 75 err 0 discard 1
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 76 err 1 discard 0
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 77 err 0 discard 1
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 78 err 1 discard 0
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 79 err 0 discard 1
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 80 err 1 discard 0
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 81 err 0 discard 1
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 82 err 1 discard 0
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 83 err 0 discard 1
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 84 err 1 discard 0
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 85 err 0 discard 1
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 86 err 1 discard 0
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 87 err 0 discard 1
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 88 err 1 discard 0
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 89 err 0 discard 1
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 90 err 1 discard 0
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 91 err 0 discard 1
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 92 err 1 discard 0
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 93 err 0 discard 1
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 94 err 1 discard 0
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 95 err 0 discard 1
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 96 err 1 discard 0
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 97 err 0 discard 1
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 98 err 1 discard 0
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 99 err 0 discard 1
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 100 err 1 discard 0
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 101 err 0 discard 1
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 102 err 1 discard 0
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 103 err 0 discard 1
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 104 err 1 discard 0
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 105 err 0 discard 1
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 106 err 1 discard 0
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 107 err 0 discard 1
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 108 err 1 discard 0
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 109 err 0 discard 1
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 110 err 1 discard 0
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 111 err 0 discard 1
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 112 err 1 discard 0
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 113 err 0 discard 1
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 114 err 1 discard 0
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 115 err 0 discard 1
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 116 err 1 discard 0
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 117 err 0 discard 1
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 118 err 1 discard 0
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 119 err 0 discard 1
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 120 err 1 discard 0
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 121 err 0 discard 1
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 122 err 1 discard 0
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 123 err 0 discard 1
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 124 err 1 discard 0
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 125 err 0 discard 1
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 126 err 1 discard 0
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 127 err 0 discard 1
mpp[790]: mpp_serivce: mpp_service_cmd_send ioctl MPP_IOC_CFG_V1 failed ret -1 errno 12 Cannot allocate memory
mpp[790]: hal_h264d_vdpu34x: vdpu34x_h264d_start send cmd failed 12
mpp[790]: mpi_dec_test: 0x322bd820 found last packet
mpp[790]: mpp_serivce: mpp_service_cmd_poll ioctl MPP_IOC_CFG_V1 failed ret -1 errno 5 Input/output error
mpp[790]: hal_h264d_vdpu34x: vdpu34x_h264d_wait poll cmd failed 5
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 128 err 1 discard 0
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 129 err 0 discard 1
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 130 err 1 discard 0
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 131 err 0 discard 1
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 132 err 1 discard 0
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 133 err 0 discard 1
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 134 err 1 discard 0
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 135 err 0 discard 1
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 136 err 1 discard 0
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 137 err 0 discard 1
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 138 err 1 discard 0
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 139 err 0 discard 1
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 140 err 1 discard 0
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 141 err 0 discard 1
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 142 err 1 discard 0
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 143 err 0 discard 1
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 144 err 1 discard 0
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 145 err 0 discard 1
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 146 err 1 discard 0
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 147 err 0 discard 1
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 148 err 1 discard 0
mpp[790]: mpi_dec_test: 0x322bd820 decode get frame 149 err 1 discard 0
mpp[790]: mpi_dec_test: 0x322bd820 found last packet
mpp[790]: mpi_dec_test: decode 150 frames time 6383 ms delay 2080 ms fps 23.50
) = 0
futex(0x322d8cf0, FUTEX_WAKE_PRIVATE, 1) = 1
futex(0x322d8c98, FUTEX_WAKE_PRIVATE, 1) = 1
futex(0x322bfea8, FUTEX_WAIT_BITSET_PRIVATE|FUTEX_CLOCK_REALTIME, 0, NULL, 0xffffffff) = 0
futex(0x322d8cf4, FUTEX_WAKE_PRIVATE, 1) = 1
futex(0x322d8c98, FUTEX_WAKE_PRIVATE, 1) = 1
futex(0x7fa1e832a0, FUTEX_WAIT, 792, NULL) = -1 EAGAIN (Resource temporarily unavailable)
futex(0x322d8eb4, FUTEX_WAKE_PRIVATE, 1) = 1
futex(0x322d8e58, FUTEX_WAKE_PRIVATE, 1) = 1
munmap(0x7fa2186000, 2101248)           = 0
munmap(0x7fa2085000, 1052672)           = 0
munmap(0x7fa1e84000, 2101248)           = 0
close(6)                                = 0
munmap(0x7fa016c000, 159744)            = 0
munmap(0x7fa0193000, 159744)            = 0
munmap(0x7fa022f000, 159744)            = 0
munmap(0x7fa01e1000, 159744)            = 0
munmap(0x7fa0458000, 159744)            = 0
munmap(0x7fa01ba000, 159744)            = 0
munmap(0x7fa0208000, 159744)            = 0
write(5, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 5120) = 5120
close(5)                                = 0
getpid()                                = 790
writev(2, [{iov_base="mpp[790]: mpi_dec_test: test suc"..., iov_len=56}], 1mpp[790]: mpi_dec_test: test success max memory 1.03 MB
) = 56
sendto(4, "<14>Apr 18 10:07:41 mpp[790]: mp"..., 76, MSG_NOSIGNAL, NULL, 0) = 76
close(3)                                = 0
close(4)                                = 0
exit_group(0)                           = ?
+++ exited with 0 +++
[root@RK356X:/vdi/vendor/rk3568/rockchip-linux-mpp/out/arm64-v8a/test]# 
HermanChen commented 2 years ago

确认一下最新代码编译的时候,有没有加上 HAVE_DRM 配置?

HermanChen commented 2 years ago

看到少了 DRM_IOCTL_MODE_CREATE_DUMB 的分配内存的调用,可以在 drm_alloc 里加下打印看看,有没有走进去

HermanChen commented 2 years ago

新版本的库只打开一次 /dev/dri/card0 设备,在同一个进程使用一个 drm fd 来做为主设备

zhouwg commented 2 years ago

确认一下最新代码编译的时候,有没有加上 HAVE_DRM 配置?

感谢您的回答。现在解码好使了。

zhouwg commented 2 years ago

新版本的库只打开一次 /dev/dri/card0 设备,在同一个进程使用一个 drm fd 来做为主设备

您好,MPP的这个linux demo

https://github.com/WainDing/mpp_linux_cpp

在rk3568开发板上无法正常运行。

按照您的回复(添加HAVE_DRM=on)重新编译了MPP代码生成mpp库,以及改了mpp_linux_cpp的代码(主要是将RGA相关的全部注释掉,使用drm_show_frame这个函数来显示解码后的 video frame),可以正常运行,但是屏幕黑屏,请问这是什么原因?是需要修改drm_show_frame的实现吗?

贵公司有这样的example吗(使用drm将解码后的video_frame显示在video layer上,下层的osd layer上的ui能正常看到)?做了一些试验,但是还不成功。

HermanChen commented 2 years ago

那个库也是我们同事的仓库,可以直接问下他

zhouwg commented 2 years ago

那个库也是我们同事的仓库,可以直接问下他

感谢!

https://github.com/WainDing/mpp_linux_cpp

以及其上游

https://github.com/sliver-chen/mpp_linux_cpp

似乎都不再维护了。

我将参考

https://github.com/mpv-player/mpv/blob/master/video/out/drm_common.c#L83

https://github.com/mpv-player/mpv/blob/master/video/out/opengl/hwdec_drmprime_drm.c#L264

尝试解决这个问题(使用drm将MPP解码后的video_frame显示在video layer上,下层的osd layer上的ui能正常看到)。

This opening issue was resolved as following

echo "target is linux" cmake -H. -B./out/arm64-v8a -DHAVE_DRM=ON -DCMAKE_BUILD_TYPE=${LIB_BUILD_TYPE} -DBUILD_TARGET=${BUILD_TARGET} -DBULD_LIB_TYPE=${LIB_TYPE} -DCMAKE_SYSTEM_PROCESSOR=aarch64 -DCMAKE_TOOLCHAIN_FILE=${PWD}/build/linux/aarch64 /arm.linux.cross.cmake cd ./out/arm64-v8a make VERBOSE=1

perfectly with great help from @HermanChen and authors of Rockchip's MPP and it's closed accordingly.