nvh264enc doesn't handle NV12 frames

Aniket Hande ahande at ftilab.com
Thu Nov 18 04:06:32 UTC 2021


Trying to save MPEG2 TS as an MP4 file. The source codec is mpeg2 and not
H264 so explicitly converting mpeg2 to raw and then trying to encode ot
H264 to save it as an MP4. I'm using nvdec and nvh264enc for decoding and
encoding.

Pipeline as follows:
udpsrc  --> rtpbin  --> depayloader  --> parser  --> queue  --> decoder
--> glcolorconvert  --> format=RGBA  --> gldownload  -->
videoconvert,format=NV12  -->  nvh264enc  --> h264parse  -->  mp4mux  -->
filesink

I'm getting issue with the colorspace conversion, perhaps I'm
doing something wrong?

Debug logs attached.
----------------------------------------------------------------------------------------
0:00:02.133877718  4103 0x7f9b6c004190 WARN                   nvdec
gstnvdec.c:58:cuda_OK: CUDA call failed: CUDA_ERROR_INVALID_HANDLE, invalid
resource handle
0:00:02.133951077  4103 0x7f9b6c004190 WARN                   nvdec
gstnvdec.c:1010:gst_nvdec_drain:<nvdec0> parser failed
0:00:02.134417954  4103 0x7f9b6c004190 WARN                 default
descriptions.c:747:format_info_get_desc: Unexpected MPEG-1 layer in
audio/mpeg, mpegversion=(int)1
0:00:02.149666548  4103 0x7f9b6c004190 WARN           basetransform
gstbasetransform.c:1364:gst_base_transform_setcaps:<glcolorconvertelement0>
transform could not transform video/x-raw(memory:GLMemory),
format=(string)NV12, width=(int)720, height=(int)480,
interlace-mode=(string)mixed, multiview-mode=(string)mono,
multiview-flags=(GstVideoMultiviewFlagsSet)0:ffffffff:/right-view-first/left-flipped/left-flopped/right-flipped/right-flopped/half-aspect/mixed-mono,
pixel-aspect-ratio=(fraction)8/9, chroma-site=(string)jpeg,
colorimetry=(string)2:1:0:0, framerate=(fraction)30000/1001,
texture-target=(string)2D in anything we support
0:00:02.150805773  4103 0x7f9b6c004190 WARN           basetransform
gstbasetransform.c:1364:gst_base_transform_setcaps:<glcolorconvertelement0>
transform could not transform video/x-raw(memory:GLMemory),
format=(string)NV12, width=(int)720, height=(int)480,
interlace-mode=(string)mixed, multiview-mode=(string)mono,
multiview-flags=(GstVideoMultiviewFlagsSet)0:ffffffff:/right-view-first/left-flipped/left-flopped/right-flipped/right-flopped/half-aspect/mixed-mono,
pixel-aspect-ratio=(fraction)8/9, chroma-site=(string)jpeg,
colorimetry=(string)2:1:0:0, framerate=(fraction)30000/1001,
texture-target=(string)2D in anything we support
0:00:02.150821604  4103 0x7f9b6c004190 WARN                GST_PADS
gstpad.c:4231:gst_pad_peer_query:<nvdec0:src> could not send sticky events
0:00:02.151135538  4103 0x7f9b6c004190 WARN              video-info
video-info.c:191:validate_colorimetry: color matrix RGB is only supported
with RGB format, NV12 is not
0:00:02.151141467  4103 0x7f9b6c004190 WARN              video-info
video-info.c:513:gst_video_info_from_caps: invalid colorimetry, using
default
0:00:02.151156843  4103 0x7f9b6c004190 WARN              video-info
video-info.c:191:validate_colorimetry: color matrix RGB is only supported
with RGB format, NV12 is not
0:00:02.151159394  4103 0x7f9b6c004190 WARN              video-info
video-info.c:513:gst_video_info_from_caps: invalid colorimetry, using
default
0:00:02.151197114  4103 0x7f9b6c004190 WARN              video-info
video-info.c:191:validate_colorimetry: color matrix RGB is only supported
with RGB format, NV12 is not
0:00:02.151199532  4103 0x7f9b6c004190 WARN              video-info
video-info.c:513:gst_video_info_from_caps: invalid colorimetry, using
default
0:00:02.198037692  4103 0x7f9b6c004190 WARN           basetransform
gstbasetransform.c:1364:gst_base_transform_setcaps:<glcolorconvertelement0>
transform could not transform video/x-raw(memory:GLMemory),
format=(string)NV12, width=(int)720, height=(int)480,
interlace-mode=(string)mixed, multiview-mode=(string)mono,
multiview-flags=(GstVideoMultiviewFlagsSet)0:ffffffff:/right-view-first/left-flipped/left-flopped/right-flipped/right-flopped/half-aspect/mixed-mono,
pixel-aspect-ratio=(fraction)8/9, chroma-site=(string)jpeg,
colorimetry=(string)2:1:0:0, framerate=(fraction)30000/1001,
texture-target=(string)2D in anything we support
0:00:02.198738439  4103 0x7f9b6c004190 WARN           basetransform
gstbasetransform.c:1364:gst_base_transform_setcaps:<glcolorconvertelement0>
transform could not transform video/x-raw(memory:GLMemory),
format=(string)NV12, width=(int)720, height=(int)480,
interlace-mode=(string)mixed, multiview-mode=(string)mono,
multiview-flags=(GstVideoMultiviewFlagsSet)0:ffffffff:/right-view-first/left-flipped/left-flopped/right-flipped/right-flopped/half-aspect/mixed-mono,
pixel-aspect-ratio=(fraction)8/9, chroma-site=(string)jpeg,
colorimetry=(string)2:1:0:0, framerate=(fraction)30000/1001,
texture-target=(string)2D in anything we support
0:00:02.199245547  4103 0x7f9b6c004190 WARN           basetransform
gstbasetransform.c:1364:gst_base_transform_setcaps:<glcolorconvertelement0>
transform could not transform video/x-raw(memory:GLMemory),
format=(string)NV12, width=(int)720, height=(int)480,
interlace-mode=(string)mixed, multiview-mode=(string)mono,
multiview-flags=(GstVideoMultiviewFlagsSet)0:ffffffff:/right-view-first/left-flipped/left-flopped/right-flipped/right-flopped/half-aspect/mixed-mono,
pixel-aspect-ratio=(fraction)8/9, chroma-site=(string)jpeg,
colorimetry=(string)2:1:0:0, framerate=(fraction)30000/1001,
texture-target=(string)2D in anything we support
0:00:02.199678432  4103 0x7f9b6c004190 WARN           basetransform
gstbasetransform.c:1364:gst_base_transform_setcaps:<glcolorconvertelement0>
transform could not transform video/x-raw(memory:GLMemory),
format=(string)NV12, width=(int)720, height=(int)480,
interlace-mode=(string)mixed, multiview-mode=(string)mono,
multiview-flags=(GstVideoMultiviewFlagsSet)0:ffffffff:/right-view-first/left-flipped/left-flopped/right-flipped/right-flopped/half-aspect/mixed-mono,
pixel-aspect-ratio=(fraction)8/9, chroma-site=(string)jpeg,
colorimetry=(string)2:1:0:0, framerate=(fraction)30000/1001,
texture-target=(string)2D in anything we support
0:00:02.208182925  4103 0x55d899f6bd40 WARN                 basesrc
gstbasesrc.c:3072:gst_base_src_loop:<udpsrc0> error: Internal data stream
error.
0:00:02.208197870  4103 0x55d899f6bd40 WARN                 basesrc
gstbasesrc.c:3072:gst_base_src_loop:<udpsrc0> error: streaming stopped,
reason not-negotiated (-4)

-- 
*Regards,*
*Aniket*
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/gstreamer-devel/attachments/20211118/e2d1a010/attachment-0001.htm>


More information about the gstreamer-devel mailing list