Welcome to Doom9's Forum, THE in-place to be for everyone interested in DVD conversion. Before you start posting please read the forum rules. By posting to this forum you agree to abide by the rules. |
![]() |
#1 | Link |
Registered User
Join Date: Dec 2003
Posts: 487
|
Odd Video pixel format
I have a mkv HDR10 file that I'm trying to re-encode and am getting some weird data when trying to run it thru ffprobe. Plus the file output is large for what I'm putting thru it so curious. Soooo.
Interrogating the file with ffprobe and basically -i: Stream #0:0(eng): Video: hevc (Main 10), yuv420p10le(tv, bt2020nc/bt2020/smpte2084), 3840x2160 [SAR 1:1 DAR 16:9], 23.98 fps, 23.98 tbr, 1k tbn, 23.98 tbc Metadata: BPS-eng : 56016154 DURATION-eng : 01:56:47.042000000 NUMBER_OF_FRAMES-eng: 168001 NUMBER_OF_BYTES-eng: 49063443297 SOURCE_ID-eng : 001011 _STATISTICS_WRITING_APP-eng: mkvmerge v49.0.0 ('Sick Of Losing Soulmates') 64-bit _STATISTICS_WRITING_DATE_UTC-eng: 2020-12-02 09:32:05 _STATISTICS_TAGS-eng: BPS DURATION NUMBER_OF_FRAMES NUMBER_OF_BYTES SOURCE_ID So shows yuv420p10le above The end of that output has Stream #0:12: Video: mjpeg (Baseline), yuvj444p(pc, bt470bg/unknown/unknown), 120x176, 90k tbr, 90k tbn, 90k tbc (attached pic) Metadata: filename : small_cover.jpg mimetype : image/jpeg Stream #0:13: Video: mjpeg (Baseline), yuvj444p(pc, bt470bg/unknown/unknown), 213x120, 90k tbr, 90k tbn, 90k tbc (attached pic) Metadata: filename : small_cover_land.jpg mimetype : image/jpeg Stream #0:14: Video: mjpeg (Baseline), yuvj444p(pc, bt470bg/unknown/unknown), 600x882, 90k tbr, 90k tbn, 90k tbc (attached pic) Metadata: filename : cover.jpg mimetype : image/jpeg Stream #0:15: Video: mjpeg (Baseline), yuvj444p(pc, bt470bg/unknown/unknown), 1067x600, 90k tbr, 90k tbn, 90k tbc (attached pic) Metadata: filename : cover_land.jpg mimetype : image/jpeg So references to yuvj444p When i run my usual code to show HDR info: ffprobe.exe -hide_banner -loglevel warning -select_streams v -print_format json -show_frames -read_intervals "%+#1" -i <input_file> I get: "frames": [ { "media_type": "video", "stream_index": 12, "key_frame": 1, "pkt_size": "5037", "width": 120, "height": 176, "pix_fmt": "yuvj444p", "pict_type": "I", "coded_picture_number": 0, "display_picture_number": 0, "interlaced_frame": 0, "top_field_first": 0, "repeat_pict": 0, "color_range": "pc", "color_space": "bt470bg", "chroma_location": "center" } ] } So that, which is usually reliable thinks the pixel format is yuvj444p. So is it yuvj444p or yuv420p10le Now here's the odd part, if I run say: ffmpeg.exe -i <input_file>.mkv -c:v libx265 -x265-params level=51:hdr10=1:hdr-opt=1:high-tier=1:repeat-headers=1:colorprim=bt2020:transfer=smpte2084:colormatrix=bt2020nc:master-display=G(13250,34500)B(7500,3000)R(34000,16000)WP(15635,16450)L(40000000,50):max-cll=1000,228:crf=16:chromaloc=1:no-sao=1:info=0:range=limited -preset slower -pix_fmt yuv420p10le -vf crop=3840:2160:0:0 -sn -an <output>.hevc I get with a pixel format of yuvj444p a 57GB file which is bigger than the source, and 34GB file using yuv420p10le. I have had in the past source files that I did crf 13 and were longer duration and the output was smaller than this so I am a bit confused with this source. Any thoughts on what's going on and why the output is so big? Last edited by jriker1; 5th October 2021 at 00:38. |
![]() |
![]() |
![]() |
#2 | Link | |
Registered User
Join Date: Nov 2004
Location: Poland
Posts: 2,869
|
Main video is yuv 10bit.
Those at the end are cover images, so totally different data to main video. It says it quite clearly. Quote:
Last edited by kolak; 5th October 2021 at 12:54. |
|
![]() |
![]() |
![]() |
Tags |
ffmpeg, ffprobe, hdr |
Thread Tools | Search this Thread |
Display Modes | |
|
|