李帅

1.优化ffmpeg命令,适配各种类型视频

...@@ -404,6 +404,7 @@ class AdminMakeImmerse implements ShouldQueue ...@@ -404,6 +404,7 @@ class AdminMakeImmerse implements ShouldQueue
404 404
405 $round = round($this->media_info['format']['duration'] / count($contents),1); 405 $round = round($this->media_info['format']['duration'] / count($contents),1);
406 foreach ($contents as $key => $content){ 406 foreach ($contents as $key => $content){
407 + $text_color = substr($text_color,1,strlen($text_color));
407 $DS = $key * $round; 408 $DS = $key * $round;
408 $DE = $DS + $round; 409 $DE = $DS + $round;
409 $text_file = $this->getAbsolutePath($this->getTempPath('.txt','text')); 410 $text_file = $this->getAbsolutePath($this->getTempPath('.txt','text'));
...@@ -413,7 +414,7 @@ class AdminMakeImmerse implements ShouldQueue ...@@ -413,7 +414,7 @@ class AdminMakeImmerse implements ShouldQueue
413 'textfile=' . escapeshellarg($text_file) . ':' . 414 'textfile=' . escapeshellarg($text_file) . ':' .
414 'fontsize=' . $this->calcFontSize($component->font_size) . ':' . 415 'fontsize=' . $this->calcFontSize($component->font_size) . ':' .
415 // 'fontcolor=' . $text_color . '@' . $opacity . ':' . 416 // 'fontcolor=' . $text_color . '@' . $opacity . ':' .
416 - 'fontcolor_expr=' . escapeshellarg($text_color . '%{eif: clip(255*(1*between(t, ' . $DE . ' + ' . $FID . ', ' . $DE . ' - ' . $FOD . ') + ((t - ' . $DS . ')/' . $FID . ')*between(t, ' . $DS . ', ' . $DS . ' + ' . $FID . ') + (-(t - ' . $DE . ')/' . $FOD . ')*between(t, ' . $DE . ' - ' . $FOD . ', ' . $DE . ')), 0, 255) : x: 2 }') . ':' . 417 + 'fontcolor_expr=' . escapeshellarg($text_color . '%{eif\\\\: clip(255*(1*between(t\\, ' . $DE . ' + ' . $FID . '\\, ' . $DE . ' - ' . $FOD . ') + ((t - ' . $DS . ')/' . $FID . ')*between(t\\, ' . $DS . '\\, ' . $DS . ' + ' . $FID . ') + (-(t - ' . $DE . ')/' . $FOD . ')*between(t\\, ' . $DE . ' - ' . $FOD . '\\, ' . $DE . '))\\, 0\\, 255) \\\\: x\\\\: 2 }') . ':' .
417 'x=' . escapeshellarg(VideoTemp::POSITION_FFMPEG[$component->position][0]) . ':' . 418 'x=' . escapeshellarg(VideoTemp::POSITION_FFMPEG[$component->position][0]) . ':' .
418 'y=' . escapeshellarg(VideoTemp::POSITION_FFMPEG[$component->position][1]) . ':' . 419 'y=' . escapeshellarg(VideoTemp::POSITION_FFMPEG[$component->position][1]) . ':' .
419 'fix_bounds='. $fix_bounds . ':' . 420 'fix_bounds='. $fix_bounds . ':' .
......