PHP安装ffmpeg模块的使用方法

本文介绍了如何使用FFmpeg PHP扩展来操作音视频文件,包括获取文件的各种元数据如时长、尺寸等,并展示了如何通过FFmpeg PHP生成指定帧的缩略图。

下载ffmpeg-php安装包地址: http://ffmpeg-php.sourceforge.net/

ffmpeg_php对象                                        对象描述
ffmpeg_movie                ffmpeg_movie的对象提供的方法来查询和处理电影和音频轨道。
ffmpeg_frame                ffmpeg_frame的对象从电影查询单个框架提供了方法。
ffmpeg_animated_gif     ffmpeg_animated_gif的对象提供的方法从一系列的帧来创建GIF动画电影

ffmpeg_movie 对象的方法

$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 打开视频或音频文件的文件路径。
persistent          是否要打开这个媒体作为一个持久性资源。
$movie->getDuration()    返回电影或音频文件的播放时间。
$movie->getFrameCount()    返回电影或音频文件中的帧数。
$movie->getFrameRate()    在FPS电影帧速率回报。
$movie->getFilename()  返回电影文件或音频文件的路径和名称.。
$movie->getComment() 从电影或音频文件返回评论字段。
$movie->getTitle()    
从电影或音频文件中返回标题字段。
$movie->getAuthor() 
作者 
$movie->getArtist()    
从一个MP3文件的ID3场电影或艺术家返回作者字段。

$movie->getCopyright()    
从电影或音频文件返回版权字段。
$movie->getArtist()    
从MP3文件的ID3字段返回艺术家。
$movie->getGenre()    
从一个MP3文件的ID3字段返回类型。
$movie->getTrackNumber()    
从MP3文件的ID3字段返回轨道。
$movie->getYear()    
从一个MP3文件的ID3场返回年限。
$movie->getFrameHeight()    
以像素返回电影的高度。
$movie->getFrameWidth()    
以像素返回电影的宽度。
$movie->getPixelFormat()    
返回电影的像素格式。
$movie->getBitRate()    
每秒返回比特数的电影或音频文件的比特率。
$movie->getVideoBitRate()    
每秒返回比特的比特率。
注意:这仅适用于具有恒定比特率的文件.。

$movie->getAudioBitRate()    
每秒以比特的形式返回媒体文件的音频比特率.。
$movie->getAudioSampleRate()    
每秒以比特的形式返回媒体文件的音频采样率.。
$movie->getFrameNumber()    
返回当前帧索引。
$movie->getVideoCodec()    
返回用于将该影片编码为字符串的视频编解码器的名称.。
$movie->getAudioCodec()    
返回用于将该影片编码为字符串的音频编解码器的名称.。

$movie->getAudioChannels()    
将此影片中的音频频道数作为整数返回。
$movie->hasAudio()    
返回布尔值,指示影片是否有音频流.。
$movie->hasVideo()    
返回布尔值,该值指示影片是否有视频流.。
$movie->getFrame([Integer framenumber])    
返回从影片的框架为ffmpeg_frame对象。如果找不到框架,则返回错误。
framenumber -从电影帧返回。如果没有framenumber指定,返回下一帧的电影。
$movie->getNextKeyFrame()    
返回下一个关键帧从电影作为一种ffmpeg_frame对象。如果找不到框架,则返回错误。

实例代码:

<?PHP

//按指定帧生成缩略图

if(extension_loaded('ffmpeg')){//判断ffmpeg是否载入    

$mov = new ffmpeg_movie('D:\robot.avi');//视频的路径    

$ff_frame = $mov->getFrame(2);    

$gd_image = $ff_frame->toGDImage();    

$img=$_SERVER['DOCUMENT_ROOT']."/test.jpg";//要生成图片的绝对路径    

imagejpeg($gd_image, $img);//创建jpg图像    

imagedestroy($gd_image);//销毁一图像

}else{    

  echo "ffmpeg没有载入";

}

?>
注意:将ffmpeg_movie('D:\robot.avi');中的路径替换成你视频的路径,你发现在你PHP文件的同目录下生成了一个test.jpg,说明创建成功。

 

转载于:https://my.oschina.net/sokes/blog/816372

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值