feat: 完善Topaz Video AI SDK并重新组织models目录结构
主要改进: AI引擎和基准测试支持: - 完整支持所有AI引擎标志 (Artemis, Gaia, Theia, Proteus, Iris) - 实现引擎特定的参数优化和FFmpeg命令生成 - 添加基准测试模板和性能测试功能 - 新增专用预设模板 (animation_enhance, detail_recovery等) 音频编码器智能化: - 完善音频编码器配置和自动选择 - 支持AAC, AC3, PCM, Vorbis等多种编码器 - 实现质量级别自动映射和容器格式兼容性检查 - 添加音频编码器演示示例 目录结构重新组织: - 将models目录按功能分类重新组织 - 视觉-语言模型配置 -> 视觉-语言模型配置/ - 编码解码配置 -> 编码解码配置/ - 基准测试配置 -> config/ - 其他配置文件 -> 其他配置/ 技术增强: - 增强TemplateBuilder功能 (ai_engine, focus_fix_level, benchmark_mode等) - 完善FFmpeg参数生成和模型映射 - 添加智能推荐系统和性能优化 - 新增多个演示示例 (benchmarks_demo, audio_codecs_demo等) 完整性提升: - 模板属性使用率达到100% - 所有AI引擎和编码器都有明确用途和处理方案 - 完整的文档分析和使用指南
This commit is contained in:
67
cargos/tvai-v2/编码解码配置/audio-codecs.json
Normal file
67
cargos/tvai-v2/编码解码配置/audio-codecs.json
Normal file
@@ -0,0 +1,67 @@
|
||||
[
|
||||
{
|
||||
"name": "AAC",
|
||||
"ffmpegOpts": "aac -ac 2",
|
||||
"ext": [
|
||||
"mp4",
|
||||
"mov",
|
||||
"mkv",
|
||||
"avi"
|
||||
],
|
||||
"bitrate": {
|
||||
"min": 32,
|
||||
"minRec": 128,
|
||||
"max": 320,
|
||||
"default": 320,
|
||||
"suggested": [
|
||||
128,
|
||||
160,
|
||||
192,
|
||||
256,
|
||||
320
|
||||
],
|
||||
"ffmpegOpt": "-b:a <BITRATE>k"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "AC3",
|
||||
"ffmpegOpts": "ac3",
|
||||
"ext": [
|
||||
"mp4",
|
||||
"mov",
|
||||
"mkv",
|
||||
"avi"
|
||||
],
|
||||
"bitrate": {
|
||||
"min": 160,
|
||||
"minRec": 160,
|
||||
"max": 640,
|
||||
"default": 448,
|
||||
"suggested": [
|
||||
160,
|
||||
192,
|
||||
256,
|
||||
320,
|
||||
448,
|
||||
640
|
||||
],
|
||||
"ffmpegOpt": "-b:a <BITRATE>k"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "PCM",
|
||||
"ffmpegOpts": "pcm_s24le",
|
||||
"ext": [
|
||||
"mov",
|
||||
"mkv",
|
||||
"avi"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "Vorbis",
|
||||
"ffmpegOpts": "vorbis -ac 2",
|
||||
"ext": [
|
||||
"webm"
|
||||
]
|
||||
}
|
||||
]
|
||||
28
cargos/tvai-v2/编码解码配置/model-recommendation-rules.json
Normal file
28
cargos/tvai-v2/编码解码配置/model-recommendation-rules.json
Normal file
@@ -0,0 +1,28 @@
|
||||
[
|
||||
{
|
||||
"id": "target-resolution",
|
||||
"property": "height",
|
||||
"type":"range",
|
||||
"conditions": [
|
||||
{
|
||||
"max": 480,
|
||||
"min": 1,
|
||||
"recommendedModelValues": ["iris", "artemis"]
|
||||
},
|
||||
{
|
||||
"min": 481,
|
||||
"max": 720,
|
||||
"recommendedModelValues": ["proteus", "rhea"]
|
||||
},
|
||||
{
|
||||
"min": 721,
|
||||
"max": 1080,
|
||||
"recommendedModelValues": ["proteus", "nyx", "rhea"]
|
||||
},
|
||||
{
|
||||
"min": 1081,
|
||||
"recommendedModelValues": ["nyx", "theia", "proteus"]
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
846
cargos/tvai-v2/编码解码配置/video-encoders.json
Normal file
846
cargos/tvai-v2/编码解码配置/video-encoders.json
Normal file
@@ -0,0 +1,846 @@
|
||||
[
|
||||
{
|
||||
"id": "prores-422-proxy-win",
|
||||
"encoder": "ProRes",
|
||||
"profile": "422 Proxy",
|
||||
"allowsAlpha": 0,
|
||||
"ffmpegOpts": "-c:v prores_ks -profile:v 0 -vendor apl0 -quant_mat lt -bits_per_mb 525 -pix_fmt yuv422p10le",
|
||||
"ext": [
|
||||
"mov"
|
||||
],
|
||||
"os": "windows|linux",
|
||||
"minSize": [1,1],
|
||||
"maxSize": [16386,16386],
|
||||
"maxBitDepth": 10,
|
||||
"doNotScaleFullColorRange": "transcode"
|
||||
},
|
||||
{
|
||||
"id": "prores-422-std-win",
|
||||
"encoder": "ProRes",
|
||||
"profile": "422 Std",
|
||||
"allowsAlpha": 0,
|
||||
"ffmpegOpts": "-c:v prores_ks -profile:v 2 -vendor apl0 -quant_mat hq -bits_per_mb 1350 -pix_fmt yuv422p10le",
|
||||
"ext": [
|
||||
"mov"
|
||||
],
|
||||
"os": "windows|linux",
|
||||
"minSize": [1,1],
|
||||
"maxSize": [16386,16386],
|
||||
"maxBitDepth": 10,
|
||||
"doNotScaleFullColorRange": "transcode"
|
||||
},
|
||||
{
|
||||
"id": "prores-422-lt-win",
|
||||
"encoder": "ProRes",
|
||||
"profile": "422 LT",
|
||||
"allowsAlpha": 0,
|
||||
"ffmpegOpts": "-c:v prores_ks -profile:v 1 -vendor apl0 -quant_mat lt -bits_per_mb 525 -pix_fmt yuv422p10le",
|
||||
"ext": [
|
||||
"mov"
|
||||
],
|
||||
"os": "windows|linux",
|
||||
"minSize": [1,1],
|
||||
"maxSize": [16386,16386],
|
||||
"maxBitDepth": 10,
|
||||
"doNotScaleFullColorRange": "transcode"
|
||||
},
|
||||
{
|
||||
"id": "prores-422-hq-win",
|
||||
"encoder": "ProRes",
|
||||
"profile": "422 HQ",
|
||||
"allowsAlpha": 0,
|
||||
"ffmpegOpts": "-c:v prores_ks -profile:v 3 -vendor apl0 -quant_mat hq -bits_per_mb 1350 -pix_fmt yuv422p10le",
|
||||
"ext": [
|
||||
"mov"
|
||||
],
|
||||
"os": "windows|linux",
|
||||
"minSize": [1,1],
|
||||
"maxSize": [16386,16386],
|
||||
"maxBitDepth": 10,
|
||||
"doNotScaleFullColorRange": "transcode"
|
||||
},
|
||||
{
|
||||
"id": "prores-422-proxy-osx",
|
||||
"encoder": "ProRes",
|
||||
"profile": "422 Proxy",
|
||||
"allowsAlpha": 0,
|
||||
"ffmpegOpts": "-c:v prores_videotoolbox -profile:v proxy -pix_fmt p210le -allow_sw 1",
|
||||
"ext": [
|
||||
"mov"
|
||||
],
|
||||
"os": "osx",
|
||||
"minSize": [2,2],
|
||||
"maxSize": [15360,8640]
|
||||
},
|
||||
{
|
||||
"id": "prores-422-std-osx",
|
||||
"encoder": "ProRes",
|
||||
"profile": "422 Std",
|
||||
"allowsAlpha": 0,
|
||||
"ffmpegOpts": "-c:v prores_videotoolbox -profile:v standard -pix_fmt p210le -allow_sw 1",
|
||||
"ext": [
|
||||
"mov"
|
||||
],
|
||||
"os": "osx",
|
||||
"minSize": [2,2],
|
||||
"maxSize": [15360,8640]
|
||||
},
|
||||
{
|
||||
"id": "prores-422-lt-osx",
|
||||
"encoder": "ProRes",
|
||||
"profile": "422 LT",
|
||||
"allowsAlpha": 0,
|
||||
"ffmpegOpts": "-c:v prores_videotoolbox -profile:v lt -pix_fmt p210le -allow_sw 1",
|
||||
"ext": [
|
||||
"mov"
|
||||
],
|
||||
"os": "osx",
|
||||
"minSize": [2,2],
|
||||
"maxSize": [15360,8640]
|
||||
},
|
||||
{
|
||||
"id": "prores-422-hq-osx",
|
||||
"encoder": "ProRes",
|
||||
"profile": "422 HQ",
|
||||
"allowsAlpha": 0,
|
||||
"ffmpegOpts": "-c:v prores_videotoolbox -profile:v hq -pix_fmt p210le -allow_sw 1",
|
||||
"ext": [
|
||||
"mov"
|
||||
],
|
||||
"os": "osx",
|
||||
"minSize": [2,2],
|
||||
"maxSize": [15360,8640]
|
||||
},
|
||||
{
|
||||
"id": "prores-422-xq-osx",
|
||||
"encoder": "ProRes",
|
||||
"profile": "4444 XQ",
|
||||
"allowsAlpha": 0,
|
||||
"ffmpegOpts": "-c:v prores_videotoolbox -profile:v xq -color_range tv -pix_fmt p416le -allow_sw 1",
|
||||
"ext": [
|
||||
"mov"
|
||||
],
|
||||
"os": "osx",
|
||||
"osVersion": 12.0,
|
||||
"minSize": [2,2],
|
||||
"maxSize": [15360,8640],
|
||||
"doNotScaleFullColorRange": "always"
|
||||
},
|
||||
{
|
||||
"id": "h264-high-osx-dynamic",
|
||||
"encoder": "H264",
|
||||
"profile": "High",
|
||||
"allowsAlpha": 0,
|
||||
"ffmpegOpts": "-c:v h264_videotoolbox -profile:v high -pix_fmt yuv420p -allow_sw 1 -g 30",
|
||||
"ext": [
|
||||
"mov",
|
||||
"mkv",
|
||||
"mp4"
|
||||
],
|
||||
"bitrateOpts": {
|
||||
"cbr": "-b:v <CONST_BITRATE_VALUE>",
|
||||
"vbr": "-b:v 0 -q:v <QV_VALUE>"
|
||||
},
|
||||
"cqpValues": {
|
||||
"High": [ 82 ],
|
||||
"Mid": [ 60 ],
|
||||
"Low": [ 50 ]
|
||||
},
|
||||
"gpu": "appleSilicon",
|
||||
"autoBitsPerPixel": "1.0",
|
||||
"maxBitRate": 2000,
|
||||
"os": "osx",
|
||||
"minSize": [2,2],
|
||||
"maxSize": [7680,4320],
|
||||
"doNotScaleFullColorRange": "always"
|
||||
},
|
||||
{
|
||||
"id": "h264-high-osx",
|
||||
"encoder": "H264",
|
||||
"profile": "High",
|
||||
"allowsAlpha": 0,
|
||||
"ffmpegOpts": "-c:v h264_videotoolbox -profile:v high -pix_fmt yuv420p -allow_sw 1 -g 30",
|
||||
"ext": [
|
||||
"mov",
|
||||
"mkv",
|
||||
"mp4"
|
||||
],
|
||||
"gpu": "appleIntel",
|
||||
"autoBitsPerPixel": "1.0",
|
||||
"maxBitRate": 2000,
|
||||
"os": "osx",
|
||||
"minSize": [2,2],
|
||||
"maxSize": [7680,4320],
|
||||
"doNotScaleFullColorRange": "always"
|
||||
},
|
||||
{
|
||||
"id": "h265-main-osx-dynamic",
|
||||
"encoder": "H265",
|
||||
"profile": "Main",
|
||||
"allowsAlpha": 0,
|
||||
"ffmpegOpts": "-c:v hevc_videotoolbox -profile:v main -tag:v hvc1 -pix_fmt yuv420p -allow_sw 1 -g 30",
|
||||
"ext": [
|
||||
"mov",
|
||||
"mkv",
|
||||
"mp4"
|
||||
],
|
||||
"bitrateOpts": {
|
||||
"cbr": "-b:v <CONST_BITRATE_VALUE>",
|
||||
"vbr": "-b:v 0 -q:v <QV_VALUE>"
|
||||
},
|
||||
"cqpValues": {
|
||||
"High": [ 82 ],
|
||||
"Mid": [ 60 ],
|
||||
"Low": [ 50 ]
|
||||
},
|
||||
"gpu": "appleSilicon",
|
||||
"autoBitsPerPixel": "0.8",
|
||||
"maxBitRate": 2000,
|
||||
"os": "osx",
|
||||
"minSize": [2,2],
|
||||
"maxSize": [8192,4320],
|
||||
"doNotScaleFullColorRange": "always"
|
||||
},
|
||||
{
|
||||
"id": "h265-main-osx",
|
||||
"encoder": "H265",
|
||||
"profile": "Main",
|
||||
"allowsAlpha": 0,
|
||||
"ffmpegOpts": "-c:v hevc_videotoolbox -profile:v main -tag:v hvc1 -pix_fmt yuv420p -allow_sw 1 -g 30",
|
||||
"ext": [
|
||||
"mov",
|
||||
"mkv",
|
||||
"mp4"
|
||||
],
|
||||
"gpu": "appleIntel",
|
||||
"autoBitsPerPixel": "0.8",
|
||||
"maxBitRate": 2000,
|
||||
"os": "osx",
|
||||
"minSize": [2,2],
|
||||
"maxSize": [8192,4320],
|
||||
"doNotScaleFullColorRange": "always"
|
||||
},
|
||||
{
|
||||
"id": "h265-main10-osx-dynamic",
|
||||
"encoder": "H265",
|
||||
"profile": "Main10",
|
||||
"allowsAlpha": 0,
|
||||
"ffmpegOpts": "-c:v hevc_videotoolbox -profile:v main10 -tag:v hvc1 -pix_fmt p010le -allow_sw 1 -g 30",
|
||||
"ext": [
|
||||
"mov",
|
||||
"mkv",
|
||||
"mp4"
|
||||
],
|
||||
"bitrateOpts": {
|
||||
"cbr": "-b:v <CONST_BITRATE_VALUE>",
|
||||
"vbr": "-b:v 0 -q:v <QV_VALUE>"
|
||||
},
|
||||
"cqpValues": {
|
||||
"High": [ 82 ],
|
||||
"Mid": [ 60 ],
|
||||
"Low": [ 50 ]
|
||||
},
|
||||
"gpu": "appleSilicon",
|
||||
"autoBitsPerPixel": "1.0",
|
||||
"maxBitRate": 2000,
|
||||
"os": "osx",
|
||||
"minSize": [2,2],
|
||||
"maxSize": [8192,4320],
|
||||
"doNotScaleFullColorRange": "always"
|
||||
},
|
||||
{
|
||||
"id": "h265-main10-osx",
|
||||
"encoder": "H265",
|
||||
"profile": "Main10",
|
||||
"allowsAlpha": 0,
|
||||
"ffmpegOpts": "-c:v hevc_videotoolbox -profile:v main10 -tag:v hvc1 -pix_fmt p010le -allow_sw 1 -g 30",
|
||||
"ext": [
|
||||
"mov",
|
||||
"mkv",
|
||||
"mp4"
|
||||
],
|
||||
"gpu": "appleIntel",
|
||||
"autoBitsPerPixel": "1.0",
|
||||
"maxBitRate": 2000,
|
||||
"os": "osx",
|
||||
"minSize": [2,2],
|
||||
"maxSize": [8192,4320],
|
||||
"doNotScaleFullColorRange": "always"
|
||||
},
|
||||
{
|
||||
"id": "h264-high-win-amd",
|
||||
"encoder": "H264",
|
||||
"profile": "High",
|
||||
"allowsAlpha": 0,
|
||||
"ffmpegOpts": "-c:v h264_amf -profile:v high -pix_fmt yuv420p -g 30",
|
||||
"gpu": "amd",
|
||||
"bitrateOpts": {
|
||||
"cbr": "-b:v <CONST_BITRATE_VALUE>",
|
||||
"vbr": "-b:v 0 -quality 0 -rc cqp -qp_i <QPI_VALUE> -qp_p <QPP_VALUE> -qp_b <QPB_VALUE>"
|
||||
},
|
||||
"cqpValues": {
|
||||
"High": [ 19, 20, 20 ],
|
||||
"Mid": [ 20, 23, 23 ],
|
||||
"Low": [ 28, 30, 30 ]
|
||||
},
|
||||
"ext": [
|
||||
"mov",
|
||||
"mkv",
|
||||
"mp4"
|
||||
],
|
||||
"maxBitRate": 2000,
|
||||
"os": "windows",
|
||||
"minSize": [2,2],
|
||||
"maxSize": [4096,4096],
|
||||
"device": "amd|radeon"
|
||||
},
|
||||
{
|
||||
"id": "h265-main-win-amd",
|
||||
"encoder": "H265",
|
||||
"profile": "Main",
|
||||
"allowsAlpha": 0,
|
||||
"gpu": "amd",
|
||||
"ffmpegOpts": "-c:v hevc_amf -profile:v main -profile_tier main -tag:v hvc1 -pix_fmt yuv420p -g 30",
|
||||
"bitrateOpts": {
|
||||
"cbr": "-b:v <CONST_BITRATE_VALUE> ",
|
||||
"vbr": "-b:v 0 -quality 0 -rc cqp -qp_i <QPI_VALUE> -qp_p <QPP_VALUE>"
|
||||
},
|
||||
"cqpValues": {
|
||||
"High": [17, 19 ],
|
||||
"Mid": [20, 23 ],
|
||||
"Low": [28, 30 ]
|
||||
},
|
||||
"ext": [
|
||||
"mov",
|
||||
"mkv",
|
||||
"mp4"
|
||||
],
|
||||
"maxBitRate": 2000,
|
||||
"os": "windows",
|
||||
"minSize": [2,2],
|
||||
"maxSize": [8192,4320],
|
||||
"device": "amd|radeon"
|
||||
},
|
||||
{
|
||||
"id": "h265-high-win-amd",
|
||||
"encoder": "H265",
|
||||
"profile": "High",
|
||||
"allowsAlpha": 0,
|
||||
"gpu": "amd",
|
||||
"ffmpegOpts": "-c:v hevc_amf -profile:v main -profile_tier high -tag:v hvc1 -pix_fmt yuv420p -g 30",
|
||||
"bitrateOpts": {
|
||||
"cbr": "-b:v <CONST_BITRATE_VALUE> ",
|
||||
"vbr": "-b:v 0 -quality 0 -rc cqp -qp_i <QPI_VALUE> -qp_p <QPP_VALUE>"
|
||||
},
|
||||
"cqpValues": {
|
||||
"High": [ 17, 19 ],
|
||||
"Mid": [ 20, 23 ],
|
||||
"Low": [ 28, 30 ]
|
||||
},
|
||||
"ext": [
|
||||
"mov",
|
||||
"mkv",
|
||||
"mp4"
|
||||
],
|
||||
"maxBitRate": 2000,
|
||||
"os": "windows",
|
||||
"minSize": [2,2],
|
||||
"maxSize": [8192,4320],
|
||||
"device": "amd|radeon"
|
||||
},
|
||||
{
|
||||
"id": "h264-main-win-nvidia",
|
||||
"encoder": "H264",
|
||||
"profile": "High",
|
||||
"allowsAlpha": 0,
|
||||
"gpu": "nvidia",
|
||||
"ffmpegOpts": "-c:v h264_nvenc -profile:v high -pix_fmt yuv420p -g 30",
|
||||
"bitrateOpts": {
|
||||
"cbr": "-rc cbr -b:v <CONST_BITRATE_VALUE> -preset p6 ",
|
||||
"vbr": "-preset p7 -tune hq -rc constqp -qp <QP_VALUE> -rc-lookahead 20 -spatial_aq 1 -aq-strength 15 -b:v 0"
|
||||
},
|
||||
"cqpValues": {
|
||||
"High": [ 18 ],
|
||||
"Mid": [ 25 ],
|
||||
"Low": [ 28 ]
|
||||
},
|
||||
"ext": [
|
||||
"mov",
|
||||
"mkv",
|
||||
"mp4"
|
||||
],
|
||||
"maxBitRate": 2000,
|
||||
"os": "windows|linux",
|
||||
"device": "nvidia|tesla",
|
||||
"minSize": [145,145],
|
||||
"maxSize": [4096,4096],
|
||||
"maxBitDepth": 8
|
||||
},
|
||||
{
|
||||
"id": "h265-main-win-nvidia",
|
||||
"encoder": "H265",
|
||||
"profile": "Main",
|
||||
"allowsAlpha": 0,
|
||||
"gpu": "nvidia",
|
||||
"ffmpegOpts": "-c:v hevc_nvenc -profile:v main -pix_fmt yuv420p -b_ref_mode disabled -tag:v hvc1 -g 30",
|
||||
"bitrateOpts": {
|
||||
"cbr": "-rc cbr -b:v <CONST_BITRATE_VALUE> -preset p6",
|
||||
"vbr": "-preset p7 -tune hq -rc constqp -qp <QP_VALUE> -rc-lookahead 20 -spatial_aq 1 -aq-strength 15 -b:v 0"
|
||||
},
|
||||
"cqpValues": {
|
||||
"High": [ 17 ],
|
||||
"Mid": [ 25 ],
|
||||
"Low": [ 28 ]
|
||||
},
|
||||
"ext": [
|
||||
"mov",
|
||||
"mkv",
|
||||
"mp4"
|
||||
],
|
||||
"maxBitRate": 2000,
|
||||
"os": "windows|linux",
|
||||
"device": "nvidia|tesla",
|
||||
"minSize": [129,129],
|
||||
"maxSize": [8192,4320],
|
||||
"maxBitDepth": 12
|
||||
},
|
||||
{
|
||||
"id": "h265-main10-win-nvidia",
|
||||
"encoder": "H265",
|
||||
"profile": "Main10",
|
||||
"allowsAlpha": 0,
|
||||
"gpu": "nvidia",
|
||||
"ffmpegOpts": "-c:v hevc_nvenc -profile:v main10 -pix_fmt p010le -b_ref_mode disabled -tag:v hvc1 -g 30",
|
||||
"bitrateOpts": {
|
||||
"cbr": "-rc cbr -b:v <CONST_BITRATE_VALUE> -preset p6",
|
||||
"vbr": "-preset p7 -tune hq -rc constqp -qp <QP_VALUE> -rc-lookahead 20 -spatial_aq 1 -aq-strength 15 -b:v 0"
|
||||
},
|
||||
"cqpValues": {
|
||||
"High": [ 17 ],
|
||||
"Mid": [ 25 ],
|
||||
"Low": [ 28 ]
|
||||
},
|
||||
"ext": [
|
||||
"mov",
|
||||
"mkv",
|
||||
"mp4"
|
||||
],
|
||||
"maxBitRate": 2000,
|
||||
"os": "windows|linux",
|
||||
"device": "nvidia|tesla",
|
||||
"minSize": [129,129],
|
||||
"maxSize": [8192,4320],
|
||||
"maxBitDepth": 12
|
||||
},
|
||||
{
|
||||
"id": "h264-high-win-intel",
|
||||
"encoder": "H264",
|
||||
"profile": "High",
|
||||
"allowsAlpha": 0,
|
||||
"ffmpegOpts": "-c:v h264_qsv -profile:v high -preset medium -max_frame_size 65534 -pix_fmt nv12 -g 30",
|
||||
"ext": [
|
||||
"mov",
|
||||
"mkv",
|
||||
"mp4"
|
||||
],
|
||||
"autoBitsPerPixel": "1.0",
|
||||
"maxBitRate": 2000,
|
||||
"os": "windows",
|
||||
"device": "intel",
|
||||
"minSize": [17,17],
|
||||
"maxSize": [3840,2160]
|
||||
},
|
||||
{
|
||||
"id": "h265-main-win-intel",
|
||||
"encoder": "H265",
|
||||
"profile": "Main",
|
||||
"allowsAlpha": 0,
|
||||
"ffmpegOpts": "-c:v hevc_qsv -profile:v main -preset medium -max_frame_size 65534 -pix_fmt nv12 -g 30",
|
||||
"ext": [
|
||||
"mov",
|
||||
"mkv",
|
||||
"mp4"
|
||||
],
|
||||
"autoBitsPerPixel": "0.8",
|
||||
"maxBitRate": 2000,
|
||||
"os": "windows",
|
||||
"device": "intel",
|
||||
"minSize": [1,1],
|
||||
"maxSize": [8192,4320]
|
||||
},
|
||||
{
|
||||
"id": "h265-main10-win-intel",
|
||||
"encoder": "H265",
|
||||
"profile": "Main10",
|
||||
"allowsAlpha": 0,
|
||||
"ffmpegOpts": "-c:v hevc_qsv -profile:v main10 -preset medium -max_frame_size 65534 -pix_fmt p010le -g 30",
|
||||
"ext": [
|
||||
"mov",
|
||||
"mkv",
|
||||
"mp4"
|
||||
],
|
||||
"autoBitsPerPixel": "1.0",
|
||||
"maxBitRate": 2000,
|
||||
"os": "windows",
|
||||
"device": "intel",
|
||||
"minSize": [1,1],
|
||||
"maxSize": [8192,4320]
|
||||
},
|
||||
{
|
||||
"id": "av1-win-nvidia",
|
||||
"encoder": "AV1",
|
||||
"profile": "8-bit",
|
||||
"allowsAlpha": 0,
|
||||
"gpu": "nvidia",
|
||||
"ffmpegOpts": "-c:v av1_nvenc -preset p7 -pix_fmt yuv420p",
|
||||
"bitrateOpts": {
|
||||
"cbr": "-rc cbr -b:v <CONST_BITRATE_VALUE> -preset p7",
|
||||
"vbr": "-preset p7 -tune hq -cq <QP_VALUE> -rc-lookahead 20 -spatial_aq 1 -aq-strength 1 -b:v 0"
|
||||
},
|
||||
"cqpValues": {
|
||||
"High": [ 23 ],
|
||||
"Mid": [ 31 ],
|
||||
"Low": [ 40 ]
|
||||
},
|
||||
"ext": [
|
||||
"mkv",
|
||||
"webm",
|
||||
"mp4"
|
||||
],
|
||||
"os": "windows|linux",
|
||||
"device": "nvidia",
|
||||
"maxBitRate": 800,
|
||||
"minSize": [1,1],
|
||||
"maxSize": [16384,8704],
|
||||
"maxBitDepth": 12,
|
||||
"compute": 809
|
||||
},
|
||||
{
|
||||
"id": "av1-10bit-win-nvidia",
|
||||
"encoder": "AV1",
|
||||
"profile": "10-bit",
|
||||
"allowsAlpha": 0,
|
||||
"gpu": "nvidia",
|
||||
"ffmpegOpts": "-c:v av1_nvenc -preset p7 -pix_fmt p010le",
|
||||
"bitrateOpts": {
|
||||
"cbr": "-rc cbr -b:v <CONST_BITRATE_VALUE> -preset p7",
|
||||
"vbr": "-preset p7 -tune hq -cq <QP_VALUE> -rc-lookahead 20 -spatial_aq 1 -aq-strength 1 -b:v 0"
|
||||
},
|
||||
"cqpValues": {
|
||||
"High": [ 20 ],
|
||||
"Mid": [ 28 ],
|
||||
"Low": [ 33 ]
|
||||
},
|
||||
"ext": [
|
||||
"mkv",
|
||||
"webm",
|
||||
"mp4"
|
||||
],
|
||||
"os": "windows|linux",
|
||||
"device": "nvidia",
|
||||
"maxBitRate": 800,
|
||||
"minSize": [1,1],
|
||||
"maxSize": [16384,8704],
|
||||
"maxBitDepth": 12,
|
||||
"compute": 809
|
||||
},
|
||||
{
|
||||
"id": "av1-win-amd",
|
||||
"encoder": "AV1",
|
||||
"allowsAlpha": 0,
|
||||
"gpu": "amd",
|
||||
"ffmpegOpts": "-c:v av1_amf -profile:v main -quality:v balanced -pix_fmt yuv420p",
|
||||
"ext": [
|
||||
"mkv",
|
||||
"webm",
|
||||
"mp4"
|
||||
],
|
||||
"os": "windows",
|
||||
"device": "Radeon.*\b7[0-9]+\b.*",
|
||||
"maxBitRate": 800,
|
||||
"minSize": [1,1],
|
||||
"maxSize": [16384,8704],
|
||||
"maxBitDepth": 12
|
||||
},
|
||||
{
|
||||
"id": "av1-win-arc",
|
||||
"encoder": "AV1",
|
||||
"allowsAlpha": 0,
|
||||
"ffmpegOpts": "-c:v av1_qsv -profile:v main -preset 4 -pix_fmt nv12",
|
||||
"ext": [
|
||||
"mkv",
|
||||
"webm",
|
||||
"mp4"
|
||||
],
|
||||
"maxBitRate": 800,
|
||||
"os": "windows",
|
||||
"device": "arc",
|
||||
"minSize": [1,1],
|
||||
"maxSize": [16384,8704],
|
||||
"maxBitDepth": 12
|
||||
},
|
||||
{
|
||||
"id": "ffv1-8bit-420",
|
||||
"encoder": "FFV1",
|
||||
"profile": "8-bit 4:2:0",
|
||||
"allowsAlpha": 0,
|
||||
"ffmpegOpts": "-level 3 -c:v ffv1 -pix_fmt yuv420p -slices 4 -slicecrc 1 -g 1",
|
||||
"ext": [
|
||||
"mkv",
|
||||
"mov",
|
||||
"avi"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "ffv1-10bit-420",
|
||||
"encoder": "FFV1",
|
||||
"profile": "10-bit 4:2:0",
|
||||
"allowsAlpha": 0,
|
||||
"ffmpegOpts": "-level 3 -c:v ffv1 -pix_fmt yuv420p10le -slices 4 -slicecrc 1 -g 1",
|
||||
"ext": [
|
||||
"mkv",
|
||||
"mov",
|
||||
"avi"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "ffv1-12bit-420",
|
||||
"encoder": "FFV1",
|
||||
"profile": "12-bit 4:2:0",
|
||||
"allowsAlpha": 0,
|
||||
"ffmpegOpts": "-level 3 -c:v ffv1 -pix_fmt yuv420p12le -slices 4 -slicecrc 1 -g 1",
|
||||
"ext": [
|
||||
"mkv",
|
||||
"mov",
|
||||
"avi"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "ffv1-8bit-422",
|
||||
"encoder": "FFV1",
|
||||
"profile": "8-bit 4:2:2",
|
||||
"allowsAlpha": 0,
|
||||
"ffmpegOpts": "-level 3 -c:v ffv1 -pix_fmt yuv422p -slices 4 -slicecrc 1 -g 1",
|
||||
"ext": [
|
||||
"mkv",
|
||||
"mov",
|
||||
"avi"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "ffv1-10bit-422",
|
||||
"encoder": "FFV1",
|
||||
"profile": "10-bit 4:2:2",
|
||||
"allowsAlpha": 0,
|
||||
"ffmpegOpts": "-level 3 -c:v ffv1 -pix_fmt yuv422p10le -slices 4 -slicecrc 1 -g 1",
|
||||
"ext": [
|
||||
"mkv",
|
||||
"mov",
|
||||
"avi"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "ffv1-12bit-422",
|
||||
"encoder": "FFV1",
|
||||
"profile": "12-bit 4:2:2",
|
||||
"allowsAlpha": 0,
|
||||
"ffmpegOpts": "-level 3 -c:v ffv1 -pix_fmt yuv422p12le -slices 4 -slicecrc 1 -g 1",
|
||||
"ext": [
|
||||
"mkv",
|
||||
"mov",
|
||||
"avi"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "ffv1-8bit-444",
|
||||
"encoder": "FFV1",
|
||||
"profile": "8-bit 4:4:4",
|
||||
"allowsAlpha": 0,
|
||||
"ffmpegOpts": "-level 3 -c:v ffv1 -pix_fmt yuv444p -slices 4 -slicecrc 1 -g 1",
|
||||
"ext": [
|
||||
"mkv",
|
||||
"mov",
|
||||
"avi"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "ffv1-10bit-444",
|
||||
"encoder": "FFV1",
|
||||
"profile": "10-bit 4:4:4",
|
||||
"allowsAlpha": 0,
|
||||
"ffmpegOpts": "-level 3 -c:v ffv1 -pix_fmt yuv444p10le -slices 4 -slicecrc 1 -g 1",
|
||||
"ext": [
|
||||
"mkv",
|
||||
"mov",
|
||||
"avi"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "ffv1-12bit-444",
|
||||
"encoder": "FFV1",
|
||||
"profile": "12-bit 4:4:4",
|
||||
"allowsAlpha": 0,
|
||||
"ffmpegOpts": "-level 3 -c:v ffv1 -pix_fmt yuv444p12le -slices 4 -slicecrc 1 -g 1",
|
||||
"ext": [
|
||||
"mkv",
|
||||
"mov",
|
||||
"avi"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "vp9-good",
|
||||
"encoder": "VP9",
|
||||
"profile": "Good",
|
||||
"allowsAlpha": 0,
|
||||
"ffmpegOpts": "-strict -2 -c:v libvpx-vp9 -pix_fmt yuv420p -row-mt 1 -deadline good",
|
||||
"ext": [
|
||||
"mp4",
|
||||
"mkv",
|
||||
"webm"
|
||||
],
|
||||
"maxBitRate": 2000,
|
||||
"minSize": [1,1],
|
||||
"maxSize": [15360, 8640],
|
||||
"maxBitDepth": 12
|
||||
},
|
||||
{
|
||||
"id": "vp9-best",
|
||||
"encoder": "VP9",
|
||||
"profile": "Best",
|
||||
"allowsAlpha": 0,
|
||||
"ffmpegOpts": "-strict -2 -c:v libvpx-vp9 -pix_fmt yuv420p -row-mt 1 -deadline best",
|
||||
"ext": [
|
||||
"mp4",
|
||||
"mkv",
|
||||
"webm"
|
||||
],
|
||||
"maxBitRate": 2000,
|
||||
"minSize": [1,1],
|
||||
"maxSize": [15360, 8640],
|
||||
"maxBitDepth": 12
|
||||
},
|
||||
{
|
||||
"id": "QuickTime-v210",
|
||||
"encoder": "QuickTime V210",
|
||||
"shortName": "QT V210",
|
||||
"profile": "Uncompressed YUV 10-bit 4:2:2",
|
||||
"allowsAlpha": 0,
|
||||
"ffmpegOpts": "-c:v v210 -pix_fmt yuv422p10le",
|
||||
"ext": [
|
||||
"mov",
|
||||
"mkv",
|
||||
"avi"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "QuickTime-r210",
|
||||
"encoder": "QuickTime R210",
|
||||
"shortName": "QT R210",
|
||||
"profile": "Uncompressed RGB 10-bit",
|
||||
"allowsAlpha": 0,
|
||||
"ffmpegOpts": "-c:v r210 -pix_fmt gbrp10le",
|
||||
"ext": [
|
||||
"mov",
|
||||
"mkv",
|
||||
"avi"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "QTRLE",
|
||||
"encoder": "QuickTime Animation",
|
||||
"shortName": "QT Animation",
|
||||
"profile": "Run-length compressed RGB 8-bit",
|
||||
"allowsAlpha": 1,
|
||||
"ffmpegOpts": "-c:v qtrle -pix_fmt rgb24",
|
||||
"ext": [
|
||||
"mov"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "tiff-8bit",
|
||||
"encoder": "TIFF",
|
||||
"profile": "8-bit",
|
||||
"allowsAlpha": 1,
|
||||
"ffmpegOpts": "-c:v tiff -pix_fmt rgb24 -compression_algo deflate",
|
||||
"ext": [
|
||||
"tiff"
|
||||
],
|
||||
"isImage": true
|
||||
},
|
||||
{
|
||||
"id": "tiff-16bit",
|
||||
"encoder": "TIFF",
|
||||
"profile": "16-bit",
|
||||
"allowsAlpha": 1,
|
||||
"ffmpegOpts": "-c:v tiff -pix_fmt rgb48le -compression_algo deflate",
|
||||
"ext": [
|
||||
"tiff"
|
||||
],
|
||||
"isImage": true
|
||||
},
|
||||
{
|
||||
"id": "png-8bit",
|
||||
"encoder": "PNG",
|
||||
"profile": "8-bit",
|
||||
"allowsAlpha": 1,
|
||||
"ffmpegOpts": "-c:v png -pix_fmt rgb24",
|
||||
"ext": [
|
||||
"png"
|
||||
],
|
||||
"isImage": true
|
||||
},
|
||||
{
|
||||
"id": "png-16bit",
|
||||
"encoder": "PNG",
|
||||
"profile": "16-bit",
|
||||
"allowsAlpha": 1,
|
||||
"ffmpegOpts": "-c:v png -pix_fmt rgb48be",
|
||||
"ext": [
|
||||
"png"
|
||||
],
|
||||
"isImage": true
|
||||
},
|
||||
{
|
||||
"id": "jpeg-8bit",
|
||||
"encoder": "JPEG",
|
||||
"profile": "8-bit",
|
||||
"allowsAlpha": 0,
|
||||
"ffmpegOpts": "-pix_fmt rgb24 -q:v 2",
|
||||
"ext": [
|
||||
"jpg"
|
||||
],
|
||||
"isImage": true
|
||||
},
|
||||
{
|
||||
"id": "exr",
|
||||
"encoder": "EXR",
|
||||
"allowsAlpha": 1,
|
||||
"ffmpegOpts": "-q:v 2",
|
||||
"ext": [
|
||||
"exr"
|
||||
],
|
||||
"isImage": true
|
||||
},
|
||||
{
|
||||
"id": "dpx-10",
|
||||
"encoder": "DPX",
|
||||
"allowsAlpha": 0,
|
||||
"ffmpegOpts": "-c:v dpx -pix_fmt gbrp10le",
|
||||
"profile": "10-bit",
|
||||
"ext": [
|
||||
"dpx"
|
||||
],
|
||||
"isImage": true
|
||||
},
|
||||
{
|
||||
"id": "dpx-12",
|
||||
"encoder": "DPX",
|
||||
"allowsAlpha": 0,
|
||||
"ffmpegOpts": "-c:v dpx -pix_fmt gbrp12le",
|
||||
"profile": "12-bit",
|
||||
"ext": [
|
||||
"dpx"
|
||||
],
|
||||
"isImage": true
|
||||
}
|
||||
]
|
||||
Reference in New Issue
Block a user