feat(server): advanced settings for transcoding (#3775)
* set stream with `-map` flag * updated tests * fixed audio stream mapping * added bframe setting to config * updated api * added b-frame option in dashboard * updated tests and formatting * "Advanced" section for FFmpeg with extra options * updated api * updated tests and formatting * styling * made vp9 bitstream filters conditional on b-frames * fixed gop size condition * add cq override * simplified isEdited conditions * simplified conditional flow for cq mode * fixed dto * clarified cq mode in description * formatting * added npl setting * Adjusted b-frame title and description * fixed rebase * changed defaults for pascal compatibility, added temporal aq setting * updated api * added temporal aq to ui * polished dashboard * formatting
This commit is contained in:
@@ -311,10 +311,12 @@ describe(MediaService.name, () => {
|
||||
{
|
||||
inputOptions: [],
|
||||
outputOptions: [
|
||||
'-c:v:0 h264',
|
||||
'-c:a:0 aac',
|
||||
'-c:v h264',
|
||||
'-c:a aac',
|
||||
'-movflags faststart',
|
||||
'-fps_mode passthrough',
|
||||
'-map 0:0',
|
||||
'-map 0:1',
|
||||
'-v verbose',
|
||||
'-vf format=yuv420p',
|
||||
'-preset ultrafast',
|
||||
@@ -350,10 +352,12 @@ describe(MediaService.name, () => {
|
||||
{
|
||||
inputOptions: [],
|
||||
outputOptions: [
|
||||
'-c:v:0 h264',
|
||||
'-c:a:0 aac',
|
||||
'-c:v h264',
|
||||
'-c:a aac',
|
||||
'-movflags faststart',
|
||||
'-fps_mode passthrough',
|
||||
'-map 0:0',
|
||||
'-map 0:1',
|
||||
'-v verbose',
|
||||
'-vf format=yuv420p',
|
||||
'-preset ultrafast',
|
||||
@@ -374,10 +378,12 @@ describe(MediaService.name, () => {
|
||||
{
|
||||
inputOptions: [],
|
||||
outputOptions: [
|
||||
'-c:v:0 h264',
|
||||
'-c:a:0 aac',
|
||||
'-c:v h264',
|
||||
'-c:a aac',
|
||||
'-movflags faststart',
|
||||
'-fps_mode passthrough',
|
||||
'-map 0:0',
|
||||
'-map 0:1',
|
||||
'-v verbose',
|
||||
'-vf scale=-2:720,format=yuv420p',
|
||||
'-preset ultrafast',
|
||||
@@ -401,10 +407,12 @@ describe(MediaService.name, () => {
|
||||
{
|
||||
inputOptions: [],
|
||||
outputOptions: [
|
||||
'-c:v:0 h264',
|
||||
'-c:a:0 aac',
|
||||
'-c:v h264',
|
||||
'-c:a aac',
|
||||
'-movflags faststart',
|
||||
'-fps_mode passthrough',
|
||||
'-map 0:0',
|
||||
'-map 0:1',
|
||||
'-v verbose',
|
||||
'-vf format=yuv420p',
|
||||
'-preset ultrafast',
|
||||
@@ -426,10 +434,12 @@ describe(MediaService.name, () => {
|
||||
{
|
||||
inputOptions: [],
|
||||
outputOptions: [
|
||||
'-c:v:0 h264',
|
||||
'-c:a:0 aac',
|
||||
'-c:v h264',
|
||||
'-c:a aac',
|
||||
'-movflags faststart',
|
||||
'-fps_mode passthrough',
|
||||
'-map 0:0',
|
||||
'-map 0:1',
|
||||
'-v verbose',
|
||||
'-vf scale=720:-2,format=yuv420p',
|
||||
'-preset ultrafast',
|
||||
@@ -451,10 +461,12 @@ describe(MediaService.name, () => {
|
||||
{
|
||||
inputOptions: [],
|
||||
outputOptions: [
|
||||
'-c:v:0 h264',
|
||||
'-c:a:0 aac',
|
||||
'-c:v h264',
|
||||
'-c:a aac',
|
||||
'-movflags faststart',
|
||||
'-fps_mode passthrough',
|
||||
'-map 0:0',
|
||||
'-map 0:1',
|
||||
'-v verbose',
|
||||
'-vf scale=-2:720,format=yuv420p',
|
||||
'-preset ultrafast',
|
||||
@@ -476,10 +488,12 @@ describe(MediaService.name, () => {
|
||||
{
|
||||
inputOptions: [],
|
||||
outputOptions: [
|
||||
'-c:v:0 h264',
|
||||
'-c:a:0 aac',
|
||||
'-c:v h264',
|
||||
'-c:a aac',
|
||||
'-movflags faststart',
|
||||
'-fps_mode passthrough',
|
||||
'-map 0:0',
|
||||
'-map 0:1',
|
||||
'-v verbose',
|
||||
'-vf scale=-2:720,format=yuv420p',
|
||||
'-preset ultrafast',
|
||||
@@ -525,10 +539,12 @@ describe(MediaService.name, () => {
|
||||
{
|
||||
inputOptions: [],
|
||||
outputOptions: [
|
||||
'-c:v:0 h264',
|
||||
'-c:a:0 aac',
|
||||
'-c:v h264',
|
||||
'-c:a aac',
|
||||
'-movflags faststart',
|
||||
'-fps_mode passthrough',
|
||||
'-map 0:0',
|
||||
'-map 0:1',
|
||||
'-v verbose',
|
||||
'-vf scale=-2:720,format=yuv420p',
|
||||
'-preset ultrafast',
|
||||
@@ -555,10 +571,12 @@ describe(MediaService.name, () => {
|
||||
{
|
||||
inputOptions: [],
|
||||
outputOptions: [
|
||||
'-c:v:0 h264',
|
||||
'-c:a:0 aac',
|
||||
'-c:v h264',
|
||||
'-c:a aac',
|
||||
'-movflags faststart',
|
||||
'-fps_mode passthrough',
|
||||
'-map 0:0',
|
||||
'-map 0:1',
|
||||
'-v verbose',
|
||||
'-vf scale=-2:720,format=yuv420p',
|
||||
'-preset ultrafast',
|
||||
@@ -582,10 +600,12 @@ describe(MediaService.name, () => {
|
||||
{
|
||||
inputOptions: [],
|
||||
outputOptions: [
|
||||
'-c:v:0 h264',
|
||||
'-c:a:0 aac',
|
||||
'-c:v h264',
|
||||
'-c:a aac',
|
||||
'-movflags faststart',
|
||||
'-fps_mode passthrough',
|
||||
'-map 0:0',
|
||||
'-map 0:1',
|
||||
'-v verbose',
|
||||
'-vf scale=-2:720,format=yuv420p',
|
||||
'-preset ultrafast',
|
||||
@@ -611,10 +631,12 @@ describe(MediaService.name, () => {
|
||||
{
|
||||
inputOptions: [],
|
||||
outputOptions: [
|
||||
'-c:v:0 vp9',
|
||||
'-c:a:0 aac',
|
||||
'-c:v vp9',
|
||||
'-c:a aac',
|
||||
'-movflags faststart',
|
||||
'-fps_mode passthrough',
|
||||
'-map 0:0',
|
||||
'-map 0:1',
|
||||
'-v verbose',
|
||||
'-vf scale=-2:720,format=yuv420p',
|
||||
'-cpu-used 5',
|
||||
@@ -642,10 +664,12 @@ describe(MediaService.name, () => {
|
||||
{
|
||||
inputOptions: [],
|
||||
outputOptions: [
|
||||
'-c:v:0 vp9',
|
||||
'-c:a:0 aac',
|
||||
'-c:v vp9',
|
||||
'-c:a aac',
|
||||
'-movflags faststart',
|
||||
'-fps_mode passthrough',
|
||||
'-map 0:0',
|
||||
'-map 0:1',
|
||||
'-v verbose',
|
||||
'-vf scale=-2:720,format=yuv420p',
|
||||
'-cpu-used 2',
|
||||
@@ -672,10 +696,12 @@ describe(MediaService.name, () => {
|
||||
{
|
||||
inputOptions: [],
|
||||
outputOptions: [
|
||||
'-c:v:0 vp9',
|
||||
'-c:a:0 aac',
|
||||
'-c:v vp9',
|
||||
'-c:a aac',
|
||||
'-movflags faststart',
|
||||
'-fps_mode passthrough',
|
||||
'-map 0:0',
|
||||
'-map 0:1',
|
||||
'-v verbose',
|
||||
'-vf scale=-2:720,format=yuv420p',
|
||||
'-row-mt 1',
|
||||
@@ -701,10 +727,12 @@ describe(MediaService.name, () => {
|
||||
{
|
||||
inputOptions: [],
|
||||
outputOptions: [
|
||||
'-c:v:0 vp9',
|
||||
'-c:a:0 aac',
|
||||
'-c:v vp9',
|
||||
'-c:a aac',
|
||||
'-movflags faststart',
|
||||
'-fps_mode passthrough',
|
||||
'-map 0:0',
|
||||
'-map 0:1',
|
||||
'-v verbose',
|
||||
'-vf scale=-2:720,format=yuv420p',
|
||||
'-cpu-used 5',
|
||||
@@ -729,10 +757,12 @@ describe(MediaService.name, () => {
|
||||
{
|
||||
inputOptions: [],
|
||||
outputOptions: [
|
||||
'-c:v:0 h264',
|
||||
'-c:a:0 aac',
|
||||
'-c:v h264',
|
||||
'-c:a aac',
|
||||
'-movflags faststart',
|
||||
'-fps_mode passthrough',
|
||||
'-map 0:0',
|
||||
'-map 0:1',
|
||||
'-v verbose',
|
||||
'-vf scale=-2:720,format=yuv420p',
|
||||
'-preset ultrafast',
|
||||
@@ -757,10 +787,12 @@ describe(MediaService.name, () => {
|
||||
{
|
||||
inputOptions: [],
|
||||
outputOptions: [
|
||||
'-c:v:0 h264',
|
||||
'-c:a:0 aac',
|
||||
'-c:v h264',
|
||||
'-c:a aac',
|
||||
'-movflags faststart',
|
||||
'-fps_mode passthrough',
|
||||
'-map 0:0',
|
||||
'-map 0:1',
|
||||
'-v verbose',
|
||||
'-vf scale=-2:720,format=yuv420p',
|
||||
'-preset ultrafast',
|
||||
@@ -785,10 +817,12 @@ describe(MediaService.name, () => {
|
||||
{
|
||||
inputOptions: [],
|
||||
outputOptions: [
|
||||
'-c:v:0 hevc',
|
||||
'-c:a:0 aac',
|
||||
'-c:v hevc',
|
||||
'-c:a aac',
|
||||
'-movflags faststart',
|
||||
'-fps_mode passthrough',
|
||||
'-map 0:0',
|
||||
'-map 0:1',
|
||||
'-v verbose',
|
||||
'-vf scale=-2:720,format=yuv420p',
|
||||
'-preset ultrafast',
|
||||
@@ -816,10 +850,12 @@ describe(MediaService.name, () => {
|
||||
{
|
||||
inputOptions: [],
|
||||
outputOptions: [
|
||||
'-c:v:0 hevc',
|
||||
'-c:a:0 aac',
|
||||
'-c:v hevc',
|
||||
'-c:a aac',
|
||||
'-movflags faststart',
|
||||
'-fps_mode passthrough',
|
||||
'-map 0:0',
|
||||
'-map 0:1',
|
||||
'-v verbose',
|
||||
'-vf scale=-2:720,format=yuv420p',
|
||||
'-preset ultrafast',
|
||||
@@ -878,17 +914,15 @@ describe(MediaService.name, () => {
|
||||
outputOptions: [
|
||||
'-tune hq',
|
||||
'-qmin 0',
|
||||
'-g 250',
|
||||
'-bf 3',
|
||||
'-b_ref_mode middle',
|
||||
'-temporal-aq 1',
|
||||
'-rc-lookahead 20',
|
||||
'-i_qfactor 0.75',
|
||||
'-b_qfactor 1.1',
|
||||
`-c:v:0 h264_nvenc`,
|
||||
'-c:a:0 aac',
|
||||
`-c:v h264_nvenc`,
|
||||
'-c:a aac',
|
||||
'-movflags faststart',
|
||||
'-fps_mode passthrough',
|
||||
'-map 0:0',
|
||||
'-map 0:1',
|
||||
'-g 256',
|
||||
'-v verbose',
|
||||
'-vf format=nv12,hwupload_cuda,scale_cuda=-2:720',
|
||||
'-preset p1',
|
||||
@@ -918,17 +952,15 @@ describe(MediaService.name, () => {
|
||||
outputOptions: [
|
||||
'-tune hq',
|
||||
'-qmin 0',
|
||||
'-g 250',
|
||||
'-bf 3',
|
||||
'-b_ref_mode middle',
|
||||
'-temporal-aq 1',
|
||||
'-rc-lookahead 20',
|
||||
'-i_qfactor 0.75',
|
||||
'-b_qfactor 1.1',
|
||||
`-c:v:0 h264_nvenc`,
|
||||
'-c:a:0 aac',
|
||||
`-c:v h264_nvenc`,
|
||||
'-c:a aac',
|
||||
'-movflags faststart',
|
||||
'-fps_mode passthrough',
|
||||
'-map 0:0',
|
||||
'-map 0:1',
|
||||
'-g 256',
|
||||
'-v verbose',
|
||||
'-vf format=nv12,hwupload_cuda,scale_cuda=-2:720',
|
||||
'-preset p1',
|
||||
@@ -954,17 +986,15 @@ describe(MediaService.name, () => {
|
||||
outputOptions: [
|
||||
'-tune hq',
|
||||
'-qmin 0',
|
||||
'-g 250',
|
||||
'-bf 3',
|
||||
'-b_ref_mode middle',
|
||||
'-temporal-aq 1',
|
||||
'-rc-lookahead 20',
|
||||
'-i_qfactor 0.75',
|
||||
'-b_qfactor 1.1',
|
||||
`-c:v:0 h264_nvenc`,
|
||||
'-c:a:0 aac',
|
||||
`-c:v h264_nvenc`,
|
||||
'-c:a aac',
|
||||
'-movflags faststart',
|
||||
'-fps_mode passthrough',
|
||||
'-map 0:0',
|
||||
'-map 0:1',
|
||||
'-g 256',
|
||||
'-v verbose',
|
||||
'-vf format=nv12,hwupload_cuda,scale_cuda=-2:720',
|
||||
'-preset p1',
|
||||
@@ -991,17 +1021,15 @@ describe(MediaService.name, () => {
|
||||
outputOptions: [
|
||||
'-tune hq',
|
||||
'-qmin 0',
|
||||
'-g 250',
|
||||
'-bf 3',
|
||||
'-b_ref_mode middle',
|
||||
'-temporal-aq 1',
|
||||
'-rc-lookahead 20',
|
||||
'-i_qfactor 0.75',
|
||||
'-b_qfactor 1.1',
|
||||
`-c:v:0 h264_nvenc`,
|
||||
'-c:a:0 aac',
|
||||
`-c:v h264_nvenc`,
|
||||
'-c:a aac',
|
||||
'-movflags faststart',
|
||||
'-fps_mode passthrough',
|
||||
'-map 0:0',
|
||||
'-map 0:1',
|
||||
'-g 256',
|
||||
'-v verbose',
|
||||
'-vf format=nv12,hwupload_cuda,scale_cuda=-2:720',
|
||||
'-cq:v 23',
|
||||
@@ -1024,17 +1052,15 @@ describe(MediaService.name, () => {
|
||||
outputOptions: [
|
||||
'-tune hq',
|
||||
'-qmin 0',
|
||||
'-g 250',
|
||||
'-bf 3',
|
||||
'-b_ref_mode middle',
|
||||
'-temporal-aq 1',
|
||||
'-rc-lookahead 20',
|
||||
'-i_qfactor 0.75',
|
||||
'-b_qfactor 1.1',
|
||||
`-c:v:0 h264_nvenc`,
|
||||
'-c:a:0 aac',
|
||||
`-c:v h264_nvenc`,
|
||||
'-c:a aac',
|
||||
'-movflags faststart',
|
||||
'-fps_mode passthrough',
|
||||
'-map 0:0',
|
||||
'-map 0:1',
|
||||
'-g 256',
|
||||
'-v verbose',
|
||||
'-vf format=nv12,hwupload_cuda,scale_cuda=-2:720',
|
||||
'-preset p1',
|
||||
@@ -1060,14 +1086,15 @@ describe(MediaService.name, () => {
|
||||
{
|
||||
inputOptions: ['-init_hw_device qsv=hw', '-filter_hw_device hw'],
|
||||
outputOptions: [
|
||||
'-g 256',
|
||||
'-extbrc 1',
|
||||
'-refs 5',
|
||||
'-bf 7',
|
||||
`-c:v:0 h264_qsv`,
|
||||
'-c:a:0 aac',
|
||||
`-c:v h264_qsv`,
|
||||
'-c:a aac',
|
||||
'-movflags faststart',
|
||||
'-fps_mode passthrough',
|
||||
'-map 0:0',
|
||||
'-map 0:1',
|
||||
'-bf 7',
|
||||
'-refs 5',
|
||||
'-g 256',
|
||||
'-v verbose',
|
||||
'-vf format=nv12,hwupload=extra_hw_frames=64,scale_qsv=-1:720',
|
||||
'-preset 7',
|
||||
@@ -1095,14 +1122,15 @@ describe(MediaService.name, () => {
|
||||
{
|
||||
inputOptions: ['-init_hw_device qsv=hw', '-filter_hw_device hw'],
|
||||
outputOptions: [
|
||||
'-g 256',
|
||||
'-extbrc 1',
|
||||
'-refs 5',
|
||||
'-bf 7',
|
||||
`-c:v:0 h264_qsv`,
|
||||
'-c:a:0 aac',
|
||||
`-c:v h264_qsv`,
|
||||
'-c:a aac',
|
||||
'-movflags faststart',
|
||||
'-fps_mode passthrough',
|
||||
'-map 0:0',
|
||||
'-map 0:1',
|
||||
'-bf 7',
|
||||
'-refs 5',
|
||||
'-g 256',
|
||||
'-v verbose',
|
||||
'-vf format=nv12,hwupload=extra_hw_frames=64,scale_qsv=-1:720',
|
||||
'-global_quality 23',
|
||||
@@ -1127,14 +1155,15 @@ describe(MediaService.name, () => {
|
||||
{
|
||||
inputOptions: ['-init_hw_device qsv=hw', '-filter_hw_device hw'],
|
||||
outputOptions: [
|
||||
'-g 256',
|
||||
'-extbrc 1',
|
||||
'-refs 5',
|
||||
'-bf 7',
|
||||
`-c:v:0 vp9_qsv`,
|
||||
'-c:a:0 aac',
|
||||
`-c:v vp9_qsv`,
|
||||
'-c:a aac',
|
||||
'-movflags faststart',
|
||||
'-fps_mode passthrough',
|
||||
'-map 0:0',
|
||||
'-map 0:1',
|
||||
'-bf 7',
|
||||
'-refs 5',
|
||||
'-g 256',
|
||||
'-low_power 1',
|
||||
'-v verbose',
|
||||
'-vf format=nv12,hwupload=extra_hw_frames=64,scale_qsv=-1:720',
|
||||
@@ -1170,10 +1199,13 @@ describe(MediaService.name, () => {
|
||||
{
|
||||
inputOptions: ['-init_hw_device vaapi=accel:/dev/dri/renderD128', '-filter_hw_device accel'],
|
||||
outputOptions: [
|
||||
`-c:v:0 h264_vaapi`,
|
||||
'-c:a:0 aac',
|
||||
`-c:v h264_vaapi`,
|
||||
'-c:a aac',
|
||||
'-movflags faststart',
|
||||
'-fps_mode passthrough',
|
||||
'-map 0:0',
|
||||
'-map 0:1',
|
||||
'-g 256',
|
||||
'-v verbose',
|
||||
'-vf format=nv12,hwupload,scale_vaapi=-2:720',
|
||||
'-compression_level 7',
|
||||
@@ -1199,10 +1231,13 @@ describe(MediaService.name, () => {
|
||||
{
|
||||
inputOptions: ['-init_hw_device vaapi=accel:/dev/dri/renderD128', '-filter_hw_device accel'],
|
||||
outputOptions: [
|
||||
`-c:v:0 h264_vaapi`,
|
||||
'-c:a:0 aac',
|
||||
`-c:v h264_vaapi`,
|
||||
'-c:a aac',
|
||||
'-movflags faststart',
|
||||
'-fps_mode passthrough',
|
||||
'-map 0:0',
|
||||
'-map 0:1',
|
||||
'-g 256',
|
||||
'-v verbose',
|
||||
'-vf format=nv12,hwupload,scale_vaapi=-2:720',
|
||||
'-compression_level 7',
|
||||
@@ -1230,10 +1265,13 @@ describe(MediaService.name, () => {
|
||||
{
|
||||
inputOptions: ['-init_hw_device vaapi=accel:/dev/dri/renderD128', '-filter_hw_device accel'],
|
||||
outputOptions: [
|
||||
`-c:v:0 h264_vaapi`,
|
||||
'-c:a:0 aac',
|
||||
`-c:v h264_vaapi`,
|
||||
'-c:a aac',
|
||||
'-movflags faststart',
|
||||
'-fps_mode passthrough',
|
||||
'-map 0:0',
|
||||
'-map 0:1',
|
||||
'-g 256',
|
||||
'-v verbose',
|
||||
'-vf format=nv12,hwupload,scale_vaapi=-2:720',
|
||||
'-qp 23',
|
||||
@@ -1257,10 +1295,13 @@ describe(MediaService.name, () => {
|
||||
{
|
||||
inputOptions: ['-init_hw_device vaapi=accel:/dev/dri/card1', '-filter_hw_device accel'],
|
||||
outputOptions: [
|
||||
`-c:v:0 h264_vaapi`,
|
||||
'-c:a:0 aac',
|
||||
`-c:v h264_vaapi`,
|
||||
'-c:a aac',
|
||||
'-movflags faststart',
|
||||
'-fps_mode passthrough',
|
||||
'-map 0:0',
|
||||
'-map 0:1',
|
||||
'-g 256',
|
||||
'-v verbose',
|
||||
'-vf format=nv12,hwupload,scale_vaapi=-2:720',
|
||||
'-compression_level 7',
|
||||
@@ -1280,10 +1321,13 @@ describe(MediaService.name, () => {
|
||||
{
|
||||
inputOptions: ['-init_hw_device vaapi=accel:/dev/dri/renderD129', '-filter_hw_device accel'],
|
||||
outputOptions: [
|
||||
`-c:v:0 h264_vaapi`,
|
||||
'-c:a:0 aac',
|
||||
`-c:v h264_vaapi`,
|
||||
'-c:a aac',
|
||||
'-movflags faststart',
|
||||
'-fps_mode passthrough',
|
||||
'-map 0:0',
|
||||
'-map 0:1',
|
||||
'-g 256',
|
||||
'-v verbose',
|
||||
'-vf format=nv12,hwupload,scale_vaapi=-2:720',
|
||||
'-compression_level 7',
|
||||
@@ -1310,10 +1354,12 @@ describe(MediaService.name, () => {
|
||||
{
|
||||
inputOptions: [],
|
||||
outputOptions: [
|
||||
'-c:v:0 h264',
|
||||
'-c:a:0 aac',
|
||||
'-c:v h264',
|
||||
'-c:a aac',
|
||||
'-movflags faststart',
|
||||
'-fps_mode passthrough',
|
||||
'-map 0:0',
|
||||
'-map 0:1',
|
||||
'-v verbose',
|
||||
'-vf scale=-2:720,format=yuv420p',
|
||||
'-preset ultrafast',
|
||||
@@ -1345,10 +1391,12 @@ describe(MediaService.name, () => {
|
||||
{
|
||||
inputOptions: [],
|
||||
outputOptions: [
|
||||
'-c:v:0 h264',
|
||||
'-c:a:0 aac',
|
||||
'-c:v h264',
|
||||
'-c:a aac',
|
||||
'-movflags faststart',
|
||||
'-fps_mode passthrough',
|
||||
'-map 0:0',
|
||||
'-map 0:1',
|
||||
'-v verbose',
|
||||
'-vf zscale=t=linear:npl=100,tonemap=hable:desat=0,zscale=p=bt709:t=bt709:m=bt709:range=pc,format=yuv420p',
|
||||
'-preset ultrafast',
|
||||
@@ -1370,10 +1418,12 @@ describe(MediaService.name, () => {
|
||||
{
|
||||
inputOptions: [],
|
||||
outputOptions: [
|
||||
'-c:v:0 h264',
|
||||
'-c:a:0 aac',
|
||||
'-c:v h264',
|
||||
'-c:a aac',
|
||||
'-movflags faststart',
|
||||
'-fps_mode passthrough',
|
||||
'-map 0:0',
|
||||
'-map 0:1',
|
||||
'-v verbose',
|
||||
'-vf zscale=t=linear:npl=100,tonemap=hable:desat=0,zscale=p=bt709:t=bt709:m=bt709:range=pc,format=yuv420p',
|
||||
'-preset ultrafast',
|
||||
@@ -1395,10 +1445,12 @@ describe(MediaService.name, () => {
|
||||
{
|
||||
inputOptions: [],
|
||||
outputOptions: [
|
||||
'-c:v:0 h264',
|
||||
'-c:a:0 aac',
|
||||
'-c:v h264',
|
||||
'-c:a aac',
|
||||
'-movflags faststart',
|
||||
'-fps_mode passthrough',
|
||||
'-map 0:0',
|
||||
'-map 0:1',
|
||||
'-v verbose',
|
||||
'-vf zscale=t=linear:npl=250,tonemap=mobius:desat=0,zscale=p=bt709:t=bt709:m=bt709:range=pc,format=yuv420p',
|
||||
'-preset ultrafast',
|
||||
|
||||
Reference in New Issue
Block a user