<div data-ntes="ntes_mail_body_root" style="line-height:1.7;color:#000000;font-size:14px;font-family:Arial"><div id="spnEditorContent"><p style="margin: 0;">Thank for the patch, I have some comments</p><p style="margin: 0;"><br></p><p style="margin: 0;"><br></p><p style="margin: 0;">From 249a2dd99de9edfd16867430deb0670f35e74941 Mon Sep 17 00:00:00 2001</p><p style="margin: 0;">From: Mr-Z-2697 <74594146+Mr-Z-2697@users.noreply.github.com></p><p style="margin: 0;">Date: Sun, 12 Jan 2025 12:35:38 +0800</p><p style="margin: 0;">Subject: [PATCH] Add new Levels</p><p style="margin: 0;"><br></p><p style="margin: 0;"> LevelSpec levels[] =</p><p style="margin: 0;"> {</p><p style="margin: 0;">-    { 36864,    552960,     128,      MAX_UINT, 350,    MAX_UINT, 2, Level::LEVEL1,   "1",   10 },</p><p style="margin: 0;">-    { 122880,   3686400,    1500,     MAX_UINT, 1500,   MAX_UINT, 2, Level::LEVEL2,   "2",   20 },</p><p style="margin: 0;">-    { 245760,   7372800,    3000,     MAX_UINT, 3000,   MAX_UINT, 2, Level::LEVEL2_1, "2.1", 21 },</p><p style="margin: 0;">-    { 552960,   16588800,   6000,     MAX_UINT, 6000,   MAX_UINT, 2, Level::LEVEL3,   "3",   30 },</p><p style="margin: 0;">-    { 983040,   33177600,   10000,    MAX_UINT, 10000,  MAX_UINT, 2, Level::LEVEL3_1, "3.1", 31 },</p><p style="margin: 0;">-    { 2228224,  66846720,   12000,    30000,    12000,  30000,    4, Level::LEVEL4,   "4",   40 },</p><p style="margin: 0;">-    { 2228224,  133693440,  20000,    50000,    20000,  50000,    4, Level::LEVEL4_1, "4.1", 41 },</p><p style="margin: 0;">-    { 8912896,  267386880,  25000,    100000,   25000,  100000,   6, Level::LEVEL5,   "5",   50 },</p><p style="margin: 0;">-    { 8912896,  534773760,  40000,    160000,   40000,  160000,   8, Level::LEVEL5_1, "5.1", 51 },</p><p style="margin: 0;">-    { 8912896,  1069547520, 60000,    240000,   60000,  240000,   8, Level::LEVEL5_2, "5.2", 52 },</p><p style="margin: 0;">-    { 35651584, 1069547520, 60000,    240000,   60000,  240000,   8, Level::LEVEL6,   "6",   60 },</p><p style="margin: 0;">-    { 35651584, 2139095040, 120000,   480000,   120000, 480000,   8, Level::LEVEL6_1, "6.1", 61 },</p><p style="margin: 0;">-    { 35651584, 4278190080U, 240000,  800000,   240000, 800000,   6, Level::LEVEL6_2, "6.2", 62 },</p><p style="margin: 0;">-    { MAX_UINT, MAX_UINT, MAX_UINT, MAX_UINT, MAX_UINT, MAX_UINT, 1, Level::LEVEL8_5, "8.5", 85 },</p><p style="margin: 0;">+    { 36864,      552960,         128,      MAX_UINT, 350,     MAX_UINT, 2, Level::LEVEL1,   "1",   10 },</p><p style="margin: 0;">+    { 122880,     3686400,        1500,     MAX_UINT, 1500,    MAX_UINT, 2, Level::LEVEL2,   "2",   20 },</p><p style="margin: 0;">+    { 245760,     7372800,        3000,     MAX_UINT, 3000,    MAX_UINT, 2, Level::LEVEL2_1, "2.1", 21 },</p><p style="margin: 0;">+    { 552960,     16588800,       6000,     MAX_UINT, 6000,    MAX_UINT, 2, Level::LEVEL3,   "3",   30 },</p><p style="margin: 0;">+    { 983040,     33177600,       10000,    MAX_UINT, 10000,   MAX_UINT, 2, Level::LEVEL3_1, "3.1", 31 },</p><p style="margin: 0;">+    { 2228224,    66846720,       12000,    30000,    12000,   30000,    4, Level::LEVEL4,   "4",   40 },</p><p style="margin: 0;">+    { 2228224,    133693440,      20000,    50000,    20000,   50000,    4, Level::LEVEL4_1, "4.1", 41 },</p><p style="margin: 0;">+    { 8912896,    267386880,      25000,    100000,   25000,   100000,   6, Level::LEVEL5,   "5",   50 },</p><p style="margin: 0;">+    { 8912896,    534773760,      40000,    160000,   40000,   160000,   8, Level::LEVEL5_1, "5.1", 51 },</p><p style="margin: 0;">+    { 8912896,    1069547520,     60000,    240000,   60000,   240000,   8, Level::LEVEL5_2, "5.2", 52 },</p><p style="margin: 0;">+    { 35651584,   1069547520,     60000,    240000,   60000,   240000,   8, Level::LEVEL6,   "6",   60 },</p><p style="margin: 0;">+    { 35651584,   2139095040,     120000,   480000,   120000,  480000,   8, Level::LEVEL6_1, "6.1", 61 },</p><p style="margin: 0;">+    { 35651584,   4278190080U,    240000,   800000,   240000,  800000,   6, Level::LEVEL6_2, "6.2", 62 },</p><p style="margin: 0;">+    { 80216064,   4812963840ULL,  320000,   1600000,  240000,  1600000,  6, Level::LEVEL6_3, "6.3", 63 },</p><p style="margin: 0;">+    { 142606336,  4812963840ULL,  320000,   1600000,  240000,  1600000,  6, Level::LEVEL7,   "7",   70 },</p><p style="margin: 0;"><br></p><p style="margin: 0;">mismatch to HEVC spec, <b>240000</b>?</p><p style="margin: 0;"><br></p><p style="margin: 0;"><br></p><p style="margin: 0;"> </p><p style="margin: 0;"> static inline int _confirm(x265_param* param, bool bflag, const char* message)</p><p style="margin: 0;">@@ -152,8 +156,8 @@ void determineLevel(const x265_param &param, VPS& vps)</p><p style="margin: 0;">         vps.ptl.profileCompatibilityFlag[Profile::MAINSCC] = true;</p><p style="margin: 0;"> #endif</p><p style="margin: 0;"> </p><p style="margin: 0;">-    uint32_t lumaSamples = param.sourceWidth * param.sourceHeight;</p><p style="margin: 0;">-    uint32_t samplesPerSec = (uint32_t)(lumaSamples * ((double)param.fpsNum / param.fpsDenom));</p><p style="margin: 0;">+    uint64_t lumaSamples = param.sourceWidth * param.sourceHeight;</p><p style="margin: 0;"><br></p><p style="margin: 0;">Maximum picture size is 142,606,336, it is in 32-bits range</p><p style="margin: 0;"><br></p></div></div>