Streaming from Aravis to H.264 using GStreamer v4l2h264enc

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?