From 0184b35984afafaa43adf7ff09108dea5ad25231 Mon Sep 17 00:00:00 2001 From: Martin Zurowietz Date: Fri, 7 Feb 2025 09:06:13 +0100 Subject: [PATCH] Revert "Merge pull request #1056 from biigle/moovAtomBug" This reverts commit 6999c177c90001a5663fc1f9f344058ef1729095, reversing changes made to 0965e3382e6fee702e6affed723aa1735d7b62da. --- .../Views/Videos/VideoController.php | 1 - app/Jobs/ProcessNewVideo.php | 20 ------- app/Video.php | 7 --- resources/assets/js/videos/videoContainer.vue | 6 --- resources/views/manual/index.blade.php | 8 --- .../videos/fix-video-encoding.blade.php | 51 ------------------ resources/views/videos/show/content.blade.php | 4 -- tests/files/test_invalid_moov_atom.mp4 | Bin 104599 -> 0 bytes tests/php/Jobs/ProcessNewVideoTest.php | 35 ------------ 9 files changed, 132 deletions(-) delete mode 100644 resources/views/manual/tutorials/videos/fix-video-encoding.blade.php delete mode 100644 tests/files/test_invalid_moov_atom.mp4 diff --git a/app/Http/Controllers/Views/Videos/VideoController.php b/app/Http/Controllers/Views/Videos/VideoController.php index 6d1fb39ba..10739ef01 100644 --- a/app/Http/Controllers/Views/Videos/VideoController.php +++ b/app/Http/Controllers/Views/Videos/VideoController.php @@ -68,7 +68,6 @@ public function show(Request $request, $id) 'codec' => Video::ERROR_CODEC, 'malformed' => VIDEO::ERROR_MALFORMED, 'too-large' => VIDEO::ERROR_TOO_LARGE, - 'moov-atom' => VIDEO::ERROR_INVALID_MOOV_POS, ]); $fileIds = $volume->orderedFiles()->pluck('uuid', 'id'); diff --git a/app/Jobs/ProcessNewVideo.php b/app/Jobs/ProcessNewVideo.php index 82486917c..41c297c6a 100644 --- a/app/Jobs/ProcessNewVideo.php +++ b/app/Jobs/ProcessNewVideo.php @@ -132,12 +132,6 @@ public function handleFile($file, $path) return; } - if ($this->hasInvalidMoovAtomPosition($path)) { - $this->video->error = Video::ERROR_INVALID_MOOV_POS; - $this->video->save(); - return; - } - $this->video->size = File::size($path); $this->video->duration = $this->getVideoDuration($path); @@ -233,20 +227,6 @@ protected function getVideoDimensions($url) return $this->ffprobe->streams($url)->videos()->first()->getDimensions(); } - protected function hasInvalidMoovAtomPosition($sourcePath) - { - // Webm and mpeg videos don't have a moov atom - if (in_array($this->video->mimeType, ['video/mpeg', 'video/webm'])) { - return false; - } - - $process = Process::forever() - ->run("ffprobe -v trace -i '{$sourcePath}' 2>&1 | grep -o -e type:\'mdat\' -e type:\'moov\'") - ->throw(); - $output = explode("\n", $process->output()); - return !str_contains($output[0], 'moov'); - } - /** * Extract images from video. * diff --git a/app/Video.php b/app/Video.php index bebb988c6..54b582272 100644 --- a/app/Video.php +++ b/app/Video.php @@ -68,13 +68,6 @@ class Video extends VolumeFile */ const ERROR_TOO_LARGE = 5; - /** - * Error if moov atom is not located at beginning. - * - * @var int - */ - const ERROR_INVALID_MOOV_POS = 6; - /** * The attributes that are mass assignable. * diff --git a/resources/assets/js/videos/videoContainer.vue b/resources/assets/js/videos/videoContainer.vue index f8ff76371..4c07d0311 100644 --- a/resources/assets/js/videos/videoContainer.vue +++ b/resources/assets/js/videos/videoContainer.vue @@ -29,7 +29,6 @@ class VideoMimeTypeError extends VideoError {} class VideoCodecError extends VideoError {} class VideoMalformedError extends VideoError {} class VideoTooLargeError extends VideoError {} -class VideoMoovAtomError extends VideoError {} // Used to round and parse the video current time from the URL, as it is stored as an int // there (without decimal dot). @@ -159,9 +158,6 @@ export default { hasTooLargeError() { return this.error instanceof VideoTooLargeError; }, - hasMoovAtomError() { - return this.error instanceof VideoMoovAtomError; - }, errorClass() { if (this.hasVideoError) { if (this.error instanceof VideoNotProcessedError) { @@ -542,8 +538,6 @@ export default { throw new VideoMalformedError(); } else if (video.error === this.errors['too-large']) { throw new VideoTooLargeError(); - } else if (video.error === this.errors['moov-atom']) { - throw new VideoMoovAtomError(); } else if (video.size === null) { throw new VideoNotProcessedError(); } diff --git a/resources/views/manual/index.blade.php b/resources/views/manual/index.blade.php index 8364958c6..75db8e481 100644 --- a/resources/views/manual/index.blade.php +++ b/resources/views/manual/index.blade.php @@ -233,14 +233,6 @@ Advanced configuration of the video annotation tool.

-

- Fix video encoding -

- -

- Fix errors in video files that can cause problems in BIIGLE. -

-

Reports

Reports schema diff --git a/resources/views/manual/tutorials/videos/fix-video-encoding.blade.php b/resources/views/manual/tutorials/videos/fix-video-encoding.blade.php deleted file mode 100644 index 81ab4105d..000000000 --- a/resources/views/manual/tutorials/videos/fix-video-encoding.blade.php +++ /dev/null @@ -1,51 +0,0 @@ -@extends('manual.base') - -@section('manual-title', 'Fix video encoding') - -@section('manual-content') -
-

- Fix errors in video files that can cause problems in BIIGLE -

-

- To modify the video files, download and install the tool FFmpeg. -

-

Fix MP4 moov atom position

-

- The moov atom of an MP4 file is required by the browser to play the video correctly. If the moov atom is placed at the end of the video file, the entire file must be downloaded first before the video can be played. This can be fixed by moving the moov atom to the beginning of the file. -

-

- To check the current position of the moov atom in an MP4 file, run the following command. -

-

- Linux: -

-ffprobe -v trace -i input.mp4  2>&1 | grep -o -e type:\'mdat\' -e type:\'moov\'
-
-

-

- Windows: -

-ffprobe.exe -v trace -i "input.mp4" 2>&1 | findstr "type:'mdat' type:'moov'
-
-

-

- If type:'moov' occurs at first in the command output, the video's moov atom position is valid. Otherwise, fix the position with the command below. -

-

- Linux: -

-ffmpeg -i input.mp4 -vcodec copy -acodec copy -movflags faststart output.mp4
-
-

-

- Windows: -

-ffmpeg.exe -i "input.mp4" -vcodec copy -acodec copy -movflags faststart "output.mp4"
-
-

-

- The output.mp4 file will have the moov atom at the correct position. -

-
-@endsection diff --git a/resources/views/videos/show/content.blade.php b/resources/views/videos/show/content.blade.php index ae834dd7b..faf6bf059 100644 --- a/resources/views/videos/show/content.blade.php +++ b/resources/views/videos/show/content.blade.php @@ -20,10 +20,6 @@ The video file is too large. - - The video's moov atom position is invalid.
- See the manual for how to fix this. -
diff --git a/tests/files/test_invalid_moov_atom.mp4 b/tests/files/test_invalid_moov_atom.mp4 deleted file mode 100644 index 4073100f7ceb98143947a49a50770041a29a7024..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 104599 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%0Dy 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

MU@z`{|}Fi5D~qKU(`K-Fw}{ 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�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 Q1$i2Mis!)$RvH@q2O@O!MgRZ+ diff --git a/tests/php/Jobs/ProcessNewVideoTest.php b/tests/php/Jobs/ProcessNewVideoTest.php index 279f526eb..9a26d929e 100644 --- a/tests/php/Jobs/ProcessNewVideoTest.php +++ b/tests/php/Jobs/ProcessNewVideoTest.php @@ -225,32 +225,6 @@ public function testHandleRemoveErrorOnSuccess() $job->handle(); $this->assertNull($video->fresh()->error); } - - public function testHasInvalidMoovAtomPosition() - { - $video = VideoTest::create(['filename' => 'test_invalid_moov_atom.mp4']); - $job = new ProcessNewVideoStub($video); - $job->passThroughMimeType = true; - $job->handle(); - $this->assertSame(Video::ERROR_INVALID_MOOV_POS, $video->fresh()->error); - } - - public function testHasInvalidMoovAtomPositionNoAtom() - { - $video = VideoTest::create(['filename' => 'test.mp4']); - $job = new ProcessNewVideoStub($video); - $video->mimeType = 'video/webm'; - $job->passThroughMimeType = true; - $job->handle(); - $this->assertEmpty($video->fresh()->error); - - $video = VideoTest::create(['filename' => 'test.mp4']); - $job = new ProcessNewVideoStub($video); - $video->mimeType = 'video/mpeg'; - $job->passThroughMimeType = true; - $job->handle(); - $this->assertEmpty($video->fresh()->error); - } } class ProcessNewVideoStub extends ProcessNewVideo @@ -260,7 +234,6 @@ class ProcessNewVideoStub extends ProcessNewVideo public $duration = 0; public $passThroughDimensions = false; public $passThroughCodec = false; - public $passThroughMimeType = false; protected function getVideoDimensions($url) { @@ -299,12 +272,4 @@ protected function generateThumbnail(string $file, int $width, int $height): Vip { return VipsImage::black(100, 100); } - - protected function hasInvalidMoovAtomPosition($source) - { - if ($this->passThroughMimeType) { - return parent::hasInvalidMoovAtomPosition($source); - } - return false; - } }