缩略图二分定位 + 邻域采样
B. 二分定位 + 邻域采样(我推荐) 把配置的语义从"这就是要生成的 10 档"改成"允许搜索的参数梯度"(比如分辨率梯度、帧率梯度、质量梯度三张表)。运行时: 1. 用每个组合只编 2 帧的方式粗估体积(很便宜); 2. 靠单调性做二分,几轮就找到"体积刚好不超过目标"的参数点; 3. 在这个点周围取 10 个组合(略高、略低各几个),完整生成。 成本大概是十几次估算编码 + 10 档完整编码,和现在基本持平甚至更省(估算只编 2 帧)。效果是候选真正围绕你输入的目标分布——比如你填 30 KB,出来的就是 22、26、29、31、35 KB 这种,而不是 5 KB 和 300 KB 各一个。 代价是你现在这套配置格式要推翻重做——从"精确档位表"变成"参数范围表"
This commit is contained in:
1 parent
5808e3dfce
commit
e94dfb9e35
27 files changed
+710
-299
No files matched your search
@@ -36,6 +36,13 @@
|
||||
"animatedCompressing": "Animiertes Vorschaubild wird komprimiert {current}/{total}…",
|
||||
"animatedWebpUnavailable": "Diese Umgebung kann WebP nicht kodieren. Bitte APNG auswählen.",
|
||||
"animatedCannotFit": "Die Animation kann nicht auf {target} KB reduziert werden (mindestens etwa {actual} KB). Erhöhen Sie das Limit oder verkürzen Sie den Framebereich.",
|
||||
"animatedPickTitle": "Miniaturbild auswählen",
|
||||
"animatedPickHint": "Alle Ergebnisse behalten eine 400×400-Arbeitsfläche; das Label zeigt Detailauflösung@fps/Qualität/Dateigröße. Wählen Sie eines und drücken Sie Bestätigen, um es zu übernehmen, oder brechen Sie ab, um alle zu verwerfen.",
|
||||
"animatedPickConfirm": "Bestätigen",
|
||||
"animatedPriority": "Priorität",
|
||||
"priorityResolution": "Auflösung zuerst",
|
||||
"priorityFramerate": "Bildrate zuerst",
|
||||
"priorityBalanced": "Auflösung und Bildrate abwechselnd",
|
||||
"qualityLow": "Niedrig",
|
||||
"qualityMedium": "Mittel",
|
||||
"qualityHigh": "Hoch",
|
||||
|
||||
@@ -36,6 +36,13 @@
|
||||
"animatedCompressing": "Compressing animated thumbnail {current}/{total}…",
|
||||
"animatedWebpUnavailable": "This environment cannot encode WebP. Choose APNG instead.",
|
||||
"animatedCannotFit": "The animation cannot be reduced to {target} KB (minimum about {actual} KB). Increase the limit or shorten the frame range.",
|
||||
"animatedPickTitle": "Pick a thumbnail",
|
||||
"animatedPickHint": "Every result keeps a 400×400 canvas; the label shows detail resolution@fps/quality/file size. Select one and press Confirm to replace the thumbnail, or cancel to discard them all.",
|
||||
"animatedPickConfirm": "Confirm",
|
||||
"animatedPriority": "Priority",
|
||||
"priorityResolution": "Resolution first",
|
||||
"priorityFramerate": "Frame rate first",
|
||||
"priorityBalanced": "Alternate resolution and frame rate",
|
||||
"qualityLow": "Low",
|
||||
"qualityMedium": "Medium",
|
||||
"qualityHigh": "High",
|
||||
|
||||
@@ -36,6 +36,13 @@
|
||||
"animatedCompressing": "Comprimiendo miniatura animada {current}/{total}…",
|
||||
"animatedWebpUnavailable": "Este entorno no puede codificar WebP. Selecciona APNG.",
|
||||
"animatedCannotFit": "No se puede reducir la animación a {target} KB (mínimo aproximado: {actual} KB). Aumenta el límite o acorta el rango.",
|
||||
"animatedPickTitle": "Elige una miniatura",
|
||||
"animatedPickHint": "Todos los resultados mantienen un lienzo de 400×400; la etiqueta indica la resolución de detalle@fps/calidad/tamaño de archivo. Elige uno y pulsa Confirmar para aplicarlo, o cancela para descartarlos todos.",
|
||||
"animatedPickConfirm": "Confirmar",
|
||||
"animatedPriority": "Prioridad",
|
||||
"priorityResolution": "Resolución primero",
|
||||
"priorityFramerate": "Frecuencia primero",
|
||||
"priorityBalanced": "Alternar resolución y frecuencia",
|
||||
"qualityLow": "Baja",
|
||||
"qualityMedium": "Media",
|
||||
"qualityHigh": "Alta",
|
||||
|
||||
@@ -36,6 +36,13 @@
|
||||
"animatedCompressing": "アニメーションサムネイルを圧縮中 {current}/{total}…",
|
||||
"animatedWebpUnavailable": "この環境では WebP をエンコードできません。APNG を選択してください。",
|
||||
"animatedCannotFit": "アニメーションを {target} KB まで圧縮できません(最小約 {actual} KB)。上限を増やすかフレーム範囲を短くしてください。",
|
||||
"animatedPickTitle": "サムネイルを選択",
|
||||
"animatedPickHint": "すべての結果は 400×400 のキャンバスです。ラベルは実際のディテール解像度@fps/品質/ファイルサイズを示します。1つ選んで確認を押すと置き換え、キャンセルですべて破棄します。",
|
||||
"animatedPickConfirm": "確認",
|
||||
"animatedPriority": "優先度",
|
||||
"priorityResolution": "解像度優先",
|
||||
"priorityFramerate": "フレームレート優先",
|
||||
"priorityBalanced": "解像度とフレームレートを交互に",
|
||||
"qualityLow": "低",
|
||||
"qualityMedium": "中",
|
||||
"qualityHigh": "高",
|
||||
|
||||
@@ -36,6 +36,13 @@
|
||||
"animatedCompressing": "애니메이션 썸네일 압축 중 {current}/{total}…",
|
||||
"animatedWebpUnavailable": "현재 환경에서 WebP를 인코딩할 수 없습니다. APNG를 선택하세요.",
|
||||
"animatedCannotFit": "애니메이션을 {target}KB로 줄일 수 없습니다(최소 약 {actual}KB). 제한을 높이거나 프레임 범위를 줄이세요.",
|
||||
"animatedPickTitle": "썸네일 선택",
|
||||
"animatedPickHint": "모든 결과의 캔버스는 400×400이며, 라벨은 실제 디테일 해상도@fps/품질/파일 크기입니다. 하나를 선택하고 확인을 누르면 적용되고, 취소하면 모두 버려집니다.",
|
||||
"animatedPickConfirm": "확인",
|
||||
"animatedPriority": "우선 순위",
|
||||
"priorityResolution": "해상도 우선",
|
||||
"priorityFramerate": "프레임률 우선",
|
||||
"priorityBalanced": "해상도와 프레임률 교차",
|
||||
"qualityLow": "낮음",
|
||||
"qualityMedium": "보통",
|
||||
"qualityHigh": "높음",
|
||||
|
||||
@@ -36,6 +36,13 @@
|
||||
"animatedCompressing": "Сжатие анимированной миниатюры {current}/{total}…",
|
||||
"animatedWebpUnavailable": "Эта среда не поддерживает кодирование WebP. Выберите APNG.",
|
||||
"animatedCannotFit": "Анимацию нельзя уменьшить до {target} КБ (минимум около {actual} КБ). Увеличьте лимит или сократите диапазон кадров.",
|
||||
"animatedPickTitle": "Выберите миниатюру",
|
||||
"animatedPickHint": "У всех результатов холст 400×400; в подписи указаны реальное разрешение детализации@fps/качество/размер файла. Выберите результат и нажмите «Подтвердить», чтобы применить его, или отмените, чтобы всё отбросить.",
|
||||
"animatedPickConfirm": "Подтвердить",
|
||||
"animatedPriority": "Приоритет",
|
||||
"priorityResolution": "Сначала разрешение",
|
||||
"priorityFramerate": "Сначала частота кадров",
|
||||
"priorityBalanced": "Чередовать разрешение и частоту",
|
||||
"qualityLow": "Низкое",
|
||||
"qualityMedium": "Среднее",
|
||||
"qualityHigh": "Высокое",
|
||||
|
||||
@@ -36,6 +36,13 @@
|
||||
"animatedCompressing": "正在压缩动画缩略图 {current}/{total}…",
|
||||
"animatedWebpUnavailable": "当前环境不支持 WebP 编码,请选择 APNG",
|
||||
"animatedCannotFit": "无法在保留动画的前提下压缩到 {target} KB(最小约 {actual} KB),请提高上限或缩短帧范围",
|
||||
"animatedPickTitle": "选择一个缩略图",
|
||||
"animatedPickHint": "所有结果画布都是 400×400,标签为实际细节分辨率@帧率/质量/文件大小。点选一个结果后按确认替换缩略图,取消则全部放弃。",
|
||||
"animatedPickConfirm": "确认",
|
||||
"animatedPriority": "优先级别",
|
||||
"priorityResolution": "分辨率优先",
|
||||
"priorityFramerate": "帧率优先",
|
||||
"priorityBalanced": "分辨率和帧率交替进行",
|
||||
"qualityLow": "低",
|
||||
"qualityMedium": "中",
|
||||
"qualityHigh": "高",
|
||||
|
||||
@@ -36,6 +36,13 @@
|
||||
"animatedCompressing": "正在壓縮動畫縮圖 {current}/{total}…",
|
||||
"animatedWebpUnavailable": "目前環境不支援 WebP 編碼,請選擇 APNG",
|
||||
"animatedCannotFit": "無法在保留動畫的情況下壓縮到 {target} KB(最小約 {actual} KB),請提高上限或縮短影格範圍",
|
||||
"animatedPickTitle": "選擇一個縮圖",
|
||||
"animatedPickHint": "所有結果畫布都是 400×400,標籤為實際細節解析度@影格率/品質/檔案大小。點選一個結果後按確認替換縮圖,取消則全部放棄。",
|
||||
"animatedPickConfirm": "確認",
|
||||
"animatedPriority": "優先級別",
|
||||
"priorityResolution": "解析度優先",
|
||||
"priorityFramerate": "影格率優先",
|
||||
"priorityBalanced": "解析度與影格率交替進行",
|
||||
"qualityLow": "低",
|
||||
"qualityMedium": "中",
|
||||
"qualityHigh": "高",
|
||||
|
||||
Reference in new issue
Block a user