Home >Backend Development >PHP Tutorial >ubuntu 装配 ffmpeg php-ffmpeg

ubuntu 装配 ffmpeg php-ffmpeg

WBOY
WBOYOriginal
2016-06-13 10:31:381223browse

ubuntu 安装 ffmpeg php-ffmpeg

?? 最近在做一个视频网站安装本地环境费了不少时间。本地是ubuntu 9.10 而服务器是redhat as4 所以到时候本人会把服务器安装过程和大家分享出来。

本人环境如下

  • php —- 5.210
  • apache 2.2
  • ubuntu 9.10
  1. ffmpeg 功能很强大包括视频抓图,视频信息,视频转换,在线视频录制,而且是免费的。所有一般的视频网站都会采用他。
  2. 本人首先是采用编译安装,但是一直都没有成功。编译过程中出现了很多问题。安装要使用ffmpeg往往需要编译很多包。感觉很麻烦。这些包又依赖于很多其他包。安装顺序也有要求。所以放弃了。
  3. 最终采用ubuntu 强大的 apt-get (使用dpkg进行安装) 进行安装(当然cenos,red hat这类使用rpm的系统都可以使用yum进行安装,具体的安装方法可以在本站进行查找).
  4. apt-get 安装步骤如下:
    sudo apt-get update ##更新以下源
    sudo apt-get install ffmpeg
    sudo apt-get install php5-ffmpeg
    sudo apt-get install mencoder
    sudo apt-get install flvtool2 ##视频转换flv
    sudo apt-get install lame ##音频
    sudo apt0get install yasm
  5. 编译安装ffmpeg 如下:
    从 http://ffmpeg.mplayerhq.hu 下载
    ./configure –help ##查看有那些参数
    ./configure–prefix=/usr–enable-gpl–enable-shared–enable-libmp3lame–enable-libamr_nb–enable-libogg–enable-libvorbis–enable-libxvid–enable-liba52–enable-liba52bin–enable-pp–enable-libfaad–enable-libfaadbin–enable-libfaac–enable-pthreads–disable-ffserver–enable-x11grab
    如果报错则安装该包,或者直接去掉该参数,只需要配置自己使用过程中需要使用到的就行了。
    make & make install
    其他的则一个一个的下载解压在编译就是了。
  • 下面是php-ffmpeg 使用的api。功能是很少了。
    $movie = new ffmpeg_movie(String path_to_media, boolean persistent)	Open a video or audio file and return it as an object.path_to_media - File path of video or audio file to open.persistent - Whether to open this media as a persistent resource. See the PHP documentation for more info about persistent resources$movie->getDuration()	Return the duration of a movie or audio file in seconds.$movie->getFrameCount()	Return the number of frames in a movie or audio file.$movie->getFrameRate()	Return the frame rate of a movie in fps.$movie->getFilename()	Return the path and name of the movie file or audio file.$movie->getComment()	Return the comment field from the movie or audio file.$movie->getTitle()	Return the title field from the movie or audio file.$movie->getAuthor() alias $movie->getArtist()	Return the author field from the movie or the artist ID3 field from an mp3 file.$movie->getCopyright()	Return the copyright field from the movie or audio file.$movie->getArtist()	Return the artist ID3 field from an mp3 file.$movie->getGenre()	Return the genre ID3 field from an mp3 file.$movie->getTrackNumber()	Return the track ID3 field from an mp3 file.$movie->getYear()	Return the year ID3 field from an mp3 file.$movie->getFrameHeight()	Return the height of the movie in pixels.$movie->getFrameWidth()	Return the width of the movie in pixels.$movie->getPixelFormat()	Return the pixel format of the movie.$movie->getBitRate()	Return the bit rate of the movie or audio file in bits per second.$movie->getVideoBitRate()	Return the bit rate of the video in bits per second.NOTE: This only works for files with constant bit rate. $movie->getAudioBitRate()	Return the audio bit rate of the media file in bits per second.$movie->getAudioSampleRate()	Return the audio sample rate of the media file in bits per second.$movie->getFrameNumber()	Return the current frame index.$movie->getVideoCodec()	Return the name of the video codec used to encode this movie as a string.$movie->getAudioCodec()	Return the name of the audio codec used to encode this movie as a string.$movie->getAudioChannels()	Return the number of audio channels in this movie as an integer.$movie->hasAudio()	Return boolean value indicating whether the movie has an audio stream.$movie->hasVideo()	Return boolean value indicating whether the movie has a video stream.$movie->getFrame([Integer framenumber])	Returns a frame from the movie as an ffmpeg_frame object. Returns false if the frame was not found.framenumber - Frame from the movie to return. If no framenumber is specified, returns the next frame of the movie.$movie->getNextKeyFrame()	Returns the next key frame from the movie as an ffmpeg_frame object. Returns false if the frame was not found.
    ?
  • 如果需要给视频抓图择需要使用shell脚本。也就是用到php当中的(system,exec,passthru)这类执行外部命令函数。
    往往很多服务器都将种类函数视为危险函数屏蔽掉了。所以想做视频网站对服务器的配置要求比较高。
    当然最好是自己的独立服务器。vps 也可以。随便你怎么整都可以。
View Code PHP

?

测试用例:ffmpeg-execute.php

本文链接地址: ubuntu 安装 ffmpeg php-ffmpeg

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn