When using H264 encoding on NVENC with latest SDK SEI NAL unit is send each h264 packet.
Output of libx264:
On NVENC:
h264->outputPictureTimingSEI is set to 1, is there any option to sent SEI NAL only on I/IDR frames?
Please ignore this thread, as libx264 is inserting only USER_DATA_UNREGISTERED but NVENC is inserting BUFFERING_PERIOD and PIC_TIMING
So real problem is that this patch [FFmpeg-cvslog] avcodec/nvenc: always output picture timing SEI added SEI for all frames without option to disable it.
Original pourpose of this patch was to add it fo fix some interlaced frame timing issues, but now when NVENC doesn’t support interlaced encoding on new RTX generation it is useles.
Is it possible to add bitstream_restriction_flag to NAL SPS?
This flag should be added to report correct max_num_reorder_frames when using -bref middle , for disabled and each mode max_num_reorder_frames is always 1, but for middle it is 2, which should be reported.
In libx264 bitstream_restriction is 0 only when using profile lower than HIGH or when not using b_constraint_set3, which is used for profile HIGH+INTRA.
Problem is in FFMPEG, it should be defined in vui structure.
vui->bitstreamRestrictionFlag = 1;
Then NVENC will add bitstream_restriction
opened 02:28PM - 13 Jun 22 UTC
closed 04:44PM - 24 Jun 22 UTC
bug
<!--
To increase the chance of your issue getting fixed, open an issue FOR EACH… problem. Please do not report multiple problems in a single issue, otherwise they'll probably never get ALL fixed.
-->
## Which version are you using?
latest
## Which operating system are you using?
- [x] Linux amd64 standard
- [ ] Linux amd64 Docker
- [] Linux arm64 standard
- [ ] Linux arm64 Docker
- [ ] Linux arm7 standard
- [ ] Linux arm7 Docker
- [ ] Linux arm6 standard
- [ ] Linux arm6 Docker
- [x] Windows amd64 standard
- [ ] Windows amd64 Docker (WSL backend)
- [ ] macOS amd64 standard
- [ ] macOS amd64 Docker
- [ ] Other (please describe)
## Describe the issue
When using lhls and starting stream from OBS with nvenc encoder. The Muxer crashes with logs " destroyed (muxer error: DTS is greater than PTS)"
## Describe how to replicate the issue
1. start the server
2. publish with Obs and nvenc with b-frames
3. read with logs
## Did you attach the server logs?
2022/06/13 17:21:30 INF [HLS] [muxer lhls/6] is converting into HLS
2022/06/13 17:21:32 INF [HLS] [muxer lhls/6] destroyed (muxer error: DTS is greater than PTS)
no
## Did you attach a network dump?
<!--
If the bug arises when using rtsp-simple-server with an external hardware or software, the most helpful content you can provide is a dump of the data exchanged between the server and the target (network dump), that can be generated in this way:
1) Download wireshark (https://www.wireshark.org/)
2) Start capturing on the interface used for exchanging RTSP (if the server and the target software are both installed on your pc, the interface is probably "loopback", otherwise it's the one of your network card)
3) Start the server and replicate the issue
4) Stop capturing, save the result in .pcap format
5) Attach
-->
no
Lol, here are people complaining about it.
heyden
August 25, 2024, 7:35am
8
see details here you can know about full information