

jwalds
Members-
Posts
5 -
Joined
-
Last visited
Recent Profile Visitors
The recent visitors block is disabled and is not being shown to other users.
-
I am not sure where I can find a version of ffmepg that supports the cedrus driver and that works with the some form of modern version of ffmpeg source tree. Anyone who knows?
-
Okay, I have the driver loaded: root@orangepizero2w:/boot# dmesg | grep cedrus [ 8.578154] sunxi_cedrus: module is from the staging directory, the quality is unknown, you have been warned. [ 8.580382] cedrus 1c0e000.video-codec: Device registered as /dev/video2 I also did this: root@orangepizero2w:/boot# v4l2-ctl --all --device /dev/video2 Driver Info: Driver name : cedrus Card type : cedrus Bus info : platform:cedrus Driver version : 6.1.31 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 : 6.1.31 Hardware revision: 0x00000000 (0) Driver version : 6.1.31 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 Priority: 2 Format Video Capture: Width/Height : 16/32 Pixel Format : 'ST12' (Y/UV 4:2:0 (32x32 Linear)) Field : None Bytes per Line : 32 Size Image : 2048 Colorspace : Default Transfer Function : Default (maps to Rec. 709) YCbCr/HSV Encoding: Default (maps to ITU-R 601) Quantization : Default (maps to Full Range) Flags : Format Video Output: Width/Height : 16/32 Pixel Format : 'MG2S' (MPEG-2 Parsed Slice Data) Field : None Bytes per Line : 0 Size Image : 1024 Colorspace : Default Transfer Function : Default (maps to Rec. 709) YCbCr/HSV Encoding: Default (maps to ITU-R 601) Quantization : Default (maps to Full Range) Flags : Codec Controls h264_profile 0x00990a6b (menu) : min=0 max=4 default=2 value=2 (Main) 0: Baseline 1: Constrained Baseline 2: Main 4: High Stateless Codec Controls h264_decode_mode 0x00a40900 (menu) : min=0 max=0 default=0 value=0 (Slice-Based) 0: Slice-Based h264_start_code 0x00a40901 (menu) : min=0 max=0 default=0 value=0 (No Start Code) 0: No Start Code h264_sequence_parameter_set 0x00a40902 (h264-sps): value=unsupported payload type flags=has-payload h264_picture_parameter_set 0x00a40903 (h264-pps): value=unsupported payload type flags=has-payload h264_scaling_matrix 0x00a40904 (h264-scaling-matrix): value=unsupported payload type flags=has-payload h264_prediction_weight_table 0x00a40905 (h264-pred-weights): value=unsupported payload type flags=has-payload h264_slice_parameters 0x00a40906 (h264-slice-params): value=unsupported payload type flags=has-payload h264_decode_parameters 0x00a40907 (h264-decode-params): value=unsupported payload type flags=has-payload vp8_frame_parameters 0x00a409c8 (vp8-frame): value=unsupported payload type flags=has-payload mpeg_2_sequence_header 0x00a409dc (mpeg2-sequence): value=unsupported payload type flags=has-payload mpeg_2_picture_header 0x00a409dd (mpeg2-picture): value=unsupported payload type flags=has-payload mpeg_2_quantisation_matrices 0x00a409de (mpeg2-quantisation): value=unsupported payload type flags=has-payload hevc_sequence_parameter_set 0x00a40a90 (hevc-sps): value=unsupported payload type flags=has-payload hevc_picture_parameter_set 0x00a40a91 (hevc-sps): value=unsupported payload type flags=has-payload hevc_slice_parameters 0x00a40a92 (hevc-slice-params): elems=1 dims=[1] flags=has-payload, dynamic-array hevc_scaling_matrix 0x00a40a93 (hevc-scaling-matrix): value=unsupported payload type flags=has-payload hevc_decode_parameters 0x00a40a94 (hevc-decode-params): value=unsupported payload type flags=has-payload hevc_decode_mode 0x00a40a95 (menu) : min=0 max=0 default=0 value=0 (Slice-Based) 0: Slice-Based hevc_start_code 0x00a40a96 (menu) : min=0 max=0 default=0 value=0 (No Start Code) 0: No Start Code hevc_entry_point_offsets 0x00a40a97 (u32) : min=0 max=4294967295 step=1 default=0 elems=1 dims=[256] flags= has-payload, dynamic-array I take that the driver is loaded successfully then, so the next step would be to build ffmpeg with cedrus support?
-
Thanks everyone for the answers! Upon looking at the many patches you posted there going, this one sticks out for me https://github.com/armbian/build/blob/main/patch/kernel/archive/sunxi-6.13/patches.armbian/arm64-dts-allwinner-sun50i-h616-Add-VPU-node.patch Maybe that one would work for H618 also to enable the VPU? Would that patch in itself be sufficient to compile and enable the cedrus-driver?
-
I have not seen any one of them do it, but I assume they possess that capability since it is mentioned in the datasheet for H616 here: https://linux-sunxi.org/images/b/b9/H616_Datasheet_V1.0_cleaned.pdf I am looking for a DTS that has the correct parameters for the cedar driver (correct registers, memory etc) for the H618. I am absolutely open to doing a DTS overlay if that would make work easier.
-
Hello! I am trying to get the cedar_ve device working for OPIZ2W. I am currently running this image: Orangepizero2w_1.0.4_ubuntu_noble_server_linux6.1.31 My uname -a: Linux orangepizero2w 6.1.31-sun50iw9 #1.0.4 SMP Wed Oct 9 13:39:53 CST 2024 aarch64 aarch64 aarch64 GNU/Linux To do this I am trying to follow these steps: 1. Modify a dts for OPIZ2W to include cedar_ve. 2. Donwloan cedrus driver and build it. 3. Compile modified ffmpeg with x264cedrus support Have anyone tried this? I have only found builds for recent kernel for the H3 CPU, none for the H618. I am looking for a DTS that supports cedar_ve for Orange Pi Zero 2W or any other things that can point me in the right direction.