Gstreamer pipeline for .264 file

Tried a few pipelines to play this file. Plays ok with “ffplay -flags2 showall” Any help using the HW decoding would be great, Can’t seem to get the pipe to play.

[STREAM]
index=0
codec_name=h264
codec_long_name=H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10
profile=High
codec_type=video
codec_time_base=6/359
codec_tag_string=[0][0][0][0]
codec_tag=0x0000
width=1920
height=1080
coded_width=1920
coded_height=1088
has_b_frames=0
sample_aspect_ratio=N/A
display_aspect_ratio=N/A
pix_fmt=yuv420p

Hi,
You may try jetsom_multimedia_api decoding sample:

nvidia@nvidia-desktop:/usr/src/jetson_multimedia_api/samples/00_video_decode$ ./video_decode H264 /home/nvidia/test.264

No luck. This works but I was wanting it on the GPU process.
gst-launch-1.0 filesrc location=main.h264 ! h264parse ! avdec_h264 ! xvimagesink

Hi,
Would like to clarify that there is individual hardware decoder on Jetson platforms, so hardware decoding is not done on GPU.

Yes, Using a Jetson Nano. But haven’t had luck with it. Will PM you a link to the file if you want to try it or possibly troubleshoot it.

Hi,
Please try

$ gst-launch-1.0 filesrc location= MainCam_2020-8-17_19-20-1.h264 ! h264parse ! nvv4l2decoder enable-frame-type-reporting=1 ! nvoverlaysink

This is same as

gst-launch-1.0 filesrc location= MainCam_2020-8-17_19-20-1.h264 ! h264parse ! nvv4l2decoder enable-frame-type-reporting=1 ! nvoverlaysink
Setting pipeline to PAUSED ...
Opening in BLOCKING MODE 
Pipeline is PREROLLING ...
NvMMLiteOpen : Block : BlockType = 261 
NVMEDIA: Reading vendor.tegra.display-size : status: 6 
NvMMLiteBlockCreate : Block : BlockType = 261 
NvMMLiteNVMEDIADecSetAttribute:: Error status reporting set to 1
FrameType = P
nActiveRefFrames = 0
Frame 0
Pipeline is PREROLLED ...
Setting pipeline to PLAYING ...
New clock: GstSystemClock
FrameType = P
nActiveRefFrames = 1
Frame 1
FrameType = P
nActiveRefFrames = 1
Frame 2
FrameType = P
nActiveRefFrames = 1
Frame 3
FrameType = P
nActiveRefFrames = 1
Frame 4
----
Frame 894
FrameType = P
nActiveRefFrames = 1
Frame 895
Got EOS from element "pipeline0".
Execution ended after 0:00:29.866772674
Setting pipeline to PAUSED ...
Setting pipeline to READY ...
Setting pipeline to NULL ...
Freeing pipeline ...

Hi,
You should see video playback. No?

Negative

Hi,
We can see video playback in running the gstreamer pipeline. A bit strange you cannot see it. The log looks OK. Maybe you can do clean re-flash and try again.

Will try, Thanks for the help.

I have similar issue.
I’d like to use the gstreamer.
My file can be played, but it’s a little laggy.
My pipeline is as follows.

gst-launch-1.0 filesrc location=/home/nvidia/test264.h264 ! h264parse ! nvv4l2decoder enable-frame-type-reporting=1 ! nvvidconv output-buffers=20 ! ‘vid
eo/x-raw(memory:NVMM), format=RGBA, width=1920, height=1080, framerate=30/1’ ! queue ! nvoverlaysink

The log at that time is as follows.
What should I do ?

Setting pipeline to PAUSED …
Opening in BLOCKING MODE
Pipeline is PREROLLED …
Setting pipeline to PLAYING …
New clock: GstSystemClock
NvMMLiteOpen : Block : BlockType = 261
NVMEDIA: Reading vendor.tegra.display-size : status: 6
NvMMLiteBlockCreate : Block : BlockType = 261
NvMMLiteNVMEDIADecSetAttribute:: Error status reporting set to 1
FrameType = I
(IDR)
nActiveRefFrames = 0
Frame 0
Opening in BLOCKING MODE
NvMMLiteOpen : Block : BlockType = 261
NVMEDIA: Reading vendor.tegra.display-size : status: 6
NvMMLiteBlockCreate : Block : BlockType = 261
NvMMLiteNVMEDIADecSetAttribute:: Error status reporting set to 1
FrameType = P
nActiveRefFrames = 0
Frame 1
NVMEDIA: NVMEDIABufferProcessing: 1096: Consume the extra signalling for EOS
Opening in BLOCKING MODE
NvMMLiteOpen : Block : BlockType = 261
NVMEDIA: Reading vendor.tegra.display-size : status: 6
NvMMLiteBlockCreate : Block : BlockType = 261
NvMMLiteNVMEDIADecSetAttribute:: Error status reporting set to 1
FrameType = I
(IDR)
nActiveRefFrames = 0
Frame 12
Opening in BLOCKING MODE
NvMMLiteOpen : Block : BlockType = 261
NVMEDIA: Reading vendor.tegra.display-size : status: 6
NvMMLiteBlockCreate : Block : BlockType = 261
NvMMLiteNVMEDIADecSetAttribute:: Error status reporting set to 1
FrameType = P
nActiveRefFrames = 0
Frame 13
NVMEDIA: NVMEDIABufferProcessing: 1096: Consume the extra signalling for EOS
Opening in BLOCKING MODE
NvMMLiteOpen : Block : BlockType = 261
NVMEDIA: Reading vendor.tegra.display-size : status: 6
NvMMLiteBlockCreate : Block : BlockType = 261
NvMMLiteNVMEDIADecSetAttribute:: Error status reporting set to 1
FrameType = I
(IDR)
nActiveRefFrames = 0
Frame 24
Opening in BLOCKING MODE
NvMMLiteOpen : Block : BlockType = 261
NVMEDIA: Reading vendor.tegra.display-size : status: 6
NvMMLiteBlockCreate : Block : BlockType = 261
NvMMLiteNVMEDIADecSetAttribute:: Error status reporting set to 1
FrameType = P
nActiveRefFrames = 0
Frame 25
NVMEDIA: NVMEDIABufferProcessing: 1096: Consume the extra signalling for EOS
Opening in BLOCKING MODE
NvMMLiteOpen : Block : BlockType = 261
NVMEDIA: Reading vendor.tegra.display-size : status: 6
NvMMLiteBlockCreate : Block : BlockType = 261
NvMMLiteNVMEDIADecSetAttribute:: Error status reporting set to 1
FrameType = I
(IDR)
nActiveRefFrames = 0
Frame 36
Opening in BLOCKING MODE
NvMMLiteOpen : Block : BlockType = 261
NVMEDIA: Reading vendor.tegra.display-size : status: 6
NvMMLiteBlockCreate : Block : BlockType = 261
NvMMLiteNVMEDIADecSetAttribute:: Error status reporting set to 1
FrameType = P
nActiveRefFrames = 0
Frame 37
NVMEDIA: NVMEDIABufferProcessing: 1096: Consume the extra signalling for EOS
Opening in BLOCKING MODE
NvMMLiteOpen : Block : BlockType = 261
NVMEDIA: Reading vendor.tegra.display-size : status: 6
NvMMLiteBlockCreate : Block : BlockType = 261
NvMMLiteNVMEDIADecSetAttribute:: Error status reporting set to 1

Hi s.n.3,

Please help to open a new topic. Thanks