Closed eliabruni closed 11 months ago
I tried to use h264_omx, but I also couldn't get it to work. I conducted some research and it appears that h264_omx is deprecated in Bullseye and 64-bit systems. Try using h264_v4l2m2m, which is included by default in the ffmpeg package
Hey @SaidGama , thanks for the pointer. I indeed ended up using h264_v4l2m2m. I will also make a PR soon
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.
Sorry for re-animating this stale topic. I was following the suggestion and replaced h264_omx
by h264_v4l2m2m
. With my GStreamer pipelines I was using v4l2h264_enc
as a replacement instead, but this seems to not work here.
h264_v4l2m2m
is at least accepted, but there seems to be a little problem with the "baseline" option:
[h264_v4l2m2m @ 0x7f54003200] [Eval @ 0x7f756c0c88] Undefined constant or missing '(' in 'baseline'
[h264_v4l2m2m @ 0x7f54003200] Unable to parse option value "baseline"
[h264_v4l2m2m @ 0x7f54003200] Error setting option profile to value baseline.
Is there any information about the properties of this driver?
TIA
@neilyoung just remove baseline from the codec options like this: codec.options = { "level": "31", "tune": "zerolatency", }
Thanks for the quick answer. I just had to remove the "baseline" setting and did also remove "tune" :)
Regards
It seems to work fine, but just one thing bothers me a bit. I have added a trace right before create_encoder_context
. Besides the gop_size
error I'm a bit concerned about the fact, that the create_encoder_context
is called over and over again during runtime. At least in the beginning for about 10-20 times. Is that related to the fact, that the bitrate is changing?
Instantiating h264_v4l2m2m...
[h264_v4l2m2m @ 0x7f6c003200] Using device /dev/video11
[h264_v4l2m2m @ 0x7f6c003200] driver 'bcm2835-codec' on card 'bcm2835-codec-encode' in mplane mode
[h264_v4l2m2m @ 0x7f6c003200] requesting formats: output=YU12 capture=H264
[h264_v4l2m2m @ 0x7f6c003200] Failed to set gop size: Invalid argument
But generally the h264_v4l2m2m
is too lame, IMHO. I'm not able to achieve much more than 18-25 fps with a 720p input. This has been seen way better already on the same device (but with another codec). Too bad...
Hi!
I am trying to use the
h264_omx
encoding on the RPI, but I get this error:However:
1) I build ffmpeg from source enabling omx; here are the steps i follow:
2) if i test the
omx
encoder from the terminal, on the same RPIit works. I get this:
3) If I look for the missing files (
libOMX_Core.so
andlibOmxCore.so
), I cannot find them anywhere; however, I don't know if they should be somewhere in the first place or it is aiortc which is looking for the wrong files. Here is what I have:Any help would be greatly appreciated!