PHP code example of ritechoice23 / laravel-fluent-ffmpeg
1. Go to this page and download the library: Download ritechoice23/laravel-fluent-ffmpeg library . Choose the download type require .
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
ritechoice23 / laravel-fluent-ffmpeg example snippets
use Ritechoice23\FluentFFmpeg\Facades\FFmpeg;
// Basic video conversion
FFmpeg::fromPath('video.mp4')
->videoCodec('libx264')
->audioCodec('aac')
->resolution(1920, 1080)
->save('output.mp4');
// Or using the global helper
ffmpeg()->fromPath('video.mp4')
->videoCodec('libx264')
->save('output.mp4');
// Extract audio
FFmpeg::fromPath('video.mp4')
->extractAudio()
->save('audio.mp3');
// Create GIF
FFmpeg::fromPath('video.mp4')
->clip('00:00:05', '00:00:10')
->toGif(['fps' => 15, 'width' => 480])
->save('animation.gif');
// Advanced HLS Streaming (Multi-bitrate)
FFmpeg::fromPath('video.mp4')
->exportForHLS()
->addFormat('1080p')
->addFormat('720p')
->addFormat('480p')
->save('stream.m3u8');
// Extract multiple clips
FFmpeg::fromPath('video.mp4')
->clips([
['start' => '00:00:10', 'end' => '00:00:20'],
['start' => '00:01:30', 'end' => '00:02:00'],
['start' => '00:03:45', 'end' => '00:04:15'],
])
->save('highlight.mp4'); // Outputs: highlight_1.mp4, highlight_2.mp4, highlight_3.mp4
// Video composition with intro, outro, and watermark
FFmpeg::fromPath('video.mp4')
->withIntro('intro.mp4')
->withOutro('outro.mp4')
->withWatermark('logo.png', 'bottom-right')
->save('branded.mp4');
// Process all videos in a directory
FFmpeg::fromDirectory('/path/to/videos')
->resize(1920, 1080)
->withWatermark('logo.png', 'top-right')
->save('/path/to/output/');
// Add text overlay (supports multiple overlays!)
FFmpeg::fromPath('video.mp4')
->withText('Title', ['position' => 'top-center', 'font_size' => 36])
->withText('Subtitle', ['position' => 'center', 'font_size' => 24])
->withText('© 2024', ['position' => 'bottom-right', 'font_size' => 14])
->save('output.mp4');
// Generate audio waveforms for visualization
FFmpeg::fromPath('audio.mp3')
->audioCodec('aac')
->withPeaks(samplesPerPixel: 512, normalizeRange: [0, 1])
->save('output.m4a');
// Outputs: output.m4a + output-peaks.json
bash
php artisan vendor:publish --tag=fluent-ffmpeg-config