[FFmpeg-trac] #11572(undetermined:new): HEVC interlaced reported as progressive; wrong DAR
FFmpeg
trac at avcodec.org
Fri May 2 10:32:00 EEST 2025
#11572: HEVC interlaced reported as progressive; wrong DAR
-------------------------------------+-------------------------------------
Reporter: Peter | Type: defect
Krefting |
Status: new | Priority: normal
Component: | Version: git-
undetermined | master
Keywords: hevc | Blocked By:
interlaced |
Blocking: | Reproduced by developer: 0
Analyzed by developer: 0 |
-------------------------------------+-------------------------------------
Summary of the bug: A HEVC broadcast video stream encoded by the Makito
encoder configured to use HEVC 1920×1080i video is identified as
1920×540p.
How to reproduce: The following captures were provided to us by the
broadcaster, and I have been given permission to share them for the
purpose of this bug report. They were created by the Makito encoder
software:
* [https://www.dropbox.com/scl/fi/77pmthkf3uv3zf3a4yjfk/hevc-
interlace-1.ts?rlkey=ray5xnepc2lwuzzomccujiaqf&dl=1 Sample 1]
* [https://www.dropbox.com/scl/fi/oqag1b7f8t8lqettjolst/hevc-
interlace-2.ts?rlkey=pp1wah7ep32pbx355tcbszb7v&dl=1 Sample 2]
Running ffprobe on the samples detects them as 1920×540p with a 32:9 DAR,
and playing them with ffplay do display them in 32:9.
{{{
$ ffprobe /tmp/hevc-interlace-2.ts
ffprobe version N-119410-g33d0d1c672 Copyright (c) 2007-2025 the FFmpeg
developers
built with gcc 12 (Debian 12.2.0-14)
configuration:
libavutil 60. 2.100 / 60. 2.100
libavcodec 62. 2.100 / 62. 2.100
libavformat 62. 0.102 / 62. 0.102
libavdevice 62. 0.100 / 62. 0.100
libavfilter 11. 0.100 / 11. 0.100
libswscale 9. 0.100 / 9. 0.100
libswresample 6. 0.100 / 6. 0.100
[hevc @ 0x55a556e149c0] PPS id out of range: 0
[hevc @ 0x55a556e149c0] Skipping invalid undecodable NALU: 39
[hevc @ 0x55a556e149c0] PPS id out of range: 0
[hevc @ 0x55a556e149c0] Skipping invalid undecodable NALU: 0
[hevc @ 0x55a556e149c0] PPS id out of range: 0
[hevc @ 0x55a556e149c0] Skipping invalid undecodable NALU: 39
[hevc @ 0x55a556e149c0] PPS id out of range: 0
[hevc @ 0x55a556e149c0] Skipping invalid undecodable NALU: 1
[hevc @ 0x55a556e149c0] PPS id out of range: 0
(...messages repeats...)
[mpegts @ 0x55a556e0ea00] PES packet size mismatch
[mpegts @ 0x55a556e0ea00] Packet corrupt (stream = 0, dts = 6953319369).
[mpegts @ 0x55a556e0ea00] PES packet size mismatch
[mpegts @ 0x55a556e0ea00] Packet corrupt (stream = 1, dts = 6953274618).
[mpegts @ 0x55a556e0ea00] PES packet size mismatch
[mpegts @ 0x55a556e0ea00] Packet corrupt (stream = 2, dts = 6953274618).
[mpegts @ 0x55a556e0ea00] PES packet size mismatch
[mpegts @ 0x55a556e0ea00] Packet corrupt (stream = 3, dts = 6953274614).
[mpegts @ 0x55a556e0ea00] PES packet size mismatch
[mpegts @ 0x55a556e0ea00] Packet corrupt (stream = 4, dts = 6953274614).
[mpegts @ 0x55a556e0ea00] PES packet size mismatch
[mpegts @ 0x55a556e0ea00] Packet corrupt (stream = 5, dts = 6953274614).
[mpegts @ 0x55a556e0ea00] PES packet size mismatch
[mpegts @ 0x55a556e0ea00] Packet corrupt (stream = 6, dts = 6953274622).
[mpegts @ 0x55a556e0ea00] PES packet size mismatch
[mpegts @ 0x55a556e0ea00] Packet corrupt (stream = 7, dts = 6953274618).
[mpegts @ 0x55a556e0ea00] PES packet size mismatch
[mpegts @ 0x55a556e0ea00] Packet corrupt (stream = 8, dts = 6953274614).
Input #0, mpegts, from '/tmp/hevc-interlace-2.ts':
Duration: 00:01:01.53, start: 77197.593489, bitrate: 9267 kb/s
Program 1
Metadata:
service_name : (redacted; run on sample to see)
service_provider: (redacted; run on sample to see)
Stream #0:0[0x79]: Video: hevc (Main 10) ([36][0][0][0] / 0x0024),
yuv420p10le(tv, bt709, progressive), 1920x540 [SAR 1:1 DAR 32:9], 59.94
fps, 59.94 tbr, 90k tbn, Start-Time 77197.709s
Stream #0:1[0xdd](und): Audio: aac (LC) ([15][0][0][0] / 0x000F), 48000
Hz, stereo, fltp, 129 kb/s, Start-Time 77197.594s
Stream #0:2[0xde](und): Audio: aac (LC) ([15][0][0][0] / 0x000F), 48000
Hz, stereo, fltp, 129 kb/s, Start-Time 77197.594s
Stream #0:3[0xdf](und): Audio: aac (LC) ([15][0][0][0] / 0x000F), 48000
Hz, stereo, fltp, 129 kb/s, Start-Time 77197.593s
Stream #0:4[0xe0](und): Audio: aac (LC) ([15][0][0][0] / 0x000F), 48000
Hz, stereo, fltp, 129 kb/s, Start-Time 77197.593s
Stream #0:5[0xe1](und): Audio: aac (LC) ([15][0][0][0] / 0x000F), 48000
Hz, stereo, fltp, 129 kb/s, Start-Time 77197.593s
Stream #0:6[0xe2](und): Audio: aac (LC) ([15][0][0][0] / 0x000F), 48000
Hz, stereo, fltp, 129 kb/s, Start-Time 77197.594s
Stream #0:7[0xe3](und): Audio: aac (LC) ([15][0][0][0] / 0x000F), 48000
Hz, stereo, fltp, 129 kb/s, Start-Time 77197.594s
Stream #0:8[0xe4](und): Audio: aac (LC) ([15][0][0][0] / 0x000F), 48000
Hz, stereo, fltp, 129 kb/s, Start-Time 77197.593s
}}}
When feeding frames directly to the codec, it does look like the
AV_FRAME_FLAG_INTERLACED bit is set correctly in the returned frame.
According to the provider of the sample, the Makito encoder (the version
number was not indicated) is configured as follows:
* Codec Algorithm: HEVC/H.265
* Resolution: 1920×1080i
* GOP Size: 60
* Encoding Profile: Main 10
* Resizing: Scale
* Closed Captioning: on
* Chroma Subsampling: 4:2:0 10-bit
* Frame Rate: Automatic
* Transcode Source: System
* Rate Control: CBR
* Framing: IBBBBP
* Counting Mode: UTC Conversion
* Bitrate: 6000
* Aspect Ratio: Automatic
* Scene Change Detection: off
* Partial Image Skip: on
* Intra Refresh: off
--
Ticket URL: <https://trac.ffmpeg.org/ticket/11572>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker
More information about the FFmpeg-trac
mailing list