Jump to content

Recommended Posts

Posted

Has anyone managed to get video encoder working with the latest mainline kernel?

 

I'm getting stuck trying to compile the cedar_ve kernel driver from https://github.com/uboborov/sunxi-cedar-mainline

 

I have downloaded the kernel source using armbian-config and then built the sunxi-cedar-mainline kernel driver. However, I fail to load the driver due to version magic:

Quote

root@nanopineo:~# modprobe cedar_ve
modprobe: ERROR: could not insert 'cedar_ve': Exec format error
root@nanopineo:~# dmesg | tail -n 1
[  653.998366] cedar_ve: version magic '5.15.80 SMP mod_unload ARMv7 thumb2 p2v8 ' should be '5.15.80-sunxi SMP mod_unload ARMv7 thumb2 p2v8 '

 

When trying to force the load:

Quote

root@nanopineo:~# modprobe -f cedar_ve
modprobe: ERROR: could not insert 'cedar_ve': Exec format error

 

But no dmesg message about magic check failure.
 

Posted

Some updates:

1) Updated the dts file as required in https://github.com/uboborov/sunxi-cedar-mainline

2) Fixed cedar_ve compilation issues / kernel name

3) after loading the cedar_ve.ko, get only this is dmesg:

Quote

[   71.096286] cedar_ve: loading out-of-tree module taints kernel.
[   71.097176] cedar_ve: module verification failed: signature and/or required key missing - tainting kernel
[   71.098546] sunxi cedar version 0.1

 

@ubobrov I would appreciate any insights. 

Posted

Hi !

 

@jpm how exactly did you solve 2) Fixed cedar_ve compilation issues / kernel name  ?

 

I'm gettinf the same  "modprobe: ERROR: could not insert 'cedar_ve': Exec format error"

 

 

T.

Posted

Hi, maybe someone will find this patch useful. It adds JPEG and H264 encoding to the main Cedrus driver. Both encoders use a stable stateful API, so they can be used with any multimedia software, such as gstreamer, ffmpeg, etc.

 

gst-launch-1.0 videotestsrc pattern=smpte ! video/x-raw,width=1920,height=1080 ! v4l2h264enc ! h264parse ! matroskamux ! filesink location=test_h264.mkv

 

gst-launch-1.0 videotestsrc ! v4l2jpegenc ! matroskamux ! filesink location=test_mjpeg.mkv

 

I tested it on T113 (jpeg) and A40 (jpeg, h264) processors and I think it should work with H3 as well. It doesn't work with 64-bit processors like H616/T507 because their encoders have been updated, and as far as I know, they haven't been reverse-engineered yet.

 

linux-6.12.28-cedrus-enc.patch

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.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...

Important Information

Terms of Use - Privacy Policy - Guidelines