This pipeline works fine to encode a test source to H.264:
videotestsrc ! v4l2h264enc ! 'video/x-h264,level=(string)4' ! filesink location=foo.h264
Likewise, this works fine to save the raw pixels coming from my camera via aravissrc
:
aravissrc ! video/x-bayer,format=grbg,width=2592,height=1944,framerate=0/1 ! bayer2rgb ! videoconvert ! filesink location=foo.raw
However if I combine the two:
aravissrc ! video/x-bayer,format=grbg,width=2592,height=1944,framerate=0/1 ! bayer2rgb ! videoconvert ! \
v4l2h264enc ! 'video/x-h264,level=(string)4' ! filesink location=foo.h264
ERROR: from element /GstPipeline:pipeline0/GstAravis:aravis0: Internal data stream error.
I can’t figure out any more details than “Internal data stream error”; nothing in the extended GStreamer logs (e.g., with GST_DEBUG=aravis*:7
) suggests a source of failure.
Moreover if I switch to using x264enc
instead of v4l2h264enc ! 'video/x-h264,level=(string)4'
it works ok.
What issue in my pipeline prevents me from using v4l2h264enc
with aravissrc
?