[FFmpeg-trac] #8712(undetermined:new): Don't work transcoding for HDR file

FFmpeg trac at avcodec.org
Thu Jun 4 15:58:22 EEST 2020


#8712: Don't work transcoding for HDR file
-------------------------------------+-------------------------------------
             Reporter:  nikin.v      |                     Type:  defect
               Status:  new          |                 Priority:  normal
            Component:               |                  Version:
  undetermined                       |  unspecified
             Keywords:  HDR, aaf,    |               Blocked By:
  ts                                 |
             Blocking:               |  Reproduced by developer:  0
Analyzed by developer:  0            |
-------------------------------------+-------------------------------------
 I have HDR file (MPEG-TS), and I want to transcode this file to .mp4
 format, but in result I got file without audio stream. I also tried
 transcode this file to the .ts, but the same problem happen.

 MediaInfo output (before transcode)
 {{{
 General
 ID                                       : 0 (0x0)
 Complete name                            :
 C:\Users\Valentin\Downloads\ffmpeg-4.1.4-win64-static\ffmpeg-4.1.4-win64-static\bin\Samsung
 4K HDR Demo - Introducing Quantum Dot Display.ts
 Format                                   : MPEG-TS
 File size                                : 726 MiB
 Duration                                 : 1 min 58 s
 Overall bit rate mode                    : Constant
 Overall bit rate                         : 51.6 Mb/s

 Video
 ID                                       : 257 (0x101)
 Menu ID                                  : 1 (0x1)
 Format                                   : HEVC
 Format/Info                              : High Efficiency Video Coding
 Format profile                           : Main 10 at L5.1@High
 HDR format                               : SMPTE ST 2086, HDR10 compatible
 Codec ID                                 : 36
 Duration                                 : 1 min 57 s
 Width                                    : 3 840 pixels
 Height                                   : 2 160 pixels
 Display aspect ratio                     : 16:9
 Frame rate                               : 59.940 (60000/1001) FPS
 Color space                              : YUV
 Chroma subsampling                       : 4:2:0
 Bit depth                                : 10 bits
 Writing library                          : ATEME Titan File 3.7.3
 (4.7.3.1002)
 Color range                              : Limited
 Color primaries                          : BT.2020
 Transfer characteristics                 : PQ
 Matrix coefficients                      : BT.2020 non-constant
 Mastering display color primaries        : Display P3
 Mastering display luminance              : min: 0.0500 cd/m2, max: 1000
 cd/m2

 Audio
 ID                                       : 258 (0x102)
 Menu ID                                  : 1 (0x1)
 Format                                   : AAC LC
 Format/Info                              : Advanced Audio Codec Low
 Complexity
 Format version                           : Version 4
 Muxing mode                              : ADTS
 Codec ID                                 : 15-2
 Duration                                 : 1 min 57 s
 Bit rate mode                            : Variable
 Channel(s)                               : 2 channels
 Channel layout                           : L R
 Sampling rate                            : 48.0 kHz
 Frame rate                               : 46.875 FPS (1024 SPF)
 Compression mode                         : Lossy
 }}}

 How to reproduce (transcode to ts):
 {{{
 ffmpeg -i Samsung\ 4K\ HDR\ Demo\ -\ Introducing\ Quantum\ Dot\ Display.ts
 -c:a copy temp.ts
 }}}

 {{{
 ffmpeg version git-2020-05-19-74dfc88 Copyright (c) 2000-2020 the FFmpeg
 developers
   built with gcc 9.3.1 (GCC) 20200513
   configuration: --enable-gpl --enable-version3 --enable-sdl2 --enable-
 fontconfig --enable-gnutls --enable-iconv --enable-libass --enable-
 libdav1d --enable-libbluray --enable-libfreetype --enable-libmp3lame
 --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg
 --enable-libopus --enable-libshine --enable-libsnappy --enable-libsoxr
 --enable-libsrt --enable-libtheora --enable-libtwolame --enable-libvpx
 --enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265
 --enable-libxml2 --enable-libzimg --enable-lzma --enable-zlib --enable-gmp
 --enable-libvidstab --enable-libvmaf --enable-libvorbis --enable-libvo-
 amrwbenc --enable-libmysofa --enable-libspeex --enable-libxvid --enable-
 libaom --disable-w32threads --enable-libmfx --enable-ffnvcodec --enable-
 cuda-llvm --enable-cuvid --enable-d3d11va --enable-nvenc --enable-nvdec
 --enable-dxva2 --enable-avisynth --enable-libopenmpt --enable-amf
   libavutil      56. 46.100 / 56. 46.100
   libavcodec     58. 86.100 / 58. 86.100
   libavformat    58. 43.100 / 58. 43.100
   libavdevice    58.  9.103 / 58.  9.103
   libavfilter     7. 82.100 /  7. 82.100
   libswscale      5.  6.101 /  5.  6.101
   libswresample   3.  6.100 /  3.  6.100
   libpostproc    55.  6.100 / 55.  6.100
 [mpegts @ 00000210e646db00] start time for stream 1 is not set in
 estimate_timings_from_pts
 [mpegts @ 00000210e646db00] stream 1 : no TS found at start of file,
 duration not set
 [mpegts @ 00000210e646db00] Could not find codec parameters for stream 1
 (Audio: aac ([15][0][0][0] / 0x000F), 0 channels): unspecified sample
 format
 Consider increasing the value for the 'analyzeduration' and 'probesize'
 options
 Input #0, mpegts, from 'Samsung 4K HDR Demo - Introducing Quantum Dot
 Display.ts':
   Duration: 00:01:57.17, start: 1.066722, bitrate: 51960 kb/s
   Program 1
     Stream #0:0[0x101]: Video: hevc (Main 10) ([36][0][0][0] / 0x0024),
 yuv420p10le(tv, bt2020nc/bt2020/smpte2084), 3840x2160 [SAR 1:1 DAR 16:9],
 59.94 fps, 59.94 tbr, 90k tbn, 59.94 tbc
     Stream #0:1[0x102](und): Audio: aac ([15][0][0][0] / 0x000F), 0
 channels
 Stream mapping:
   Stream #0:0 -> #0:0 (hevc (native) -> mpeg2video (native))
 Press [q] to stop, [?] for help
 Output #0, mpegts, to 'temp.ts':
   Metadata:
     encoder         : Lavf58.43.100
     Stream #0:0: Video: mpeg2video (Main), yuv420p, 3840x2160 [SAR 1:1 DAR
 16:9], q=2-31, 200 kb/s, 59.94 fps, 90k tbn, 59.94 tbc
     Metadata:
       encoder         : Lavc58.86.100 mpeg2video
     Side data:
       cpb: bitrate max/min/avg: 0/0/200000 buffer size: 0 vbv_delay: N/A
 frame= 7023 fps= 15 q=31.0 Lsize=  231733kB time=00:01:57.13
 bitrate=16206.8kbits/s speed=0.255x
 video:225582kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB
 muxing overhead: 2.726686%
 }}}

 MediaInfo output (after, ts)
 {{{
 General
 ID                                       : 1 (0x1)
 Complete name                            :
 C:\Users\Valentin\Downloads\ffmpeg-4.1.4-win64-static\ffmpeg-4.1.4-win64-static\bin\temp.ts
 Format                                   : MPEG-TS
 File size                                : 226 MiB
 Duration                                 : 1 min 57 s
 Overall bit rate mode                    : Variable
 Overall bit rate                         : 16.2 Mb/s

 Video
 ID                                       : 256 (0x100)
 Menu ID                                  : 1 (0x1)
 Format                                   : MPEG Video
 Format version                           : Version 2
 Format profile                           : Main at High
 Format settings, BVOP                    : No
 Format settings, Matrix                  : Default
 Format settings, GOP                     : Variable
 Codec ID                                 : 2
 Duration                                 : 1 min 57 s
 Bit rate mode                            : Variable
 Bit rate                                 : 15.4 Mb/s
 Width                                    : 3 840 pixels
 Height                                   : 2 160 pixels
 Display aspect ratio                     : 16:9
 Frame rate                               : 59.940 (60000/1001) FPS
 Color space                              : YUV
 Chroma subsampling                       : 4:2:0
 Bit depth                                : 8 bits
 Scan type                                : Progressive
 Compression mode                         : Lossy
 Bits/(Pixel*Frame)                       : 0.031
 Time code of first frame                 : 00:00:00:00
 Time code source                         : Group of pictures header
 GOP, Open/Closed                         : Open
 GOP, Open/Closed of first frame          : Closed
 Stream size                              : 215 MiB (95%)

 Menu
 ID                                       : 4096 (0x1000)
 Menu ID                                  : 1 (0x1)
 Duration                                 : 1 min 57 s
 List                                     : 256 (0x100) (MPEG Video)
 Service name                             : Service01
 Service provider                         : FFmpeg
 Service type                             : digital television
 }}}

 How to reproduce (transcode to mp4):
 {{{
 ffmpeg -i Samsung\ 4K\ HDR\ Demo\ -\ Introducing\ Quantum\ Dot\ Display.ts
 -c:a copy temp.mp4
 }}}

 {{{
 ffmpeg version git-2020-05-19-74dfc88 Copyright (c) 2000-2020 the FFmpeg
 developers
   built with gcc 9.3.1 (GCC) 20200513
   configuration: --enable-gpl --enable-version3 --enable-sdl2 --enable-
 fontconfig --enable-gnutls --enable-iconv --enable-libass --enable-
 libdav1d --enable-libbluray --enable-libfreetype --enable-libmp3lame
 --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg
 --enable-libopus --enable-libshine --enable-libsnappy --enable-libsoxr
 --enable-libsrt --enable-libtheora --enable-libtwolame --enable-libvpx
 --enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265
 --enable-libxml2 --enable-libzimg --enable-lzma --enable-zlib --enable-gmp
 --enable-libvidstab --enable-libvmaf --enable-libvorbis --enable-libvo-
 amrwbenc --enable-libmysofa --enable-libspeex --enable-libxvid --enable-
 libaom --disable-w32threads --enable-libmfx --enable-ffnvcodec --enable-
 cuda-llvm --enable-cuvid --enable-d3d11va --enable-nvenc --enable-nvdec
 --enable-dxva2 --enable-avisynth --enable-libopenmpt --enable-amf
   libavutil      56. 46.100 / 56. 46.100
   libavcodec     58. 86.100 / 58. 86.100
   libavformat    58. 43.100 / 58. 43.100
   libavdevice    58.  9.103 / 58.  9.103
   libavfilter     7. 82.100 /  7. 82.100
   libswscale      5.  6.101 /  5.  6.101
   libswresample   3.  6.100 /  3.  6.100
   libpostproc    55.  6.100 / 55.  6.100
 [mpegts @ 000001b01d39db00] start time for stream 1 is not set in
 estimate_timings_from_pts
 [mpegts @ 000001b01d39db00] stream 1 : no TS found at start of file,
 duration not set
 [mpegts @ 000001b01d39db00] Could not find codec parameters for stream 1
 (Audio: aac ([15][0][0][0] / 0x000F), 0 channels): unspecified sample
 format
 Consider increasing the value for the 'analyzeduration' and 'probesize'
 options
 Input #0, mpegts, from 'Samsung 4K HDR Demo - Introducing Quantum Dot
 Display.ts':
   Duration: 00:01:57.17, start: 1.066722, bitrate: 51960 kb/s
   Program 1
     Stream #0:0[0x101]: Video: hevc (Main 10) ([36][0][0][0] / 0x0024),
 yuv420p10le(tv, bt2020nc/bt2020/smpte2084), 3840x2160 [SAR 1:1 DAR 16:9],
 59.94 fps, 59.94 tbr, 90k tbn, 59.94 tbc
     Stream #0:1[0x102](und): Audio: aac ([15][0][0][0] / 0x000F), 0
 channels
 Stream mapping:
   Stream #0:0 -> #0:0 (hevc (native) -> h264 (libx264))
 Press [q] to stop, [?] for help
 [libx264 @ 000001b01d625680] using SAR=1/1
 [libx264 @ 000001b01d625680] using cpu capabilities: MMX2 SSE2Fast SSSE3
 SSE4.2 AVX FMA3 BMI2 AVX2
 [libx264 @ 000001b01d625680] profile High 10, level 5.2, 4:2:0, 10-bit
 [libx264 @ 000001b01d625680] 264 - core 159 - H.264/MPEG-4 AVC codec -
 Copyleft 2003-2019 - http://www.videolan.org/x264.html - options: cabac=1
 ref=3 deblock=1:0:0 analyse=0x3:0x113 me=hex subme=7 psy=1
 psy_rd=1.00:0.00 mixed_ref=1 me_range=16 chroma_me=1 trellis=1 8x8dct=1
 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=-2 threads=6
 lookahead_threads=1 sliced_threads=0 nr=0 decimate=1 interlaced=0
 bluray_compat=0 constrained_intra=0 bframes=3 b_pyramid=2 b_adapt=1
 b_bias=0 direct=1 weightb=1 open_gop=0 weightp=2 keyint=250 keyint_min=25
 scenecut=40 intra_refresh=0 rc_lookahead=40 rc=crf mbtree=1 crf=23.0
 qcomp=0.60 qpmin=0 qpmax=81 qpstep=4 ip_ratio=1.40 aq=1:1.00
 Output #0, mp4, to 'temp.mp4':
   Metadata:
     encoder         : Lavf58.43.100
     Stream #0:0: Video: h264 (libx264) (avc1 / 0x31637661), yuv420p10le,
 3840x2160 [SAR 1:1 DAR 16:9], q=-1--1, 59.94 fps, 60k tbn, 59.94 tbc
     Metadata:
       encoder         : Lavc58.86.100 libx264
     Side data:
       cpb: bitrate max/min/avg: 0/0/0 buffer size: 0 vbv_delay: N/A
 frame= 7023 fps=3.0 q=-1.0 Lsize=  217365kB time=00:01:57.11
 bitrate=15204.1kbits/s speed=0.0503x
 video:217282kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB
 muxing overhead: 0.038291%
 [libx264 @ 000001b01d625680] frame I:52    Avg QP:30.93  size:368093
 [libx264 @ 000001b01d625680] frame P:2215  Avg QP:34.56  size: 55639
 [libx264 @ 000001b01d625680] frame B:4756  Avg QP:37.66  size: 16845
 [libx264 @ 000001b01d625680] consecutive B-frames:  6.2%  8.9%  5.4% 79.6%
 [libx264 @ 000001b01d625680] mb I  I16..4: 28.2% 62.0%  9.8%
 [libx264 @ 000001b01d625680] mb P  I16..4:  6.2% 10.6%  0.5%  P16..4:
 17.0%  3.1%  2.3%  0.0%  0.0%    skip:60.2%
 [libx264 @ 000001b01d625680] mb B  I16..4:  0.4%  1.1%  0.1%  B16..8:
 15.1%  1.1%  0.2%  direct: 1.0%  skip:81.0%  L0:38.0% L1:57.9% BI: 4.1%
 [libx264 @ 000001b01d625680] 8x8 transform intra:62.2% inter:81.6%
 [libx264 @ 000001b01d625680] coded y,uvDC,uvAC intra: 30.4% 47.7% 18.4%
 inter: 4.1% 4.6% 0.5%
 [libx264 @ 000001b01d625680] i16 v,h,dc,p: 34% 30%  9% 27%
 [libx264 @ 000001b01d625680] i8 v,h,dc,ddl,ddr,vr,hd,vl,hu: 20% 14% 35%
 4%  6%  5%  5%  5%  6%
 [libx264 @ 000001b01d625680] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 26% 18% 19%
 6%  8%  7%  7%  6%  5%
 [libx264 @ 000001b01d625680] i8c dc,h,v,p: 65% 15% 13%  7%
 [libx264 @ 000001b01d625680] Weighted P-Frames: Y:7.4% UV:5.6%
 [libx264 @ 000001b01d625680] ref P L0: 77.5% 14.3%  7.9%  0.3%
 [libx264 @ 000001b01d625680] ref B L0: 87.7% 10.1%  2.2%
 [libx264 @ 000001b01d625680] ref B L1: 95.5%  4.5%
 [libx264 @ 000001b01d625680] kb/s:15191.72
 }}}

 MediaInfo output (after, mp4)
 {{{
 General
 Complete name                            :
 C:\Users\Valentin\Downloads\ffmpeg-4.1.4-win64-static\ffmpeg-4.1.4-win64-static\bin\temp.mp4
 Format                                   : MPEG-4
 Format profile                           : Base Media
 Codec ID                                 : isom (isom/iso2/avc1/mp41)
 File size                                : 212 MiB
 Duration                                 : 1 min 57 s
 Overall bit rate                         : 15.2 Mb/s
 Writing application                      : Lavf58.43.100

 Video
 ID                                       : 1
 Format                                   : AVC
 Format/Info                              : Advanced Video Codec
 Format profile                           : High 10 at L5.2
 Format settings                          : CABAC / 4 Ref Frames
 Format settings, CABAC                   : Yes
 Format settings, Reference frames        : 4 frames
 Codec ID                                 : avc1
 Codec ID/Info                            : Advanced Video Coding
 Duration                                 : 1 min 57 s
 Bit rate                                 : 15.2 Mb/s
 Width                                    : 3 840 pixels
 Height                                   : 2 160 pixels
 Display aspect ratio                     : 16:9
 Frame rate mode                          : Constant
 Frame rate                               : 59.940 (60000/1001) FPS
 Color space                              : YUV
 Chroma subsampling                       : 4:2:0
 Bit depth                                : 10 bits
 Scan type                                : Progressive
 Bits/(Pixel*Frame)                       : 0.031
 Stream size                              : 212 MiB (100%)
 Writing library                          : x264 core 159
 Encoding settings                        : cabac=1 / ref=3 / deblock=1:0:0
 / analyse=0x3:0x113 / me=hex / subme=7 / psy=1 / psy_rd=1.00:0.00 /
 mixed_ref=1 / me_range=16 / chroma_me=1 / trellis=1 / 8x8dct=1 / cqm=0 /
 deadzone=21,11 / fast_pskip=1 / chroma_qp_offset=-2 / threads=6 /
 lookahead_threads=1 / sliced_threads=0 / nr=0 / decimate=1 / interlaced=0
 / bluray_compat=0 / constrained_intra=0 / bframes=3 / b_pyramid=2 /
 b_adapt=1 / b_bias=0 / direct=1 / weightb=1 / open_gop=0 / weightp=2 /
 keyint=250 / keyint_min=25 / scenecut=40 / intra_refresh=0 /
 rc_lookahead=40 / rc=crf / mbtree=1 / crf=23.0 / qcomp=0.60 / qpmin=0 /
 qpmax=81 / qpstep=4 / ip_ratio=1.40 / aq=1:1.00
 Codec configuration box                  : avcC
 }}}




 I also tried to transcode with
 https://github.com/FFmpeg/FFmpeg/blob/master/doc/examples/transcoding.c

 But I have got error on the string
 https://github.com/FFmpeg/FFmpeg/blob/master/doc/examples/transcoding.c#L179

 {{{
 [aac @ 0x56251c326f40] The encoder timebase is not set.
 }}}





 I uploaded this file to Google Drive, because it's very big for FTP. Also
 I have got about 6-7 same files, with that problem
 https://drive.google.com/file/d/1Rt2AOKTk-
 qqBrncvRp5QUKjCauoS9jmx/view?usp=sharing



 Thank you,
 Valentin

--
Ticket URL: <https://trac.ffmpeg.org/ticket/8712>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker


More information about the FFmpeg-trac mailing list