[FFmpeg-trac] #10490(undetermined:new): HLS packaging does not preserve Dolby Vision metadata

FFmpeg trac at avcodec.org
Thu Jul 27 17:19:55 EEST 2023


#10490: HLS packaging does not preserve Dolby Vision metadata
-------------------------------------+-------------------------------------
             Reporter:  Viktor       |                     Type:  defect
               Status:  new          |                 Priority:  normal
            Component:               |                  Version:
  undetermined                       |  unspecified
             Keywords:               |               Blocked By:
             Blocking:               |  Reproduced by developer:  0
Analyzed by developer:  0            |
-------------------------------------+-------------------------------------
 Summary of the bug:

 When remuxing/packaging mkv or ts files with dolby vision (profile 5.1,
 profile 8.1) dolby vision data is not preserved. As a result file is
 played (at least by LG C2 TV) as HDR only.

 Test file was taken from here: https://4kmedia.org/lg-amaze-dolby-vision-
 uhd-4k-demo/

 ffmpeg version: 6.0

 How to reproduce:

 Package to HLS:
 {{{
 ffmpeg -analyzeduration 200M -fflags +genpts -i file:test.ts -map_chapters
 -1 -threads 0 -map 0:0 -map 0:1 -map -0:s -codec:v:0 copy -tag:v:0 dvh1
 -strict -2 -bsf:v hevc_mp4toannexb  -start_at_zero -codec:a:0 copy -copyts
 -avoid_negative_ts disabled -max_muxing_queue_size 2048 -f hls -max_delay
 5000000 -hls_time 6 -hls_segment_type fmp4 -hls_fmp4_init_filename
 test-1.mp4 -start_number 0 -hls_segment_filename out/test%d.mp4
 -hls_playlist_type vod -hls_list_size 0 -y out/test.m3u8

 ...
 Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'file:test.ts':
   Metadata:
     major_brand     : mp42
     minor_version   : 1
     compatible_brands: mp42dby1isom
     creation_time   : 2017-04-13T20:09:18.000000Z
   Duration: 00:00:56.20, start: 0.000000, bitrate: 28362 kb/s
   Stream #0:0[0x1](und): Video: hevc (Main 10) (dvhe / 0x65687664),
 yuv420p10le(tv), 3840x2160 [SAR 1:1 DAR 16:9], 27713 kb/s, 60 fps, 60 tbr,
 60k tbn (default)
     Metadata:
       creation_time   : 2017-04-13T20:09:18.000000Z
       handler_name    : video handler
       vendor_id       : [0][0][0][0]
       encoder         : DOVI Coding
     Side data:
       DOVI configuration record: version: 1.0, profile: 5, level: 9, rpu
 flag: 1, el flag: 0, bl flag: 1, compatibility id: 0
 ...
 [hls @ 0x55cc8d4b9b00] Opening 'out/test-1.mp4' for writing
 [mp4 @ 0x55cc8d564b80] track 1: codec frame size is not set
 [hls @ 0x55cc8d4b9b00] Stream HEVC is not hvc1, you should use tag:v hvc1
 to set it.
 Output #0, hls, to 'out/test.m3u8':
   Metadata:
     major_brand     : mp42
     minor_version   : 1
     compatible_brands: mp42dby1isom
     encoder         : Lavf60.3.100
   Stream #0:0(und): Video: hevc (Main 10) (dvh1 / 0x31687664),
 yuv420p10le(tv), 3840x2160 [SAR 1:1 DAR 16:9], q=2-31, 27713 kb/s, 60 fps,
 60 tbr, 15360 tbn (default)
     Metadata:
       creation_time   : 2017-04-13T20:09:18.000000Z
       handler_name    : video handler
       vendor_id       : [0][0][0][0]
       encoder         : DOVI Coding
     Side data:
       DOVI configuration record: version: 1.0, profile: 5, level: 9, rpu
 flag: 1, el flag: 0, bl flag: 1, compatibility id: 0
   Stream #0:1(und): Audio: eac3 (ec-3 / 0x332D6365), 48000 Hz, 5.1(side),
 fltp, 640 kb/s (default)
 ...
 }}}

 and ffprobe shows codec tag hev1 and no DOVI record:
 {{{
 ffprobe -i out/test-1.mp4

 ...
 Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'out/test-1.mp4':
   Metadata:
     major_brand     : iso5
     minor_version   : 512
     compatible_brands: iso5iso6dby1mp41
     encoder         : Lavf60.3.100
   Duration: N/A, bitrate: N/A
   Stream #0:0[0x1](und): Video: hevc (Main 10) (hev1 / 0x31766568),
 yuv420p10le(tv), 3840x2160 [SAR 1:1 DAR 16:9], 60 tbr, 15360 tbn (default)
     Metadata:
       handler_name    : video handler
       vendor_id       : [0][0][0][0]
       encoder         : DOVI Coding
   Stream #0:1[0x2](und): Audio: eac3 (ec-3 / 0x332D6365), 48000 Hz,
 5.1(side), fltp (default)
 ...
 }}}
-- 
Ticket URL: <https://trac.ffmpeg.org/ticket/10490>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker


More information about the FFmpeg-trac mailing list