ffmpeg-php, manipula vídeos e sons com PHP

Até agora, eu só tinha me envolvido com manipulação de imagens com PHP. Usar vídeos com essa linguagem parecia inviável para mim. E ainda ...

 
ffmpeg-php é uma extensão PHP que permite adicionar uma API dedicada à manipulação e controle de vídeo e som. Esta API de alto nível fornece acesso a funções simples e compreensíveis para extrair informações de arquivos.

Esses métodos possibilitam a recuperação de “quadros” específicos, como imagens. estes, por sua vez, podem ser manipulados usando a biblioteca GD.
ffmpeg-php é perfeito para criar miniaturas de vídeo, ou para automatizar a extração de metadados (duração, taxa de bits, ...).
É até possível criar Gifs animados extraindo vários quadros.

$ ffmpeg = 'encoderffmpeg'; // coloque o caminho relativo para o arquivo ffmpeg.exe $ second = 15; // especifique o tempo para obter a captura de tela (pode ser facilmente gerada aleatoriamente) $ image = 'thumbnails / sample.jpg'; // definir o arquivo de saída // finalmente montar o comando e executá-lo $ command = "$ ffmpeg -itsoffset - $ second -i $ video -vcodec mjpeg -vframes 1 -an -f rawvideo -s 150 × 84 $ image"; exec (comando $);

Aqui estão alguns exemplos de métodos:

getDuration (). "getFrameCount:". $ ffmpegInstance-> getFrameCount (). "getFrameRate:". $ ffmpegInstance-> getFrameRate (). "getFilename:". $ ffmpegInstance-> getFilename (). "getComment:". $ ffmpegInstance-> getComment (). "getTitle:". $ ffmpegInstance-> getTitle (). "getAuthor:". $ 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 (); ?> 

suporta ffmpeg-php um grande número de formatos (MPEG, AVI, WMV, MOV, MP3, WMA, ...).

Como exemplo, Vimeo.com usa ffmpeg-php para criar suas miniaturas. podemos, portanto, pensar que esta API é sólida.

Baixar ffmpeg-php

Ler também