08_video_dec_drm doesn't decode video

Using Jetpack 28.1

When I try the tegra_multimedia_api example 08_video_dec_drm, it shows some semi-transparent color bars in the top left of the display, but it doesn’t play any video. It prints the following errors:

nvidia@jetson:~/tegra_multimedia_api/samples/08_video_dec_drm$ ls -l ../../data/Video/sample_outdoor_car_1080p_10fps.h264 
-rw-r--r-- 1 nvidia nvidia 41124678 Jul 20 08:00 ../../data/Video/sample_outdoor_car_1080p_10fps.h264
nvidia@jetson:~/tegra_multimedia_api/samples/08_video_dec_drm$ ./video_dec_drm ../../data/Video/sample_outdoor_car_1080p_10fps.h264 H264
Failed to query video capabilities: Inappropriate ioctl for device
NvMMLiteOpen : Block : BlockType = 261 
TVMR: NvMMLiteTVMRDecBlockOpen: 7907: NvMMLiteBlockOpen 
NvMMLiteBlockCreate : Block : BlockType = 261 
Failed to query video capabilities: Inappropriate ioctl for device
Starting decoder capture loop thread
TVMR: cbBeginSequence: 1223: BeginSequence  1920x1088, bVPR = 0
TVMR: LowCorner Frequency = 0 
TVMR: cbBeginSequence: 1622: DecodeBuffers = 5, pnvsi->eCodec = 4, codec = 0 
TVMR: cbBeginSequence: 1693: Display Resolution : (1920x1080) 
TVMR: cbBeginSequence: 1694: Display Aspect Ratio : (1920x1080) 
TVMR: cbBeginSequence: 1762: ColorFormat : 5 
TVMR: cbBeginSequence:1776 ColorSpace = NvColorSpace_YCbCr601
TVMR: cbBeginSequence: 1904: SurfaceLayout = 3
TVMR: cbBeginSequence: 2005: NumOfSurfaces = 12, InteraceStream = 0, InterlaceEnabled = 0, bSecure = 0, MVC = 0 Semiplanar = 1, bReinit = 1, BitDepthForSurface = 8 LumaBitDepth = 8, ChromaBitDepth = 8, ChromaFormat = 5
TVMR: cbBeginSequence: 2007: BeginSequence  ColorPrimaries = 2, TransferCharacteristics = 2, MatrixCoefficients = 2
Video Resolution: 1920x1080
libv4l2_nvvidconv (0):(774) (INFO) : Allocating (17) OUTPUT PLANE BUFFERS Layout=1
libv4l2_nvvidconv (0):(790) (INFO) : Allocating (17) CAPTURE PLANE BUFFERS Layout=0
Query and set capture successful
[ERROR] (NvDrmRenderer.cpp:639) <renderer0> Failed to flip
[ERROR] (NvDrmRenderer.cpp:656) <renderer0> Error in rendering frame

Note the:

  • Failed to query video capabilities: Inappropriate ioctl for device ... [ERROR] (NvDrmRenderer.cpp:639) Failed to flip [ERROR] (NvDrmRenderer.cpp:656) Error in rendering frame

What am I doing wrong?

Please refer to [2.1 Prerequisite for video_decode_drm Multimedia Sample] in