Opened 7 weeks ago

Last modified 7 weeks ago

#6628 new defect

Random access indicator bit

Reported by: fliston Owned by:
Priority: normal Component: undetermined
Version: git-master Keywords: nvenc
Cc: Blocked By:
Blocking: Reproduced by developer: no
Analyzed by developer: no


Summary of the bug:
I'm trying to stream using ffmpeg to a STB, with no success. From the STB software support i got this answer: Random_access_indicator For H.264/AVC Bitstreams, the following applies: Encoding: The random_access_indicator bit shall be set whenever an H.264/AVC RAP occurs in video streams (see H.264/AVC RAP definition in Clauses 3.1 and 5.5.5). Decoding: The random_access_indicator bit may be ignored by the IRD. It can be beneficially utilized together with the elementary_stream_priority indicator to identify RAP.

3.1 H.264/AVC RAP: access unit with AU delimiter in an H.264/AVC Bitstream at which an IRD can begin decoding video successfully. This access unit shall include exactly one Sequence Parameter Set (that is active) with VUI and the Picture Parameter Set that is required for decoding the associated picture. The SPS shall also precede any SEI NAL units in this access unit. This access unit must contain an IDR picture or an I picture

I cant't figure out how to set that bit up!

With working streams my STB shows:

dec[2][base] :: set_video_track() : -1 -> 0 [H264]

dec[2][base] :: set_audio_track() : -1 -> 0 [AAC] [eng]

But with my stream

dec[1][base] :: set_video_track() : -1 -> -1 []

dec[1][base] :: set_audio_track() : -1 -> 0 [AAC] [spa]

How to reproduce:

ffmpeg -nostdin -loglevel info -ss 10 -hwaccel_device 0 -hwaccel cuvid -c:v h264_cuvid -y -re -i udp://\&buffer_size=409600\&fifo_size=1000000\&overrun_nonfatal=1 -movflags isml+frag_keyframe -f ismv -threads 0 -c:a libfdk_aac -ac 2 -b:a 64k -map 0:v -filter:v:0 scale_npp=w=1920:h=1080 -c:v:0 h264_nvenc -bf 2 -b:v:0 2000k -bsf:v h264_mp4toannexb -map 0:a:0 http://XXX/XXX/XX/Streams(video)

 ffmpeg version N-87132-g1dc33c1 Copyright (c) 2000-2017 the FFmpeg developers
   built with gcc 5.4.0 (Ubuntu 5.4.0-6ubuntu1~16.04.4) 20160609
   configuration: --prefix=/usr/local/ffmpeg_build --extra-cflags='-I/usr/local/ffmpeg_build/include -I/usr/local/cuda/include/' --disable-yasm --extra-ldflags='-L/usr/local/ffmpeg_build/lib -L/usr/local/cuda/lib64/' --bindir=/usr/local/bin --extra-libs=-ldl --enable-nvenc --enable-cuda --enable-libnpp --enable-cuvid --enable-gpl --enable-libx264 --enable-libfdk-aac --enable-nonfree --enable-version3
   libavutil      55. 74.100 / 55. 74.100
   libavcodec     57.104.100 / 57.104.100
   libavformat    57. 79.100 / 57. 79.100
   libavdevice    57.  8.100 / 57.  8.100
   libavfilter     6.101.100 /  6.101.100
   libswscale      4.  7.103 /  4.  7.103
   libswresample   2.  8.100 /  2.  8.100
   libpostproc    54.  6.100 / 54.  6.100

I'm using last nvidia drivers, and encoding with h264_nvenc.
There are no problems reproducing on the STB with the udp.

Any ideas?

Change History (3)

comment:1 Changed 7 weeks ago by cehoyos

  • Component changed from ffmpeg to undetermined
  • Keywords cuda nvidia ffmpeg removed
  • Priority changed from important to normal

comment:2 Changed 7 weeks ago by fliston

After the output will be stream via unified streaming

comment:3 Changed 7 weeks ago by fliston

Last edited 7 weeks ago by fliston (previous) (diff)
Note: See TracTickets for help on using tickets.