
Noen ganger kan det være ganske ålreit å kunne konvertere videoer via PHP, eller for eksempel hente ut miniatyrbilder fra en film. Da er det også ganske ålreit at ffmpeg finnes.
Med ffmpeg kan du gjøre slike ting lekende lett, men veien der til er ikke alltid like grei. Heldigvis har jeg i den sammenheng laget en liten guide til hvordan du kan gjøre det!
Før vi begynner …
Sørg for at du har:
- Installert Wampserver på en Windows-maskin
- Lastet ned og installert PHP 5.2.5 til Wamp (husk og aktiver denne versjonen, det er denne vi må bruke)
Når du har de to punktene under kontroll er du klar til å gå videre.
Hva vi trenger
Da er tiden inne for å laste ned ffmpeg-arkivene. Last ned de to arkivene under, og plasser dem f. eks på skrivebordet ditt.
FFmpeg: http://sourceforge.net/projects/mplayer-win32/files/FFmpeg/(last ned en .7z-fil)
FFmpeg-php: http://sergey89.ru/files/ffmpeg-php/ffmpeg-php-win32-all.zip (kun kompatibel med PHP 5.2.5)
La oss begynne
Pakk ut innholdet fra den første zip-filen, og kopier filen ffmpeg.exe til C:\ffmpeg\. Det er denne filen PHP kommer til å sende kommandoene til.
Pakk så ut innholdet fra det siste arkivet (ffmpeg-php). Her vil det være totalt 5 filer som vi trenger. Kopier filene avcodec-51.dll, avformat-51.dll, avutil-49.dll og pthreadGC2.dll og lim dem inn i: C:\WINDOWS\System32\.
Dersom du kjører et 64-bits operativsystem, må du også legge de samme filene i: C:\WINDOWS\SysWOW64\.
Da gjenstår det én fil igjen, og det er: php_ffmpeg.dll. Dette er utvidelsefilen for PHP; denne må du plassere i C:\wamp\bin\php\php5.2.5\ext\ som da er PHPs mappe over utvidelser. Siste punktet du må gjøre er å endre PHPs konfigurasjonsfil, php.ini. Denne kan du nå på to måter:
- Trykke på Wampserver-ikonet i Tray, klikke på PHP og så velge php.ini
- Gå til C:\wamp\bin\php\php5.2.5\
Åpne konfigurasjonsfilen i en teksteditor (f. eks Notepad), og bla ned til du kommer til “Windows extensions”. Her kommer det opp en liste over mange ulike utvidelser; lag en ny linje, og lim inn følgende kode:
extension=php_ffmpeg.dll
Nå trenger du bare starte Wampserver om igjen, ved å trykke på Wampserver-ikonet i tray og deretter velge “Restart all services”.
Nå kan du åpne din favoritt-nettleser, og lime inn følgende adresse:
http://localhost/?phpinfo
Dersom installasjonen har vært vellykket, vil du kan kunne finne ffmpeg på den listen (se bilde).

Sluttord
Nå er det bare til å sette i gang med å konvertere videoer, hente ut stillbilder, lyd eller hva det måtte være. Du kan teste installasjonen ved å kjøre følgende kode:
<?php
$clip = 'clip.mp4'; // Which video to extract from
$frame = '00:00:10'; // ... and at which frame
$dimensions = '640x480'; // Image dimensions (width x height)
$output = 'myscreen.png'; // path to captured image
$command = 'C:\ffmpeg\ffmpeg.exe -y -i ' . $clip . ' -vframes 1 -ss ' . $frame . ' -an -vcodec png -f rawvideo -s ' . $dimensions . ' ' . $output;
exec ($command);
?>
Den vil hente ut et bilde fra videoen clip.mp4 ti sekunder ut i filmen, og lagre bildet som myscreen.png. Legg spesielt merke til at vi må spesifisere fulle stien til hvor vi har plassert ffmpeg.exe-filen. De fleste plasser på Internett, så står det som regel bare “ffmpeg”, istedenfor full sti; slik må du ikke gjøre det!
Du kan også teste installasjonen ved å skrive denne koden:
<?php
echo shell_exec ('C:\ffmpeg\ffmpeg.exe -formats');
?>
Om du har innspill, kommentarer eller lignende, så er du velkommen til å kommentere artikkelen!
Video som viser hva jeg gjør — i dårlig kvalitet — er å se under: