ffmpeg-php, manipuleer video's en geluiden met PHP

Tot nu toe had ik me alleen beziggehouden met beeldmanipulatie met PHP. Het gebruik van video's in deze taal leek me onhaalbaar. En toch ...

 
ffmpeg-php is een PHP-extensie waarmee u kunt toevoegen een API gewijd aan manipulatie en controle van video en geluid. Deze API op hoog niveau biedt toegang tot eenvoudige en begrijpelijke functies om informatie uit bestanden te extraheren.

Deze methoden maken het mogelijk om met name "frames" zoals afbeeldingen te herstellen. deze kunnen op hun beurt worden gemanipuleerd met behulp van de GD-bibliotheek.
ffmpeg-php is gewoon perfect voor maak thumbnails van video, of om de extractie van metadata te automatiseren (duur, bitrate,...).
Het is zelfs mogelijk om te creëren Geanimeerde gifs door meerdere frames te extraheren.

$ ffmpeg = 'encoderffmpeg'; // plaats het relatieve pad naar het ffmpeg.exe-bestand $ second = 15; // specificeer de tijd om de schermafbeelding te krijgen (kan gemakkelijk willekeurig worden gegenereerd) $ image = 'thumbnails / sample.jpg'; // definieer het uitvoerbestand // assembleer ten slotte de opdracht en voer deze uit $ command = "$ ffmpeg -itsoffset - $ tweede -i $ video -vcodec mjpeg -vframes 1 -an -f rawvideo -s 150 × 84 $ afbeelding"; exec ($ commando);

Hier zijn enkele voorbeelden van methoden:

getDuration (). "getFrameCount:". $ ffmpegInstance-> getFrameCount (). "getFrameRate:". $ ffmpegInstance-> getFrameRate (). "getFilename:". $ ffmpegInstance-> getFilename (). "getCommentaar:". $ ffmpegInstance-> getComment (). "getTitle:". $ ffmpegInstance-> getTitle (). "getAuteur:". $ ffmpegInstance-> getAuthor (). "getCopyright:". $ ffmpegInstance-> getCopyright (). "getArtist:". $ ffmpegInstance-> getArtist (). "getGenre:". $ ffmpegInstance-> getGenre (). "getTrackNumber:". $ ffmpegInstance-> getTrackNumber (). "getYear:". $ ffmpegInstance-> getYear (). "getFrameHeight:". $ ffmpegInstance-> getFrameHeight (). "getFrameWidth:". $ ffmpegInstance-> getFrameWidth (). "getPixelFormat:". $ ffmpegInstance-> getPixelFormat (). "getBitRate:". $ ffmpegInstance-> getBitRate (). "getVideoBitRate:". $ ffmpegInstance-> getVideoBitRate (). "getAudioBitRate:". $ ffmpegInstance-> getAudioBitRate (). "getAudioSampleRate:". $ ffmpegInstance-> getAudioSampleRate (). "getVideoCodec:". $ ffmpegInstance-> getVideoCodec (). "getAudioCodec:". $ ffmpegInstance-> getAudioCodec (). "getAudioChannels:". $ ffmpegInstance-> getAudioChannels (). "hasAudio:". $ ffmpegInstance-> hasAudio (); ?> 

ffmpeg-php ondersteunt een groot aantal formaten (mpeg, avi, wmv, mov, mp3, wma,…).

Vimeo.com gebruikt bijvoorbeeld ffmpeg-php om zijn miniaturen te maken. we kunnen daarom denken dat deze API solide is.

Download ffmpeg-php

Lees ook