ویرایش ، تبدیل فرمت صوتی audio با ffmpeg در PHP

ویرایش فایل audio با php – فایل های صوتی دارای فرمت های مختلفی از قبیل mp3 , flac , wav , ogg , m4a و کلی فرمت دیگر می باشد .
در این آموزش یاد خواهیم گرفت فایل های صوتی را :
- تبدیل
- برش
- ویرایش متا دیتا ( title , album , artist )
در صورتی که می خواهید فایل های ویدیویی را ویرایش کنید می توانید از این آموزش استفاده کنید .
1- تبدیل فرمت فایل صوتی ( audio )
$ffmpeg = FFMpeg\FFMpeg::create();
$audio = $ffmpeg->open('files/song.mp3');
$format = new FFMpeg\Format\Audio\Flac();
$format->on('progress', function ($audio, $format, $percentage) {
echo "$percentage%";
});
$format
->setAudioChannels(2)
->setAudioKiloBitrate(256);
$audio->save($format, 'output/track.flac');
علاوه بر فرمت flac می توانیم به فرمت های دیگری هم فایل صوتی مان را تبدیل کنیم .
تبدیل به Ogg
$format = new FFMpeg\Format\Audio\Vorbis(); $audio->save($format, 'output/track.Ogg');
تبدیل به Wav
$format = new FFMpeg\Format\Audio\Wav(); $audio->save($format, 'output/track.WAV');
2- برش یک بازه زمانی از صوت
$ffmpeg = FFMpeg\FFMpeg::create();
$audio = $ffmpeg->open('files/song.mp3');
$format = new FFMpeg\Format\Audio\Mp3();
$audio->filters()->clip(FFMpeg\Coordinate\TimeCode::fromSeconds(30), FFMpeg\Coordinate\TimeCode::fromSeconds(15));
$audio->save($format, 'output/track.mp3');
در صورتی که با خطای must be an instance of FFMpeg\Format\VideoInterface مواجه شدید وارد فایل FFMpeg\Filters\Video\ClipFilter.php شده و دومین ورودی متود apply که format نام دارد نوع VideoInterface را پاک کنید .
3- افزودن متا دیتا های فایل صوتی
متا دیتا های صوتی همان نام ، عنوان ، آلبوم ، کاور می باشد که می توانیم به شکل زیر اضافه کنیم :
$ffmpeg = FFMpeg\FFMpeg::create();
$audio = $ffmpeg->open('files/song.ogg');
$format = new FFMpeg\Format\Audio\Mp3();
$audio->filters()->addMetadata(
[
"title" => "Lost but Won",
"album" => "Rush",
"artist" => "Hans Zimmer; ",
"composer" => "Hans Zimmer; ",
"track" => "Lost but Won",
"year" => "2013",
"description" => "two Formula One drivers",
"artwork" => "files/artwork.jpg"
]
);
$audio->save($format, 'output/track.mp3');
دقت داشته باشید که فعلا برای artwork که همان کاور فایل audio هست با فرمت mp3 سازگار است .
ارسال نظر