FFmpeg::Command is a wrapper class for ffmpeg command line utility.
SYNOPSIS
use FFmpeg::Command;
my $ffmpeg = FFmpeg::Command->new('/usr/local/bin/ffmpeg');
$ffmpeg->input_options({
file => $input_file,
});
# Convert a video file into iPod playable format.
$ffmpeg->output_options({
file => $output_file,
device => 'ipod',
});
my $result = $ffmpeg->exec();
croak $ffmpeg->errstr unless $result;
# This is same as above.
$ffmpeg->output_options({
file => $output_file,
format => 'mp4',
video_codec => 'mpeg4',
bitrate => 600,
frame_size => '320x240',
audio_codec => 'aac',
audio_sampling_rate => 48000,
audio_bit_rate => 64,
});
$ffmpeg->exec();
# Convert a video file into PSP playable format.
$ffmpeg->output_options({
file => $output_file,
device => 'psp',
});
$ffmpeg->exec();
# This is same as above.
$ffmpeg->output_options({
file => $output_file,
format => 'psp',
video_codec => 'mpeg4',
bitrate => 600,
frame_size => '320x240',
audio_codec => 'aac',
audio_sampling_rate => 48000,
audio_bit_rate => 64,
});
$ffmpeg->exec();
# Execute ffmpeg with any options you like.
# This sample code takes a screnn shot.
$ffmpeg->input_file($input_file);
$ffmpeg->output_file($output_file);
$ffmpeg->options(
'-y',
'-f' => 'image2',
'-pix_fmt' => 'jpg',
'-vframes' => 1,
'-ss' => 30,
'-s' => '320x240',
'-an',
);
$ffmeg->exec();
Product's homepage
Requirements:
· Perl