robertoj Posted April 29, 2023 Share Posted April 29, 2023 (edited) When kodi starts playing an h264 file with hardware decoding, the debug log looks like this (I removed lines with mjpeg and [mov because they were 99% of the lines, making noise.) Spoiler LibreELEC:~/.kodi/temp # tail -f kodi.log | grep ffmpeg | grep -v mjpeg | grep -v '\[mov' 2023-04-29 22:20:05.267 T:1427 debug <general>: ffmpeg[0xad946ad0]: [image2] Custom AVIOContext makes no sense and will be ignored with AVFMT_NOFILE format. 2023-04-29 22:20:05.306 T:1426 debug <general>: ffmpeg[0xad997280]: [image2] Custom AVIOContext makes no sense and will be ignored with AVFMT_NOFILE format. 2023-04-29 22:20:05.565 T:1426 debug <general>: ffmpeg[0xad997280]: [image2] Custom AVIOContext makes no sense and will be ignored with AVFMT_NOFILE format. 2023-04-29 22:20:07.046 T:1451 debug <general>: ffmpeg[0x2239168]: Probing mov,mp4,m4a,3gp,3g2,mj2 score:100 size:2048 2023-04-29 22:20:07.047 T:1451 debug <general>: ffmpeg[0x2239168]: Format mov,mp4,m4a,3gp,3g2,mj2 probed with size=2048 and score=100 2023-04-29 22:20:09.291 T:1451 debug <general>: ffmpeg[0x2239168]: [h264] nal_unit_type: 7(SPS), nal_ref_idc: 3 2023-04-29 22:20:09.291 T:1451 debug <general>: ffmpeg[0x2239168]: [h264] nal_unit_type: 8(PPS), nal_ref_idc: 3 2023-04-29 22:20:09.295 T:1451 debug <general>: ffmpeg[0x2239168]: [h264] nal_unit_type: 5(IDR), nal_ref_idc: 1 2023-04-29 22:20:09.295 T:1451 debug <general>: ffmpeg[0x2239168]: [h264] Format yuv420p chosen by get_format(). 2023-04-29 22:20:09.295 T:1451 debug <general>: ffmpeg[0x2239168]: [h264] Reinit context to 1280x720, pix_fmt: yuv420p 2023-04-29 22:20:09.299 T:1451 debug <general>: ffmpeg[0x2239168]: [h264] no picture 2023-04-29 22:20:09.443 T:1451 info <general>: ffmpeg[0x2239168]: Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '/storage/videos/Y2Mate.is - Rounding Corners in SDFs-s5NGeUV2EyU-720p-1656039850234.mp4': 2023-04-29 22:20:09.443 T:1451 info <general>: ffmpeg[0x2239168]: Metadata: 2023-04-29 22:20:09.444 T:1451 info <general>: ffmpeg[0x2239168]: major_brand : mp42 2023-04-29 22:20:09.444 T:1451 info <general>: ffmpeg[0x2239168]: minor_version : 0 2023-04-29 22:20:09.444 T:1451 info <general>: ffmpeg[0x2239168]: compatible_brands: isommp42 2023-04-29 22:20:09.444 T:1451 info <general>: ffmpeg[0x2239168]: creation_time : 2019-11-01T18:41:03.000000Z 2023-04-29 22:20:09.444 T:1451 info <general>: ffmpeg[0x2239168]: Duration: 00:04:55.01, start: 0.000000, bitrate: 864 kb/s 2023-04-29 22:20:09.444 T:1451 info <general>: ffmpeg[0x2239168]: Stream #0:0(und), 15, 1/15360: Video: h264 (Main) (avc1 / 0x31637661), yuv420p(tv, bt709), 1280x720 [SAR 1:1 DAR 16:9], 732 kb/s, 30 fps, 30 tbr, 15360 tbn, 60 tbc (default) 2023-04-29 22:20:09.444 T:1451 info <general>: ffmpeg[0x2239168]: Metadata: 2023-04-29 22:20:09.445 T:1451 info <general>: ffmpeg[0x2239168]: creation_time : 2019-11-01T18:41:03.000000Z 2023-04-29 22:20:09.445 T:1451 info <general>: ffmpeg[0x2239168]: handler_name : ISO Media file produced by Google Inc. Created on: 11/01/2019. 2023-04-29 22:20:09.445 T:1451 info <general>: ffmpeg[0x2239168]: vendor_id : [0][0][0][0] 2023-04-29 22:20:09.445 T:1451 info <general>: ffmpeg[0x2239168]: Stream #0:1(eng), 1, 1/44100: Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 128 kb/s (default) 2023-04-29 22:20:09.445 T:1451 info <general>: ffmpeg[0x2239168]: Metadata: 2023-04-29 22:20:09.445 T:1451 info <general>: ffmpeg[0x2239168]: creation_time : 2019-11-01T18:41:03.000000Z 2023-04-29 22:20:09.445 T:1451 info <general>: ffmpeg[0x2239168]: handler_name : ISO Media file produced by Google Inc. Created on: 11/01/2019. 2023-04-29 22:20:09.445 T:1451 info <general>: ffmpeg[0x2239168]: vendor_id : [0][0][0][0] 2023-04-29 22:20:09.447 T:1451 debug <general>: ffmpeg[0x2239168]: [AVHWDeviceContext] Opened DRM device /dev/dri/card0: driver sun4i-drm version 1.0.0. 2023-04-29 22:20:09.447 T:1451 debug <general>: ffmpeg[0x2239168]: [h264] Requested frame threading with a custom get_buffer2() implementation which is not marked as thread safe. This is not supported anymore, make your callback thread-safe. 2023-04-29 22:20:09.448 T:1451 debug <general>: ffmpeg[0x2239168]: [h264] nal_unit_type: 7(SPS), nal_ref_idc: 3 2023-04-29 22:20:09.448 T:1451 debug <general>: ffmpeg[0x2239168]: [h264] nal_unit_type: 8(PPS), nal_ref_idc: 3 2023-04-29 22:20:09.451 T:1451 debug <general>: ffmpeg[0x2239168]: [src] Setting 'video_size' to value '1280x720' 2023-04-29 22:20:09.452 T:1451 debug <general>: ffmpeg[0x2239168]: [src] Setting 'pix_fmt' to value '181' 2023-04-29 22:20:09.452 T:1451 debug <general>: ffmpeg[0x2239168]: [src] Setting 'time_base' to value '1/2000000' 2023-04-29 22:20:09.452 T:1451 debug <general>: ffmpeg[0x2239168]: [src] Setting 'pixel_aspect' to value '1/1' 2023-04-29 22:20:09.452 T:1451 debug <general>: ffmpeg[0x2239168]: [src] w:1280 h:720 pixfmt:drm_prime tb:1/2000000 fr:0/1 sar:1/1 2023-04-29 22:20:09.453 T:1451 debug <general>: ffmpeg[0x2239168]: [AVFilterGraph] query_formats: 3 queried, 2 merged, 0 already done, 0 delayed 2023-04-29 22:20:09.455 T:1451 debug <general>: ffmpeg[0x2239168]: probing device /dev/video1 2023-04-29 22:20:09.455 T:1451 info <general>: ffmpeg[0x2239168]: Using device /dev/video1 2023-04-29 22:20:09.455 T:1451 debug <general>: ffmpeg[0x2239168]: deint_v4l2m2m_destroy_context - destroying context 2023-04-29 22:20:09.469 T:1454 debug <general>: ffmpeg[0x0]: [h264] nal_unit_type: 5(IDR), nal_ref_idc: 1 2023-04-29 22:20:09.469 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] Format drm_prime chosen by get_format(). 2023-04-29 22:20:09.469 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] Format drm_prime requires hwaccel initialisation. 2023-04-29 22:20:09.470 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] ff_v4l2_request_init: avctx=0xa69d4040 hw_device_ctx=0xa9c57fa0 hw_frames_ctx=(nil) 2023-04-29 22:20:09.473 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_probe_media_device: avctx=0xa69d4040 ctx=0xac403c60 path=/dev/media0 driver=cedrus 2023-04-29 22:20:09.474 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_probe_video_device: avctx=0xa69d4040 ctx=0xac403c60 path=/dev/video0 capabilities=69238784 2023-04-29 22:20:09.474 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_init_context: pixelformat=842094158 width=1280 height=720 bytesperline=1280 sizeimage=1382400 2023-04-29 22:20:09.475 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] ff_v4l2_request_frame_params: avctx=0xa69d4040 ctx=0xac403c60 hw_frames_ctx=0xac401a30 hwfc=0xac401930 pool=0xac4137b0 width=1280 height=720 initial_pool_size=3 2023-04-29 22:20:09.475 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_frame_alloc: avctx=0xa69d4040 size=512 data=0xac403600 2023-04-29 22:20:09.475 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_buffer_alloc: avctx=0xa69d4040 buf=0xac403734 type=2 2023-04-29 22:20:09.475 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_buffer_alloc: pixelformat=875967059 width=1280 height=720 bytesperline=0 sizeimage=4194304 2023-04-29 22:20:09.476 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_buffer_alloc: buf=0xac403734 index=0 fd=-1 addr=0x995fd000 width=1280 height=720 size=4194304 2023-04-29 22:20:09.476 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_buffer_alloc: avctx=0xa69d4040 buf=0xac403798 type=1 2023-04-29 22:20:09.477 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_buffer_alloc: pixelformat=842094158 width=1280 height=720 bytesperline=1280 sizeimage=1382400 2023-04-29 22:20:09.478 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_buffer_alloc: buf=0xac403798 index=0 fd=59 addr=(nil) width=1280 height=720 size=1382400 2023-04-29 22:20:09.478 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_frame_alloc: avctx=0xa69d4040 size=512 data=0xac403600 request_fd=60 2023-04-29 22:20:09.479 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_frame_alloc: avctx=0xa69d4040 size=512 data=0xac414600 2023-04-29 22:20:09.479 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_buffer_alloc: avctx=0xa69d4040 buf=0xac414734 type=2 2023-04-29 22:20:09.479 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_buffer_alloc: pixelformat=875967059 width=1280 height=720 bytesperline=0 sizeimage=4194304 2023-04-29 22:20:09.480 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_buffer_alloc: buf=0xac414734 index=1 fd=-1 addr=0x96ece000 width=1280 height=720 size=4194304 2023-04-29 22:20:09.480 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_buffer_alloc: avctx=0xa69d4040 buf=0xac414798 type=1 2023-04-29 22:20:09.480 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_buffer_alloc: pixelformat=842094158 width=1280 height=720 bytesperline=1280 sizeimage=1382400 2023-04-29 22:20:09.482 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_buffer_alloc: buf=0xac414798 index=1 fd=61 addr=(nil) width=1280 height=720 size=1382400 2023-04-29 22:20:09.482 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_frame_alloc: avctx=0xa69d4040 size=512 data=0xac414600 request_fd=62 2023-04-29 22:20:09.491 T:1161 debug <general>: ffmpeg[0x1775d90]: [SWR] Using fltp internally between filters 2023-04-29 22:20:09.492 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_frame_alloc: avctx=0xa69d4040 size=512 data=0xac414830 2023-04-29 22:20:09.492 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_buffer_alloc: avctx=0xa69d4040 buf=0xac414964 type=2 2023-04-29 22:20:09.493 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_buffer_alloc: pixelformat=875967059 width=1280 height=720 bytesperline=0 sizeimage=4194304 2023-04-29 22:20:09.497 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_buffer_alloc: buf=0xac414964 index=2 fd=-1 addr=0x92e31000 width=1280 height=720 size=4194304 2023-04-29 22:20:09.497 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_buffer_alloc: avctx=0xa69d4040 buf=0xac4149c8 type=1 2023-04-29 22:20:09.497 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_buffer_alloc: pixelformat=842094158 width=1280 height=720 bytesperline=1280 sizeimage=1382400 2023-04-29 22:20:09.499 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_buffer_alloc: buf=0xac4149c8 index=2 fd=50 addr=(nil) width=1280 height=720 size=1382400 2023-04-29 22:20:09.499 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_frame_alloc: avctx=0xa69d4040 size=512 data=0xac414830 request_fd=63 2023-04-29 22:20:09.500 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_frame_alloc: avctx=0xa69d4040 size=512 data=0xac420d80 2023-04-29 22:20:09.500 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_buffer_alloc: avctx=0xa69d4040 buf=0xac420eb4 type=2 2023-04-29 22:20:09.500 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_buffer_alloc: pixelformat=875967059 width=1280 height=720 bytesperline=0 sizeimage=4194304 2023-04-29 22:20:09.501 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_buffer_alloc: buf=0xac420eb4 index=3 fd=-1 addr=0x92a31000 width=1280 height=720 size=4194304 2023-04-29 22:20:09.501 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_buffer_alloc: avctx=0xa69d4040 buf=0xac420f18 type=1 2023-04-29 22:20:09.501 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_buffer_alloc: pixelformat=842094158 width=1280 height=720 bytesperline=1280 sizeimage=1382400 2023-04-29 22:20:09.503 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_buffer_alloc: buf=0xac420f18 index=3 fd=57 addr=(nil) width=1280 height=720 size=1382400 2023-04-29 22:20:09.504 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_frame_alloc: avctx=0xa69d4040 size=512 data=0xac420d80 request_fd=65 2023-04-29 22:20:09.504 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_frame_alloc: avctx=0xa69d4040 size=512 data=0xac425fd0 2023-04-29 22:20:09.504 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_buffer_alloc: avctx=0xa69d4040 buf=0xac426104 type=2 2023-04-29 22:20:09.504 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_buffer_alloc: pixelformat=875967059 width=1280 height=720 bytesperline=0 sizeimage=4194304 2023-04-29 22:20:09.505 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_buffer_alloc: buf=0xac426104 index=4 fd=-1 addr=0x92400000 width=1280 height=720 size=4194304 2023-04-29 22:20:09.505 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_buffer_alloc: avctx=0xa69d4040 buf=0xac426168 type=1 2023-04-29 22:20:09.506 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_buffer_alloc: pixelformat=842094158 width=1280 height=720 bytesperline=1280 sizeimage=1382400 2023-04-29 22:20:09.508 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_buffer_alloc: buf=0xac426168 index=4 fd=66 addr=(nil) width=1280 height=720 size=1382400 2023-04-29 22:20:09.508 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_frame_alloc: avctx=0xa69d4040 size=512 data=0xac425fd0 request_fd=67 2023-04-29 22:20:09.508 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_frame_alloc: avctx=0xa69d4040 size=512 data=0xac406890 2023-04-29 22:20:09.508 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_buffer_alloc: avctx=0xa69d4040 buf=0xac4069c4 type=2 2023-04-29 22:20:09.508 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_buffer_alloc: pixelformat=875967059 width=1280 height=720 bytesperline=0 sizeimage=4194304 2023-04-29 22:20:09.510 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_buffer_alloc: buf=0xac4069c4 index=5 fd=-1 addr=0x91e00000 width=1280 height=720 size=4194304 2023-04-29 22:20:09.510 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_buffer_alloc: avctx=0xa69d4040 buf=0xac406a28 type=1 2023-04-29 22:20:09.510 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_buffer_alloc: pixelformat=842094158 width=1280 height=720 bytesperline=1280 sizeimage=1382400 2023-04-29 22:20:09.511 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_buffer_alloc: buf=0xac406a28 index=5 fd=68 addr=(nil) width=1280 height=720 size=1382400 2023-04-29 22:20:09.512 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_frame_alloc: avctx=0xa69d4040 size=512 data=0xac406890 request_fd=69 2023-04-29 22:20:09.512 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_frame_alloc: avctx=0xa69d4040 size=512 data=0xac406c80 2023-04-29 22:20:09.512 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_buffer_alloc: avctx=0xa69d4040 buf=0xac406db4 type=2 2023-04-29 22:20:09.512 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_buffer_alloc: pixelformat=875967059 width=1280 height=720 bytesperline=0 sizeimage=4194304 2023-04-29 22:20:09.513 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_buffer_alloc: buf=0xac406db4 index=6 fd=-1 addr=0x91a00000 width=1280 height=720 size=4194304 2023-04-29 22:20:09.513 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_buffer_alloc: avctx=0xa69d4040 buf=0xac406e18 type=1 2023-04-29 22:20:09.513 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_buffer_alloc: pixelformat=842094158 width=1280 height=720 bytesperline=1280 sizeimage=1382400 2023-04-29 22:20:09.515 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_buffer_alloc: buf=0xac406e18 index=6 fd=70 addr=(nil) width=1280 height=720 size=1382400 2023-04-29 22:20:09.515 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_frame_alloc: avctx=0xa69d4040 size=512 data=0xac406c80 request_fd=71 2023-04-29 22:20:09.515 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_frame_alloc: avctx=0xa69d4040 size=512 data=0xac421210 2023-04-29 22:20:09.515 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_buffer_alloc: avctx=0xa69d4040 buf=0xac421344 type=2 2023-04-29 22:20:09.515 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_buffer_alloc: pixelformat=875967059 width=1280 height=720 bytesperline=0 sizeimage=4194304 2023-04-29 22:20:09.517 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_buffer_alloc: buf=0xac421344 index=7 fd=-1 addr=0x91400000 width=1280 height=720 size=4194304 2023-04-29 22:20:09.517 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_buffer_alloc: avctx=0xa69d4040 buf=0xac4213a8 type=1 2023-04-29 22:20:09.517 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_buffer_alloc: pixelformat=842094158 width=1280 height=720 bytesperline=1280 sizeimage=1382400 2023-04-29 22:20:09.519 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_buffer_alloc: buf=0xac4213a8 index=7 fd=72 addr=(nil) width=1280 height=720 size=1382400 2023-04-29 22:20:09.519 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_frame_alloc: avctx=0xa69d4040 size=512 data=0xac421210 request_fd=73 2023-04-29 22:20:09.519 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_frame_alloc: avctx=0xa69d4040 size=512 data=0xac421600 2023-04-29 22:20:09.519 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_buffer_alloc: avctx=0xa69d4040 buf=0xac421734 type=2 2023-04-29 22:20:09.519 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_buffer_alloc: pixelformat=875967059 width=1280 height=720 bytesperline=0 sizeimage=4194304 2023-04-29 22:20:09.520 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_buffer_alloc: buf=0xac421734 index=8 fd=-1 addr=0x91000000 width=1280 height=720 size=4194304 2023-04-29 22:20:09.520 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_buffer_alloc: avctx=0xa69d4040 buf=0xac421798 type=1 2023-04-29 22:20:09.521 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_buffer_alloc: pixelformat=842094158 width=1280 height=720 bytesperline=1280 sizeimage=1382400 2023-04-29 22:20:09.522 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_buffer_alloc: buf=0xac421798 index=8 fd=74 addr=(nil) width=1280 height=720 size=1382400 2023-04-29 22:20:09.522 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_frame_alloc: avctx=0xa69d4040 size=512 data=0xac421600 request_fd=75 2023-04-29 22:20:09.522 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_frame_alloc: avctx=0xa69d4040 size=512 data=0xac421af0 2023-04-29 22:20:09.523 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_buffer_alloc: avctx=0xa69d4040 buf=0xac421c24 type=2 2023-04-29 22:20:09.523 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_buffer_alloc: pixelformat=875967059 width=1280 height=720 bytesperline=0 sizeimage=4194304 2023-04-29 22:20:09.524 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_buffer_alloc: buf=0xac421c24 index=9 fd=-1 addr=0x90c00000 width=1280 height=720 size=4194304 2023-04-29 22:20:09.524 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_buffer_alloc: avctx=0xa69d4040 buf=0xac421c88 type=1 2023-04-29 22:20:09.524 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_buffer_alloc: pixelformat=842094158 width=1280 height=720 bytesperline=1280 sizeimage=1382400 2023-04-29 22:20:09.526 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_buffer_alloc: buf=0xac421c88 index=9 fd=76 addr=(nil) width=1280 height=720 size=1382400 2023-04-29 22:20:09.526 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_frame_alloc: avctx=0xa69d4040 size=512 data=0xac421af0 request_fd=77 2023-04-29 22:20:09.528 T:1454 debug <general>: ffmpeg[0x0]: [h264] Reinit context to 1280x720, pix_fmt: drm_prime 2023-04-29 22:20:09.532 T:1454 debug <general>: ffmpeg[0x0]: [h264] no picture 2023-04-29 22:20:09.532 T:1454 debug <general>: ffmpeg[0x0]: [h264] v4l2_request_queue_decode: avctx=0xa69d4040 used=107343 controls=5 index=9 fd=76 request_fd=77 first_slice=1 last_slice=1 2023-04-29 22:20:09.540 T:1455 debug <general>: ffmpeg[0x0]: [h264] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 1 2023-04-29 22:20:09.543 T:1455 debug <general>: ffmpeg[0x0]: [h264] v4l2_request_queue_decode: avctx=0xa6bffb70 used=19596 controls=5 index=8 fd=74 request_fd=75 first_slice=1 last_slice=1 2023-04-29 22:20:09.551 T:1456 debug <general>: ffmpeg[0x0]: [h264] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0 2023-04-29 22:20:09.572 T:1456 debug <general>: ffmpeg[0x0]: [h264] v4l2_request_queue_decode: avctx=0xa69d3510 used=273 controls=5 index=7 fd=72 request_fd=73 first_slice=1 last_slice=1 2023-04-29 22:20:09.578 T:1457 debug <general>: ffmpeg[0x0]: [h264] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0 2023-04-29 22:20:09.581 T:1457 debug <general>: ffmpeg[0x0]: [h264] v4l2_request_queue_decode: avctx=0xa6cff4d0 used=1306 controls=5 index=6 fd=70 request_fd=71 first_slice=1 last_slice=1 2023-04-29 22:20:09.587 T:1454 debug <general>: ffmpeg[0x0]: [h264] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0 2023-04-29 22:20:09.590 T:1454 debug <general>: ffmpeg[0x0]: [h264] v4l2_request_queue_decode: avctx=0xa69d4040 used=1958 controls=5 index=5 fd=68 request_fd=69 first_slice=1 last_slice=1 2023-04-29 22:20:09.760 T:1162 debug <general>: ffmpeg[0x17761b8]: [SWR] Using fltp internally between filters 2023-04-29 22:20:09.762 T:1161 debug <general>: ffmpeg[0x1775d90]: [SWR] Using fltp internally between filters 2023-04-29 22:20:09.771 T:1455 debug <general>: ffmpeg[0x0]: [h264] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0 2023-04-29 22:20:09.779 T:1455 debug <general>: ffmpeg[0x0]: [h264] v4l2_request_queue_decode: avctx=0xa6bffb70 used=1330 controls=5 index=4 fd=66 request_fd=67 first_slice=1 last_slice=1 2023-04-29 22:20:09.789 T:1456 debug <general>: ffmpeg[0x0]: [h264] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 1 2023-04-29 22:20:09.790 T:1456 debug <general>: ffmpeg[0x0]: [h264] v4l2_request_queue_decode: avctx=0xa69d3510 used=28395 controls=5 index=3 fd=57 request_fd=65 first_slice=1 last_slice=1 2023-04-29 22:20:09.796 T:1457 debug <general>: ffmpeg[0x0]: [h264] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0 2023-04-29 22:20:09.797 T:1457 debug <general>: ffmpeg[0x0]: [h264] v4l2_request_queue_decode: avctx=0xa6cff4d0 used=1372 controls=5 index=2 fd=50 request_fd=63 first_slice=1 last_slice=1 2023-04-29 22:20:09.803 T:1454 debug <general>: ffmpeg[0x0]: [h264] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0 2023-04-29 22:20:09.803 T:1454 debug <general>: ffmpeg[0x0]: [h264] v4l2_request_queue_decode: avctx=0xa69d4040 used=2131 controls=5 index=1 fd=61 request_fd=62 first_slice=1 last_slice=1 2023-04-29 22:20:09.810 T:1455 debug <general>: ffmpeg[0x0]: [h264] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0 2023-04-29 22:20:09.810 T:1455 debug <general>: ffmpeg[0x0]: [h264] v4l2_request_queue_decode: avctx=0xa6bffb70 used=2254 controls=5 index=0 fd=59 request_fd=60 first_slice=1 last_slice=1 2023-04-29 22:20:09.964 T:1456 debug <general>: ffmpeg[0x0]: [h264] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0 2023-04-29 22:20:09.964 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_frame_alloc: avctx=0xa69d4040 size=512 data=0xac41d3b0 2023-04-29 22:20:09.964 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_buffer_alloc: avctx=0xa69d4040 buf=0xac41d4e4 type=2 2023-04-29 22:20:09.964 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_buffer_alloc: pixelformat=875967059 width=1280 height=720 bytesperline=0 sizeimage=4194304 2023-04-29 22:20:09.967 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_buffer_alloc: buf=0xac41d4e4 index=10 fd=-1 addr=0x90800000 width=1280 height=720 size=4194304 2023-04-29 22:20:09.967 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_buffer_alloc: avctx=0xa69d4040 buf=0xac41d548 type=1 2023-04-29 22:20:09.967 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_buffer_alloc: pixelformat=842094158 width=1280 height=720 bytesperline=1280 sizeimage=1382400 2023-04-29 22:20:09.970 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_buffer_alloc: buf=0xac41d548 index=10 fd=32 addr=(nil) width=1280 height=720 size=1382400 2023-04-29 22:20:09.970 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_frame_alloc: avctx=0xa69d4040 size=512 data=0xac41d3b0 request_fd=78 2023-04-29 22:20:09.972 T:1456 debug <general>: ffmpeg[0x0]: [h264] v4l2_request_queue_decode: avctx=0xa69d3510 used=1427 controls=5 index=10 fd=32 request_fd=78 first_slice=1 last_slice=1 2023-04-29 22:20:10.004 T:1457 debug <general>: ffmpeg[0x0]: [h264] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 1 2023-04-29 22:20:10.005 T:1457 debug <general>: ffmpeg[0x0]: [h264] v4l2_request_queue_decode: avctx=0xa6cff4d0 used=13724 controls=5 index=7 fd=72 request_fd=73 first_slice=1 last_slice=1 2023-04-29 22:20:10.024 T:1454 debug <general>: ffmpeg[0x0]: [h264] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0 2023-04-29 22:20:10.024 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_frame_alloc: avctx=0xa69d4040 size=512 data=0xac41b030 2023-04-29 22:20:10.024 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_buffer_alloc: avctx=0xa69d4040 buf=0xac41b164 type=2 2023-04-29 22:20:10.025 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_buffer_alloc: pixelformat=875967059 width=1280 height=720 bytesperline=0 sizeimage=4194304 2023-04-29 22:20:10.026 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_buffer_alloc: buf=0xac41b164 index=11 fd=-1 addr=0x90400000 width=1280 height=720 size=4194304 2023-04-29 22:20:10.026 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_buffer_alloc: avctx=0xa69d4040 buf=0xac41b1c8 type=1 2023-04-29 22:20:10.026 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_buffer_alloc: pixelformat=842094158 width=1280 height=720 bytesperline=1280 sizeimage=1382400 2023-04-29 22:20:10.028 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_buffer_alloc: buf=0xac41b1c8 index=11 fd=79 addr=(nil) width=1280 height=720 size=1382400 2023-04-29 22:20:10.028 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_frame_alloc: avctx=0xa69d4040 size=512 data=0xac41b030 request_fd=80 2023-04-29 22:20:10.028 T:1454 debug <general>: ffmpeg[0x0]: [h264] v4l2_request_queue_decode: avctx=0xa69d4040 used=1271 controls=5 index=11 fd=79 request_fd=80 first_slice=1 last_slice=1 2023-04-29 22:20:10.065 T:1455 debug <general>: ffmpeg[0x0]: [h264] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0 2023-04-29 22:20:10.066 T:1455 debug <general>: ffmpeg[0x0]: [h264] v4l2_request_queue_decode: avctx=0xa6bffb70 used=2167 controls=5 index=6 fd=70 request_fd=71 first_slice=1 last_slice=1 2023-04-29 22:20:10.103 T:1456 debug <general>: ffmpeg[0x0]: [h264] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0 2023-04-29 22:20:10.104 T:1456 debug <general>: ffmpeg[0x0]: [h264] v4l2_request_queue_decode: avctx=0xa69d3510 used=2176 controls=5 index=4 fd=66 request_fd=67 first_slice=1 last_slice=1 2023-04-29 22:20:10.124 T:1457 debug <general>: ffmpeg[0x0]: [h264] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0 2023-04-29 22:20:10.125 T:1457 debug <general>: ffmpeg[0x0]: [h264] v4l2_request_queue_decode: avctx=0xa6cff4d0 used=1808 controls=5 index=5 fd=68 request_fd=69 first_slice=1 last_slice=1 2023-04-29 22:20:10.164 T:1454 debug <general>: ffmpeg[0x0]: [h264] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 1 2023-04-29 22:20:10.164 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_frame_alloc: avctx=0xa69d4040 size=512 data=0xac41d8b0 2023-04-29 22:20:10.314 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_buffer_alloc: avctx=0xa69d4040 buf=0xac41d9e4 type=2 2023-04-29 22:20:10.314 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_buffer_alloc: pixelformat=875967059 width=1280 height=720 bytesperline=0 sizeimage=4194304 2023-04-29 22:20:10.315 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_buffer_alloc: buf=0xac41d9e4 index=12 fd=-1 addr=0x90000000 width=1280 height=720 size=4194304 2023-04-29 22:20:10.316 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_buffer_alloc: avctx=0xa69d4040 buf=0xac41da48 type=1 2023-04-29 22:20:10.316 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_buffer_alloc: pixelformat=842094158 width=1280 height=720 bytesperline=1280 sizeimage=1382400 2023-04-29 22:20:10.317 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_buffer_alloc: buf=0xac41da48 index=12 fd=81 addr=(nil) width=1280 height=720 size=1382400 2023-04-29 22:20:10.317 T:1462 debug <general>: ffmpeg[0x230e540]: [h264] v4l2_request_frame_alloc: avctx=0xa69d4040 size=512 data=0xac41d8b0 request_fd=82 2023-04-29 22:20:10.318 T:1454 debug <general>: ffmpeg[0x0]: [h264] v4l2_request_queue_decode: avctx=0xa69d4040 used=13148 controls=5 index=12 fd=81 request_fd=82 first_slice=1 last_slice=1 2023-04-29 22:20:10.324 T:1455 debug <general>: ffmpeg[0x0]: [h264] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0 2023-04-29 22:20:10.325 T:1455 debug <general>: ffmpeg[0x0]: [h264] v4l2_request_queue_decode: avctx=0xa6bffb70 used=247 controls=5 index=1 fd=61 request_fd=62 first_slice=1 last_slice=1 2023-04-29 22:20:10.329 T:1456 debug <general>: ffmpeg[0x0]: [h264] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0 2023-04-29 22:20:10.330 T:1456 debug <general>: ffmpeg[0x0]: [h264] v4l2_request_queue_decode: avctx=0xa69d3510 used=1262 controls=5 index=10 fd=32 request_fd=78 first_slice=1 last_slice=1 2023-04-29 22:20:10.344 T:1457 debug <general>: ffmpeg[0x0]: [h264] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0 2023-04-29 22:20:10.345 T:1457 debug <general>: ffmpeg[0x0]: [h264] v4l2_request_queue_decode: avctx=0xa6cff4d0 used=1349 controls=5 index=9 fd=76 request_fd=77 first_slice=1 last_slice=1 2023-04-29 22:20:10.349 T:1454 debug <general>: ffmpeg[0x0]: [h264] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0 2023-04-29 22:20:10.350 T:1454 debug <general>: ffmpeg[0x0]: [h264] v4l2_request_queue_decode: avctx=0xa69d4040 used=1071 controls=5 index=0 fd=59 request_fd=60 first_slice=1 last_slice=1 Kodi's ffmpeg is using function deint_v4l2m2m_destroy_context, which is part of another patch, which I didn't have: vf_deinterlace_v4l2m2m I am compiling it now Result: mpv takes the VAAPI route, then software decoding Spoiler roberto@orangepizero:~$ mpv -v --vo=gpu --gpu-context=drm --hwdec=auto youtube.mp4 [cplayer] Command line options: '-v' '--vo=gpu' '--gpu-context=drm' '--hwdec=auto' 'youtube.mp4' [cplayer] mpv 0.35.1 Copyright © 2000-2023 mpv/MPlayer/mplayer2 projects [cplayer] built on UNKNOWN [cplayer] FFmpeg library versions: [cplayer] libavutil 57.28.100 [cplayer] libavcodec 59.37.100 [cplayer] libavformat 59.27.100 [cplayer] libswscale 6.7.100 [cplayer] libavfilter 8.44.100 [cplayer] libswresample 4.7.100 [cplayer] FFmpeg version: 5.1.2-3 [cplayer] [cplayer] Configuration: meson configure build -Dprefix=/usr -Dbuildtype=plain -Doptimization=plain [cplayer] List of enabled features: alsa av-channel-layout caca cdda cplayer cplugins dmabuf-interop-gl dmabuf-interop-pl dmabuf-wayland drm drm-is-kms dvbin dvdnav egl egl-drm egl-helpers egl-x11 ffmpeg gbm gl gl-wayland glibc-thread-name glob glob-posix gpl iconv jack javascript jpeg jpegxl lcms2 libarchive libass libavdevice libbluray libdl libm libmpv-shared libplacebo libplacebo-next librt linux-fstatfs lua52 manpage-build memfd_create noexecstack pipewire plain-gl posix pulse rubberband rubberband-3 sdl2 sdl2-audio sdl2-gamepad sdl2-video sixel spirv-cross stdatomic threads uchardet vaapi vaapi-drm vaapi-egl vaapi-libplacebo vaapi-wayland vaapi-x-egl vaapi-x11 vdpau vector vt.h vulkan wayland wayland_protocols_1_24 x11 xv zimg zlib [cplayer] Reading config file /etc/mpv/encoding-profiles.conf [cplayer] Applying profile 'default'... [cplayer] Setting option 'v' = '' (flags = 😎 [cplayer] Setting option 'vo' = 'gpu' (flags = 😎 [cplayer] Setting option 'gpu-context' = 'drm' (flags = 😎 [cplayer] Setting option 'hwdec' = 'auto' (flags = 😎 [cplayer] Waiting for scripts... [osd/libass] libass API version: 0x1701000 [osd/libass] libass source: tarball: 0.17.1 [osd/libass] Shaper: FriBidi 1.0.8 (SIMPLE) HarfBuzz-ng 6.0.0 (COMPLEX) [osd/libass] Setting up fonts... [osd/libass] Using font provider fontconfig [osd/libass] Done. [cplayer] Set property: shared-script-properties -> 1 [cplayer] Set property: shared-script-properties -> 1 [cplayer] Done loading scripts. [cplayer] Running hook: ytdl_hook/on_load [ytdl_hook] ytdl:// hook [ytdl_hook] not a ytdl:// url [ifo_dvdnav] Opening youtube.mp4 [bdmv/bluray] Opening youtube.mp4 [file] Opening youtube.mp4 [demux] Trying demuxers for level=normal. [cplayer] Set property: shared-script-properties -> 1 [osd/libass] libass API version: 0x1701000 [osd/libass] libass source: tarball: 0.17.1 [osd/libass] Shaper: FriBidi 1.0.8 (SIMPLE) HarfBuzz-ng 6.0.0 (COMPLEX) [osd/libass] Setting up fonts... [lavf] Found 'mov,mp4,m4a,3gp,3g2,mj2' at score=100 size=2048. [osd/libass] Using font provider fontconfig [osd/libass] Done. [cplayer] Set property: shared-script-properties -> 1 [cplayer] Set property: shared-script-properties -> 1 [demux] Detected file format: mov,mp4,m4a,3gp,3g2,mj2 (libavformat) [cplayer] Opening done: youtube.mp4 [find_files] Loading external files in . [cplayer] Running hook: ytdl_hook/on_preloaded [lavf] select track 0 [lavf] select track 1 [cplayer] (+) Video --vid=1 (*) (h264 1280x720 30.000fps) [cplayer] (+) Audio --aid=1 --alang=eng (*) (aac 2ch 44100Hz) [vo/gpu/opengl] Initializing GPU context 'drm' [vo/gpu] VT_GETMODE failed: Inappropriate ioctl for device [vo/gpu/opengl] Failed to set up VT switcher. Terminal switching will be unavailable. [vo/gpu/opengl] Initializing KMS [vo/gpu/opengl] Picked DRM card 1, primary node /dev/dri/card0 as the default. [vo/gpu/opengl] Driver: sun4i-drm 1.0.0 (20150629) [vo/gpu/opengl/kms] Connector 62 currently connected to encoder 61 [vo/gpu/opengl/kms] Selected Encoder 61 with CRTC 60 [vo/gpu/opengl/kms] Could not find any preferred mode. Picking the first mode. [vo/gpu/opengl/kms] Selected mode: PAL (720x576@50.00Hz) [vo/gpu/opengl] DRM Atomic support found [vo/gpu/opengl/kms] Using primary plane 56 as draw plane [vo/gpu/opengl/kms] Using overlay plane 50 as drmprime plane [vo/gpu] GBM_FORMAT_ARGB8888 supported by draw plane. [vo/gpu] Supported modifier: 0x0 [vo/gpu] Creating GBM device [vo/gpu] Initializing GBM surface (720 x 576) [vo/gpu/opengl] Initializing EGL [vo/gpu/opengl] EGL_VERSION=1.4 [vo/gpu/opengl] EGL_VENDOR=Mesa Project [vo/gpu/opengl] EGL_CLIENT_APIS=OpenGL OpenGL_ES [vo/gpu/opengl] Trying to create Desktop OpenGL context. [vo/gpu/opengl] Attempting to find EGLConfig matching GBM_FORMAT_ARGB8888 [vo/gpu/opengl] Found matching EGLConfig for GBM_FORMAT_ARGB8888 [vo/gpu/opengl] Initializing EGL surface [vo/gpu] GL_VERSION='2.1 Mesa 22.3.6' [vo/gpu] Detected desktop OpenGL 2.1. [vo/gpu] GL_VENDOR='lima' [vo/gpu] GL_RENDERER='Mali400' [vo/gpu] GL_SHADING_LANGUAGE_VERSION='1.20' [vo/gpu] Loaded extension GL_ARB_map_buffer_range. [vo/gpu] Loaded extension GL_ARB_vertex_array_object. [vo/gpu] Loaded extension GL_ARB_texture_rg. [vo/gpu] Loaded extension GL_ARB_sync. [vo/gpu] Loaded extension GL_ARB_invalidate_subdata. [vo/gpu] Loaded extension GL_ARB_get_program_binary. [vo/gpu] Loaded extension GL_ARB_buffer_storage. [vo/gpu] Loaded extension GL_ARB_debug_output. [vo/gpu] Loaded extension GL_KHR_debug. [vo/gpu/opengl] Preparing framebuffer [vo/gpu/opengl] GBM surface using modifier 0x0 [vo/gpu] crtc is not VRR capable [vo/gpu/opengl] Could not find path to render node. VAAPI hwdec will be disabled [vo/gpu] Monitor pixel aspect: 1 [vo/gpu] Disabling HDR peak computation (one or more of the following is not supported: compute shaders=0, SSBO=0). [vo/gpu] No advanced processing required. Enabling dumb mode. [vo/gpu] Assuming 50.000000 FPS for display sync. [vd] Container reported FPS: 30.000000 [vd] Codec list: [vd] h264 - H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10 [vd] h264_v4l2m2m (h264) - V4L2 mem2mem H.264 decoder wrapper [vd] Opening decoder h264 [vd] Looking at hwdec h264-vaapi... [vo/gpu] Loading hwdec drivers for format: 'vaapi' [vo/gpu] Loading hwdec driver 'vaapi' [vo/gpu/vaapi] using EGL dmabuf interop [vo/gpu/vaapi] Trying to open a x11 VA display... [vo/gpu/vaapi] Trying to open a wayland VA display... [vo/gpu/vaapi] Trying to open a drm VA display... [vo/gpu/vaapi] Could not create a VA display. [vo/gpu] Loading failed. [vd] Could not create device. [vd] Looking at hwdec h264-vdpau... [vo/gpu] Loading hwdec drivers for format: 'vdpau' [vd] Could not create device. [vd] Looking at hwdec h264-vaapi-copy... [vd] Could not create device. [vd] Looking at hwdec h264-vdpau-copy... [vd] Could not create device. [vd] Looking at hwdec h264_v4l2m2m-v4l2m2m-copy... [vd] Trying hardware decoding via h264_v4l2m2m-v4l2m2m-copy. [vd] Using underlying hw-decoder 'h264_v4l2m2m' [ffmpeg/video] h264_v4l2m2m: Could not find a valid device [ffmpeg/video] h264_v4l2m2m: can't configure decoder [vd] Could not open codec. [vd] Falling back to software decoding. [vd] Detected 4 logical cores. [vd] Requesting 5 threads for decoding. [vd] Selected codec: h264 (H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10) [vf] User filter list: [vf] (empty) [ad] Codec list: [ad] aac - AAC (Advanced Audio Coding) [ad] aac_fixed (aac) - AAC (Advanced Audio Coding) [ad] Opening decoder aac [ad] Requesting 1 threads for decoding. [ad] Selected codec: aac (AAC (Advanced Audio Coding)) [af] User filter list: [af] (empty) [cplayer] Starting playback... [af] [in] 44100Hz stereo 2ch floatp [vd] DR failed - disabling. [af] [userspeed] 44100Hz stereo 2ch floatp [af] [userspeed] (disabled) [af] [convert] 44100Hz stereo 2ch floatp [vd] Using software decoding. [vd] Decoder format: 1280x720 yuv420p bt.709/bt.709/bt.1886/limited/auto CL=mpeg2/4/h264 [vf] [in] 1280x720 yuv420p bt.709/bt.709/bt.1886/limited/display SP=1.000000 CL=mpeg2/4/h264 [vf] [userdeint] 1280x720 yuv420p bt.709/bt.709/bt.1886/limited/display SP=1.000000 CL=mpeg2/4/h264 [vf] [userdeint] (disabled) [vf] [autorotate] 1280x720 yuv420p bt.709/bt.709/bt.1886/limited/display SP=1.000000 CL=mpeg2/4/h264 [vf] [autorotate] (disabled) [vf] [convert] 1280x720 yuv420p bt.709/bt.709/bt.1886/limited/display SP=1.000000 CL=mpeg2/4/h264 [vf] [convert] (disabled) [vf] [out] 1280x720 yuv420p bt.709/bt.709/bt.1886/limited/display SP=1.000000 CL=mpeg2/4/h264 [ao] Trying audio driver 'pipewire' [ao/pipewire] requested format: 44100 Hz, stereo channels, floatp [ao/pipewire] Headers version: 0.3.65 [ao/pipewire] Library version: 0.3.65 [W][36208.299646] pw.conf | [ conf.c: 939 try_load_conf()] can't load config client.conf: No such file or directory [E][36208.300267] pw.conf | [ conf.c: 963 pw_conf_load_conf_for_context()] can't load default config client.conf: No such file or directory [ao] Trying audio driver 'pulse' [ao/pulse] requested format: 44100 Hz, stereo channels, floatp xcb_connection_has_error() returned true [ao/pulse] Library version: 16.1.0 [ao/pulse] Proto: 35 [ao/pulse] Server proto: 4294967295 [ao] Trying audio driver 'alsa' [ao/alsa] requested format: 44100 Hz, stereo channels, floatp [ao/alsa] using ALSA version: 1.2.8 [ao/alsa] opening device 'default' [ao/alsa] trying format float/14 [ao/alsa] hw pausing supported: yes [ao/alsa] buffersize: 4410 samples [ao/alsa] period size: 882 samples [ao/alsa] device buffer: 4410 samples. [ao/alsa] using soft-buffer of 8820 samples. [cplayer] AO: [alsa] 44100Hz stereo 2ch float [cplayer] AO: Description: ALSA audio output [autoconvert] inserting resampler [swresample] format change, reinitializing resampler [swresample] 44100Hz stereo floatp -> 44100Hz stereo float [af] [out] 44100Hz stereo 2ch float [cplayer] VO: [gpu] 1280x720 yuv420p [cplayer] VO: Description: Shader-based GPU Renderer [vo/gpu] DR path suspected slow/uncached, disabling..reconfig to 1280x720 yuv420p bt.709/bt.709/bt.1886/limited/display SP=1.000000 CL=mpeg2/4/h264 [vo/gpu] Resize: 720x576 [vo/gpu] Window size: 720x576 (Borders: l=0 t=0 r=0 b=0) [vo/gpu] Video source: 1280x720 (1:1) [vo/gpu] Video display: (0, 0) 1280x720 -> (0, 85) 720x405 [vo/gpu] Video scale: 0.562500/0.562500 [vo/gpu] OSD borders: l=0 t=85 r=0 b=86 [vo/gpu] Video borders: l=0 t=85 r=0 b=86 [vo/gpu] Texture for plane 0: 1280x720 [vo/gpu] Texture for plane 1: 640x360 [vo/gpu] Texture for plane 2: 640x360 [vo/gpu] No advanced processing required. Enabling dumb mode. [cplayer] first video frame after restart shown [cplayer] Set property: shared-script-properties -> 1 [vo/gpu/opengl] GBM surface using modifier 0x0 [cplayer] audio ready [cplayer] starting audio playback [cplayer] playback restart complete @ 0.000000, audio=playing, video=playing [ao/alsa] starting AO [statusline] AV: 00:00:00 / 00:04:55 (0%) A-V: -0.000 [cplayer] Set property: shared-script-properties -> 1 [vo/gpu/opengl] GBM surface using modifier 0x0 [statusline] AV: 00:00:00 / 00:04:55 (0%) A-V: -0.000 [vo/gpu/opengl] GBM surface using modifier 0x0 [statusline] AV: 00:01:12 / 00:04:55 (25%) A-V: -0.000 Dropped: 1 [cplayer] EOF code: 5 [cplayer] finished playback, success (reason 3) [cplayer] [cplayer] Exiting... (Quit) [cplayer] Set property: shared-script-properties -> 1 roberto@orangepizero:~$ Edited April 30, 2023 by robertoj 0 Quote Link to comment Share on other sites More sharing options...
usual user Posted April 30, 2023 Share Posted April 30, 2023 7 hours ago, robertoj said: I didn't have: vf_deinterlace_v4l2m2m Hmm, when I take another look at my previously posted ffmpeg.spec addition, I see that I also carry a patchset with the name like that from a branch of @jernej github. Furthermore, I see that I also apply other patches from the v4l2-drmprime-n5.1.2 branch. Do you have similar patches in your portfolio? 0 Quote Link to comment Share on other sites More sharing options...
robertoj Posted April 30, 2023 Share Posted April 30, 2023 2 hours ago, usual user said: Hmm, when I take another look at my previously posted ffmpeg.spec addition, I see that I also carry a patchset with the name like that from a branch of @jernej github. Furthermore, I see that I also apply other patches from the v4l2-drmprime-n5.1.2 branch. Do you have similar patches in your portfolio? Yes. I have applied that drmprime patch also. I think it is a drm or gbm issue now. 0 Quote Link to comment Share on other sites More sharing options...
robertoj Posted May 2, 2023 Share Posted May 2, 2023 What would be the closest orange pi to orange pi zero? Ideally it would be H3, with both HDMI and analog video. 0 Quote Link to comment Share on other sites More sharing options...
usual user Posted May 3, 2023 Share Posted May 3, 2023 On 5/2/2023 at 3:40 AM, robertoj said: What would be the closest orange pi to orange pi zero? Sorry, but I don't quite understand what you're asking for here. When it comes to improving the display subsystem, I would start by rebuilding my kernel package. Since you have confirmed that LibreElec works, my first approach would be to apply all relevant LE patches. But I understand that it is apparently not so easy to implement with your build system. 0 Quote Link to comment Share on other sites More sharing options...
robertoj Posted May 4, 2023 Share Posted May 4, 2023 (edited) On 5/2/2023 at 9:41 PM, usual user said: Sorry, but I don't quite understand what you're asking for here. When it comes to improving the display subsystem, I would start by rebuilding my kernel package. Since you have confirmed that LibreElec works, my first approach would be to apply all relevant LE patches. But I understand that it is apparently not so easy to implement with your build system. what I meant is: I want to buy an orangepi H3 with HDMI port, so that I see if there's any difference in hardware decoding. But the ultimate goal is that I get hardware decoding in analog video... it is possible, because Kodi does it. I has been a very long time since I used RedHat... I used yum ... I will see whether "dnf builddeps" has an equivalent in Debian I found in this discussion that: if ffmpeg hardware decoding works with "-f null -", but fails to present the video (my situation), then the problem might be the display driver: https://forum.libreelec.tv/thread/25283-allwinner-h6-hevc/?postID=167090#post167090 Another important variable is the way mpv was configured before compile. Anyone who got it working, check the first few lines of running MPV. For example (something I found in the mpv github): Spoiler [cplayer] Command line options: '../VideoClip/Rings_2x2.mp4' '-v' '--hwdec=vaapi' '--vo=opengl:backend=drm-egl' [cplayer] mpv git-0cdd8ff (C) 2000-2016 mpv/MPlayer/mplayer2 projects [cplayer] built on Wed Mar 16 12:49:45 CST 2016 [cplayer] ffmpeg library versions: [cplayer] libavutil 55.17.103 [cplayer] libavcodec 57.24.102 [cplayer] libavformat 57.25.100 [cplayer] libswscale 4.0.100 [cplayer] libavfilter 6.31.100 [cplayer] libswresample 2.0.101 [cplayer] ffmpeg version: 3.0 [cplayer] [cplayer] Configuration: ./waf configure --disable-egl-x11 [cplayer] List of enabled features: any-gl asm atomic-builtins atomics audio-input av-avpacket-int64-duration av-new-pixdesc av-pix-fmt-mmal av-subtitle-nopict av-version-info avcodec-chroma-pos-api avcodec-profile-name avframe-metadata avframe-skip-samples build-date cplayer debug-build desktop-gl dlopen drm dvbin egl-drm enca encoding fchmod gbm gbm.h gl gl-x11 glibc-thread-name glob iconv libass libass-osd libav libavfilter libdl libm librt libswresample linux-fstatfs lua nanosleep optimize oss-audio oss-audio-native posix posix-or-mingw posix-spawn pthreads resampler shm sse4-intrinsics subprocess termios tv tv-v4l2 vaapi vaapi-drm vaapi-glx vaapi-hwaccel vaapi-x11 vdpau vdpau-gl-x11 videodev vt.h x11 xext xinerama xrandr zlib Edited May 4, 2023 by robertoj 0 Quote Link to comment Share on other sites More sharing options...
usual user Posted May 4, 2023 Share Posted May 4, 2023 13 hours ago, robertoj said: I want to buy an orangepi H3 with HDMI port, so that I see if there's any difference in hardware decoding. With regard to the hardware decoder, this will not provide any new insights. For the video decoder it is only relevant that the subsequent display pipeline can process the decoder output format. Be it GBM, Wayland, Xwindow or /dev/null. See here for comparison a gstreamer video pipeline (gst-play-1.0-pipeline.pdf). It is always identical, regardless of which display pipeline (GstXvImageSink) ultimately comes to fruition. The decoder component (v4l2slh264dec) is backed by the respective hardware and is unmodified interchangeable as long as v4l2-compliance shows sufficient driver conformity. 13 hours ago, robertoj said: But the ultimate goal is that I get hardware decoding in analog video. No, the ultimate goal is to compose a video pipeline that is backed by a hardware decoder and to have a display pipeline that can display the format provided by the video pipeline in a hardware-accelerated manner. 13 hours ago, robertoj said: I will see whether "dnf builddeps" has an equivalent in Debian If I keep seeing the long dependency lists that are given to install when it comes to building a software, I would guess that it does not exist. But since this is about the kernel package, I don't see the problem here because it is self-contained and does not require any external dependencies. I see here rather the problem of using newly built kernels comfortably parallel in Armbian. This is due to the boot method and the way Armbian installs its kernel (a single kernel, not multiple kernels in parallel). But this can be changed, as I have already demonstrated several times in other forum threads. 13 hours ago, robertoj said: if ffmpeg hardware decoding works with "-f null -", but fails to present the video (my situation), then the problem might be the display driver: This works because the subsequent display pipeline (dev/null) can handle any format. The display driver is only one part of the display pipeline, but probably the component that does not yet provide all the necessary prerequisites. This will certainly be added in LE with their kernel patches so that they can use a hardware-accelerate display pipeline. A display pipeline has no business with video decoding, we're not in x86 architecture, it deals only with already decoded content. 0 Quote Link to comment Share on other sites More sharing options...
robertoj Posted May 8, 2023 Share Posted May 8, 2023 Thank you… I will try with more LibreElec patches this week. but LibreElec’s windowing system is GBM, not X11… so that’s a thing that I need to follow… somehow. 0 Quote Link to comment Share on other sites More sharing options...
usual user Posted May 11, 2023 Share Posted May 11, 2023 On 5/9/2023 at 12:59 AM, robertoj said: but LibreElec’s windowing system is GBM, not X11… so that’s a thing that I need to follow… somehow. You want a working GBM as the first step. An application can use the APIs provided by the kernel via GBM. It becomes the master user of the drm/KMS, i.e. if e.g. Kodi uses the display subsystem via GBM, it is the only user who has access to it. Other graphics applications will not be able to use the display subsystem at the same time. A desktop environment framework accesses the display subsystem using the same kernel APIs as GBM, and therefore becomes the master of drm/KMS. However, it manages the display subsystem resources so that multiple applications can use them simultaneously. For example, Kodi can be displayed in one window and a web browser in another window at the same time. When it comes to choosing a desktop environment, Xwindow is a bad choice. It was developed for x86 architecture and therefore cannot deal efficiently with these new requirements due to its design. Their developers at that time also recognized this and therefore developed Wayland from scratch. So when it comes to efficiently using a video pipeline in combination with a display pipeline, a desktop environment with Wayland backend is the first choice. But the good thing is, nowadays the majority support in current mainline is already available out-of-the-box. So in order to support a particular device, it is only necessary that a mainline kernel with the necessary drivers is available and everything else is just generic up-to-date mainline software. For your device you have confirmed that LE works with a mainline kernel, so all necessary code should be available, only it is not yet integrated out-of-the-box into the mainline kernel. 0 Quote Link to comment Share on other sites More sharing options...
mrfusion Posted May 26, 2023 Share Posted May 26, 2023 Hi, sorry to jump in on this thread, but I recently also tried to play hardware accelerated video (preferably on a virtual terminal without X11/Wayland) on my Pine A64 with current Armbian image (derived from Ubuntu 23.02). Unfortunately no method seems to work. Am I doing something wrong? What would be the "easiest" way to get mainline hw accelerated video decoding on A64? Is there another popular general purpose distribution I could try (except LibreELEC with Kodi)? Kernel is 5.15.93-sunxi64 and has cedrus modules: lsmod | grep cedrus sunxi_cedrus 49152 0 videobuf2_dma_contig 24576 1 sunxi_cedrus v4l2_mem2mem 36864 1 sunxi_cedrus videobuf2_v4l2 24576 2 sunxi_cedrus,v4l2_mem2mem videobuf2_common 49152 5 sunxi_cedrus,videobuf2_dma_contig,videobuf2_v4l2,v4l2_mem2mem,videobuf2_memops videodev 204800 4 sunxi_cedrus,videobuf2_v4l2,videobuf2_common,v4l2_mem2mem mc 49152 5 sunxi_cedrus,videodev,videobuf2_v4l2,videobuf2_common,v4l2_mem2mem Gstreamer is version 1.20, and it seems to have provide required codecs (after installing gstreamer1.0-plugins-bad). gst-play-1.0 --version gst-play-1.0 version 1.20.1 GStreamer 1.20.3 gst-inspect-1.0 | grep v4l2 v4l2codecs: v4l2slh264dec: V4L2 Stateless H.264 Video Decoder v4l2codecs: v4l2slmpeg2dec: V4L2 Stateless Mpeg2 Video Decoder v4l2codecs: v4l2slvp8alphadecodebin: VP8 Alpha Decoder v4l2codecs: v4l2slvp8dec: V4L2 Stateless VP8 Video Decoder video4linux2: v4l2deviceprovider (GstDeviceProviderFactory) video4linux2: v4l2radio: Radio (video4linux2) Tuner video4linux2: v4l2sink: Video (video4linux2) Sink video4linux2: v4l2src: Video (video4linux2) Source Unfortunately gst-play doesn't work, it completely freezes my Pine64 (not even Ctrl-Alt-Delete works anymore) after "Redistribute latency...". gst-play-1.0 bbb_sunflower_1080p_60fps_normal.mp4 Kodi 19.4 from apt repo also doesn't play hw accelerated (although it should as mentioned in post #1), on start it prints this error: $ kodi libva info: VA-API version 1.14.0 libva error: vaGetDriverNameByIndex() failed with unknown libva error, driver_name = (null) mpv also doesn't work: $ mpv bbb_sunflower_1080p_60fps_normal.mp4 (+) Video --vid=1 (*) (h264 1920x1080 60.000fps) (+) Audio --aid=1 (*) (mp3 2ch 48000Hz) Audio --aid=2 (*) (ac3 6ch 48000Hz) File tags: Artist: Blender Foundation 2008, Janus Bager Kristensen 2013 Comment: Creative Commons Attribution 3.0 - http://bbb3d.renderfarming.net Composer: Sacha Goedegebure Genre: Animation Title: Big Buck Bunny, Sunflower version [vo/gpu/opengl] Cannot retrieve DRM resources: Operation not supported [vo/gpu/opengl] Failed to create KMS. [vo/sdl] Using opengl [vo/sdl] Warning: this legacy VO has bad performance. Consider fixing your graphics drivers, or not forcing the sdl VO. AO: [alsa] 48000Hz stereo 2ch float VO: [sdl] 1920x1080 yuv420p AV: 00:00:03 / 00:10:34 (1%) A-V: 0.463 Dropped: 167 If I force hw accel, I get these warnings: $ mpv --hwdec=auto --hwdec-codecs=all bbb_sunflower_1080p_60fps_normal.mp4 bbb_sunflower_1080p_60fps_normal.mp4 Playing: bbb_sunflower_1080p_60fps_normal.mp4 (+) Video --vid=1 (*) (h264 1920x1080 60.000fps) (+) Audio --aid=1 (*) (mp3 2ch 48000Hz) Audio --aid=2 (*) (ac3 6ch 48000Hz) File tags: Artist: Blender Foundation 2008, Janus Bager Kristensen 2013 Comment: Creative Commons Attribution 3.0 - http://bbb3d.renderfarming.net Composer: Sacha Goedegebure Genre: Animation Title: Big Buck Bunny, Sunflower version [vo/gpu/opengl] Cannot retrieve DRM resources: Operation not supported [vo/gpu/opengl] Failed to create KMS. [vo/sdl] Using opengl [vo/sdl] Warning: this legacy VO has bad performance. Consider fixing your graphics drivers, or not forcing the sdl VO. [ffmpeg] AVHWDeviceContext: Cannot load libcuda.so.1 [ffmpeg] AVHWDeviceContext: Could not dynamically load CUDA [vaapi] libva: vaGetDriverNameByIndex() failed with unknown libva error, driver_name = (null) [ffmpeg/video] h264_v4l2m2m: Could not find a valid device [ffmpeg/video] h264_v4l2m2m: can't configure decoder Could not open codec. AO: [alsa] 48000Hz stereo 2ch float VO: [sdl] 1920x1080 yuv420p AV: 00:00:02 / 00:10:34 (0%) A-V: 0.305 Dropped: 135 Audio/Video desynchronisation detected! Possible reasons include too slow hardware, temporary CPU spikes, broken drivers, and broken files. Audio position will not match to the video (see A-V status field). AV: 00:00:13 / 00:10:34 (2%) A-V: 5.562 Dropped: 648 Audio device underrun detected. AV: 00:00:23 / 00:10:34 (4%) A-V: 11.188 Dropped: 1150 mplayer also competely freezes the Pine A64 (like gst-play). But ffmpeg even seems to have necessary decoders? $ ffmpeg -hide_banner -decoders | grep v4l2 V..... h263_v4l2m2m V4L2 mem2mem H.263 decoder wrapper (codec h263) V..... h264_v4l2m2m V4L2 mem2mem H.264 decoder wrapper (codec h264) V..... hevc_v4l2m2m V4L2 mem2mem HEVC decoder wrapper (codec hevc) V..... mpeg1_v4l2m2m V4L2 mem2mem MPEG1 decoder wrapper (codec mpeg1video) V..... mpeg2_v4l2m2m V4L2 mem2mem MPEG2 decoder wrapper (codec mpeg2video) V..... mpeg4_v4l2m2m V4L2 mem2mem MPEG4 decoder wrapper (codec mpeg4) V..... vc1_v4l2m2m V4L2 mem2mem VC1 decoder wrapper (codec vc1) V..... vp8_v4l2m2m V4L2 mem2mem VP8 decoder wrapper (codec vp8) V..... vp9_v4l2m2m V4L2 mem2mem VP9 decoder wrapper (codec vp9) $ ffmpeg -hide_banner -hwaccels Hardware acceleration methods: vdpau cuda vaapi drm opencl Needless to say ffplay also doesn't work. When forced: $ ffplay -vcodec h264_v4l2m2m bbb_sunflower_1080p_60fps_normal.mp4 ... [h264_v4l2m2m @ 0xffff6002b360] Could not find a valid device [h264_v4l2m2m @ 0xffff6002b360] can't configure decoder Output of vainfo: $ vainfo error: XDG_RUNTIME_DIR not set in the environment. error: can't connect to X server! libva info: VA-API version 1.14.0 libva error: vaGetDriverNameByIndex() failed with unknown libva error, driver_name = (null) vaInitialize failed with error code -1 (unknown libva error),exit Output of v4l2-compliance: v4l2-compliance 1.22.1, 64 bits, 64-bit time_t Compliance test for cedrus device /dev/video0: Driver Info: Driver name : cedrus Card type : cedrus Bus info : platform:cedrus Driver version : 5.15.93 Capabilities : 0x84208000 Video Memory-to-Memory Streaming Extended Pix Format Device Capabilities Device Caps : 0x04208000 Video Memory-to-Memory Streaming Extended Pix Format Media Driver Info: Driver name : cedrus Model : cedrus Serial : Bus info : platform:cedrus Media version : 5.15.93 Hardware revision: 0x00000000 (0) Driver version : 5.15.93 Interface Info: ID : 0x0300000c Type : V4L Video Entity Info: ID : 0x00000001 (1) Name : cedrus-source Function : V4L2 I/O Pad 0x01000002 : 0: Source Link 0x02000008: to remote pad 0x1000004 of entity 'cedrus-proc' (Video Decoder): Data, Enabled, Immutable Required ioctls: test MC information (see 'Media Driver Info' above): OK test VIDIOC_QUERYCAP: OK test invalid ioctls: OK Allow for multiple opens: test second /dev/video0 open: OK test VIDIOC_QUERYCAP: OK test VIDIOC_G/S_PRIORITY: OK test for unlimited opens: OK Debug ioctls: test VIDIOC_DBG_G/S_REGISTER: OK (Not Supported) test VIDIOC_LOG_STATUS: OK (Not Supported) Input ioctls: test VIDIOC_G/S_TUNER/ENUM_FREQ_BANDS: OK (Not Supported) test VIDIOC_G/S_FREQUENCY: OK (Not Supported) test VIDIOC_S_HW_FREQ_SEEK: OK (Not Supported) test VIDIOC_ENUMAUDIO: OK (Not Supported) test VIDIOC_G/S/ENUMINPUT: OK (Not Supported) test VIDIOC_G/S_AUDIO: OK (Not Supported) Inputs: 0 Audio Inputs: 0 Tuners: 0 Output ioctls: test VIDIOC_G/S_MODULATOR: OK (Not Supported) test VIDIOC_G/S_FREQUENCY: OK (Not Supported) test VIDIOC_ENUMAUDOUT: OK (Not Supported) test VIDIOC_G/S/ENUMOUTPUT: OK (Not Supported) test VIDIOC_G/S_AUDOUT: OK (Not Supported) Outputs: 0 Audio Outputs: 0 Modulators: 0 Input/Output configuration ioctls: test VIDIOC_ENUM/G/S/QUERY_STD: OK (Not Supported) test VIDIOC_ENUM/G/S/QUERY_DV_TIMINGS: OK (Not Supported) test VIDIOC_DV_TIMINGS_CAP: OK (Not Supported) test VIDIOC_G/S_EDID: OK (Not Supported) Control ioctls: test VIDIOC_QUERY_EXT_CTRL/QUERYMENU: OK test VIDIOC_QUERYCTRL: OK test VIDIOC_G/S_CTRL: OK fail: v4l2-test-controls.cpp(717): try_ext_ctrls returned an error (22) test VIDIOC_G/S/TRY_EXT_CTRLS: FAIL test VIDIOC_(UN)SUBSCRIBE_EVENT/DQEVENT: OK test VIDIOC_G/S_JPEGCOMP: OK (Not Supported) Standard Controls: 7 Private Controls: 0 Standard Compound Controls: 15 Private Compound Controls: 0 Format ioctls: fail: v4l2-test-formats.cpp(263): fmtdesc.description mismatch: was 'Sunxi Tiled NV12 Format', expected 'Y/CbCr 4:2:0 (32x32 Linear)' test VIDIOC_ENUM_FMT/FRAMESIZES/FRAMEINTERVALS: FAIL test VIDIOC_G/S_PARM: OK (Not Supported) test VIDIOC_G_FBUF: OK (Not Supported) fail: v4l2-test-formats.cpp(460): pixelformat 32315453 (ST12) for buftype 1 not reported by ENUM_FMT test VIDIOC_G_FMT: FAIL fail: v4l2-test-formats.cpp(460): pixelformat 32315453 (ST12) for buftype 1 not reported by ENUM_FMT test VIDIOC_TRY_FMT: FAIL fail: v4l2-test-formats.cpp(460): pixelformat 32315453 (ST12) for buftype 1 not reported by ENUM_FMT test VIDIOC_S_FMT: FAIL test VIDIOC_G_SLICED_VBI_CAP: OK (Not Supported) test Cropping: OK (Not Supported) test Composing: OK (Not Supported) test Scaling: OK (Not Supported) Codec ioctls: test VIDIOC_(TRY_)ENCODER_CMD: OK (Not Supported) test VIDIOC_G_ENC_INDEX: OK (Not Supported) fail: v4l2-test-codecs.cpp(122): ret != 0 test VIDIOC_(TRY_)DECODER_CMD: FAIL Buffer ioctls: test VIDIOC_REQBUFS/CREATE_BUFS/QUERYBUF: OK test VIDIOC_EXPBUF: OK test Requests: OK (Not Supported) Total for cedrus device /dev/video0: 46, Succeeded: 40, Failed: 6, Warnings: 0 So what is going on here? Am I missing a package or kernel module (concerning drm?)? Or do I need an ffmpeg with `--enable-v4l2-request`? And/or an libva-v4l2-request? Where do I get one that compiles with kernel 5.15? Thank you! 0 Quote Link to comment Share on other sites More sharing options...
usual user Posted May 27, 2023 Share Posted May 27, 2023 12 hours ago, mrfusion said: So what is going on here? Am I missing a package or kernel module (concerning drm?)? IMHO, you're using a software stack that's way too outdated. You are missing features and improvements that have already landed. I'm not an expert in analyzing compliance logs, but if you compare your log to the one provided by @robertoj above, you'll see that your kernel at least lacks features that its provides: Format ioctls: @robertoj test VIDIOC_ENUM_FMT/FRAMESIZES/FRAMEINTERVALS: OK @mrfusion fail: v4l2-test-formats.cpp(263): fmtdesc.description mismatch: was 'Sunxi Tiled NV12 Format', expected 'Y/CbCr 4:2:0 (32x32 Linear)' @mrfusion test VIDIOC_ENUM_FMT/FRAMESIZES/FRAMEINTERVALS: FAIL @robertoj test VIDIOC_G_FMT: OK @robertoj test VIDIOC_TRY_FMT: OK @robertoj test VIDIOC_S_FMT: OK @mrfusion fail: v4l2-test-formats.cpp(460): pixelformat 32315453 (ST12) for buftype 1 not reported by ENUM_FMT @mrfusion test VIDIOC_G_FMT: FAIL @mrfusion fail: v4l2-test-formats.cpp(460): pixelformat 32315453 (ST12) for buftype 1 not reported by ENUM_FMT @mrfusion test VIDIOC_TRY_FMT: FAIL @mrfusion fail: v4l2-test-formats.cpp(460): pixelformat 32315453 (ST12) for buftype 1 not reported by ENUM_FMT @mrfusion test VIDIOC_S_FMT: FAIL 0 Quote Link to comment Share on other sites More sharing options...
robertoj Posted May 27, 2023 Share Posted May 27, 2023 (edited) I am using allwinner h3, and you are using A64… I don’t know whether cedrus.ko is right for you. Look in this thread here, whether any kernel module has created a /dev/video device that can input h264, like cedrus can. Run libreeelec again and take note of the kernel version, the kernel modules, and the “.config”, and try to rebuild armbian with those options. https://github.com/robertojguerra/orangepi-zero-full-setup/blob/main/README2.md then you would be at the same spot where I am, with the kernel being unable to display the video due to some gbm missing functionality in my kernel. Edited May 27, 2023 by robertoj 0 Quote Link to comment Share on other sites More sharing options...
mrfusion Posted May 29, 2023 Share Posted May 29, 2023 Thanks for your valuable feedback, both of you! In the meantime I've tried LibreELEC (hw accel in kodi works, but no ethernet or wifi is detect, so not really usable), fedora iot (newer software stack, same problems), and Armbian Rolling Release CI based on Ubuntu Lunar (which also has the same errors; freeze with gstreamer, vaapi-error with kodi, ffmpeg, mpv). I think I'm giving up 😕 0 Quote Link to comment Share on other sites More sharing options...
robertoj Posted May 31, 2023 Share Posted May 31, 2023 (edited) Don’t give up yet. i found this discussion, where retroarch is recompiled, using a libgbm-dev installed just in time… so that Mesa’s (GPU library) gbm component matches exactly with the desired retroarch in that discussion. i have a feeling that we must do the same, but compiling ffmpeg and mpv with the latest available libgbm-dev in place… perhaps just mpv. Usualuser… can you share the mesa and libgbm version you are using? dpkg -l | grep libgbm or libOSmesa MAYBE there are some useful tips here: https://bbs.archlinux.org/viewtopic.php?id=278390 Edited June 1, 2023 by robertoj 0 Quote Link to comment Share on other sites More sharing options...
usual user Posted June 1, 2023 Share Posted June 1, 2023 On 5/31/2023 at 9:17 PM, robertoj said: Usualuser… can you share the mesa and libgbm version you are using? dpkg -l | grep libgbm bash: dpkg: command not found... I'm currently running mesa 23.0.3 and since libgbm is an integral part of mesa, the version is of course identical. However, the current version is not really important, as the necessary API support is already very mature. It is only important that it is built with the current headers of its BuildRequires to represent the status quo. On 5/31/2023 at 9:17 PM, robertoj said: i have a feeling that we must do the same, but compiling ffmpeg and mpv with the latest available libgbm-dev in place… perhaps just mpv. Because the API between gbm and mpv does not change, but possibly by applying kernel patches between kernel and gbm (sun4i-drm_dri), it is probably more appropriate to rebuild mesa with the updated kernel headers. BTW, to get retroarch I would do: dnf install retroarch 0 Quote Link to comment Share on other sites More sharing options...
robertoj Posted June 1, 2023 Share Posted June 1, 2023 (edited) Dpkg and apt won’t work For you… since you are using an rpm/yum/dnf operating system 🤣 good point. Mesa may also need recompilation to match a patched kernel (analog video patch), and see whether LibreElec has done anything to Mesa. update: LibreElec patched the linux kernel to add analog video and there’s only one H file affected for this purpose: sun8i_mixer.h but I will still recompile mesa to see if it helps the gbm functionality Patch: https://github.com/LibreELEC/LibreELEC.tv/blob/d43e1a4d9222a949a346f23779c547f7e1208c43/projects/Allwinner/patches/linux/0036-wip-h3-h5-cvbs.patch#L4 instructions: https://github.com/robertojguerra/orangepi-zero-full-setup/blob/main/README2.md Edited June 2, 2023 by robertoj 0 Quote Link to comment Share on other sites More sharing options...
robertoj Posted July 18, 2023 Share Posted July 18, 2023 I have been unable to work on my armbian projects for a month... Has anybody made any progress about H264 decoding in H3? Thank you! 0 Quote Link to comment Share on other sites More sharing options...
Khánh Ngô Posted August 12, 2023 Share Posted August 12, 2023 You can check this https://users.armbian.com/jock/misc/ use jammy and enjoy hwdec drm this using mpv, compiled by jock find command in this post 0 Quote Link to comment Share on other sites More sharing options...
BOFFBOY Posted January 10 Share Posted January 10 (edited) Hi all, first time user of OPI5+, does anyone know if there is the video GPU fix for Armbian img yet? thanks edit: found the fix. thanks Edited January 11 by BOFFBOY 0 Quote Link to comment Share on other sites More sharing options...
Andyshrk Posted July 30 Share Posted July 30 (edited) Quote Media players: mpv and depends on FFmpeg for hardware acceleration (and must be patched together with it). VLC can be set to access libva-v4l2-request directly. Kodi 19.0+ supports hardware acceleration out of the box without any out-of-tree patches. How does Kodi support this feature? By patched ffmpeg or gsteamer? I tested armbian + kodi 20.5 with rkdev2 patch on rk3588 linux 6.10, but it seems not used hardware decoder,the cpu load is very high。 But if i play the same video by chromium,the cpu load only use 10%, and i can see it use rkvdec2 Edited July 30 by Andyshrk 0 Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.