如何将本地的h264文件h264封装格式成mp4格式

如何将h264裸流封装为mp4流?
[问题点数:20分]
如何将h264裸流封装为mp4流?
[问题点数:20分]
不显示删除回复
显示所有回复
显示星级回复
显示得分回复
只显示楼主
2012年4月 专题开发/技术/项目大版内专家分月排行榜第二2012年3月 专题开发/技术/项目大版内专家分月排行榜第二
匿名用户不能发表回复!|
每天回帖即可获得10分可用分!小技巧:
你还可以输入10000个字符
(Ctrl+Enter)
请遵守CSDN,不得违反国家法律法规。
转载文章请注明出自“CSDN(www.csdn.net)”。如是商业用途请联系原作者。配置php.ini文件
file_uploads =//是否允许通过HTTP上传文件的开关。默认为ON即是开
upload_tmp_//文件上传至服务器上存储临时文件的地方,如果没指定就会用系统默认的临时文件夹
upload_max_filesize = 1024//望文生意,即允许上传文件大小的最大值。默认为2M,我们设置为1G
post_max_size = 1024//指通过表单POST给PHP的所能接收的最大值,我们也设置为1G
max_execution_time = 3600 ;//每个PHP页面运行的最大时间值(秒),默认30秒,设置为一小时,因为后面转码时间很久。
max_input_time = 36000 ;//每个PHP页面接收数据所需的最大时间,默认60秒
memory_limit = 8//每个PHP页面所吃掉的最大内存,默认8M
文件上传插件
火焰雨推荐大家使用uploadify,Uploadify是JQuery的一个上传插件,实现带进度显示。插件安装简单,此处略过。
但是有个问题需要注意,非IE浏览器session会丢失,查了很多资料,最终总结的原因是:
因为诸如uploadify采用的是flash客户端,它产生的useragent与浏览器的user-agent不同。
最终解决办法:
//在upmodify上传参数中加入session参数,如下:
scriptData: {"SESSION_ID":""},
// 在服务端接收页面加入以下代码:
if(@$_REQUEST['SESSION_ID'] && ($session_id=$_REQUEST['SESSION_ID']) !=session_id()){
session_destroy();
session_id($session_id);
@session_start();
这样就解决了 FLASH 不能正确传递页面
视频格式转换
现在Linux下比较流行的视频格式转换软件是FFMPEG,FFMPEG是用于录制、截图、转换和流化音频和视频的完整解决方案,一套领先的音/视频编解码类库。除了FFMPEG外,我们要转码成H264格式 ,还需要一个扩展。(文章最后给出所有软件包下载地址)
centos 5.4环境下安装源码安装h264扩展
tar -xjvf x264-snapshot-5-stable.tar.bz2
#进入解压后的源文件目录
cd x264-snapshot-5-stable/
./configure --prefix=/usr/local --enable-shared
make install
//centos 5.4环境下安装源码安装ffmpeg with h264扩展
tar -xjvf ffmpeg-2.1.1.tar.bz2
//进入解压后目录
cd ffmpeg-2.1.1
./configure --enable-gpl --enable-libx264
make install
//重新加载配置
//测试是否安装成功
如果你看到以下内容说明安装成功:
ffmpeg version 2.1.1 Copyright (c)
the FFmpeg developers
built on Dec 17 :40 with gcc 4.4.7 (GCC)
(Red Hat 4.4.7-3)
configuration: --enable-libx264 --enable-gpl
libavutil 52. 48.101 / 52. 48.101
libavcodec 55. 39.101 / 55. 39.101
libavformat 55. 19.104 / 55. 19.104
libavdevice 55. 5.100 / 55. 5.100
libavfilter 3. 90.100 / 3. 90.100
libswscale 2. 5.101 / 2. 5.101
libswresample 0. 17.104 / 0. 17.104
libpostproc 52. 3.100 / 52. 3.100
Hyper fast Audio and Video encoder
usage: ffmpeg [options] [[infile options] -i infile]... {[outfile options] outfile}...
Use -h to get full help or, even better, run 'man ffmpeg'
php调用ffmpeg转码视频
$cmd = 'FFMPEG -i uploadfile/video/test.wmv -c:v libx264 -strict -2 uploadfile/mp4/test.mp4';
exec($cmd, $status);
运行前请确认exec函数已经开启。否则请修改php.ini文件
更多信息请查看
易贤网手机网站地址:
【】&&&&&【】
由于各方面情况的不断调整与变化,易贤网所提供的所有考试信息和咨询回复仅供参考,敬请考生以权威部门公布的正式信息和咨询为准!
云南各地招聘
&nbsp&nbsp&nbsp &nbsp&nbsp&nbsp会员注册
本站不参与评论,(&&点此深度交流 )
自觉遵守:爱国、守法、自律、真实、文明的原则
尊重网上道德,遵守中华人民共和国各项有关法律法规
严禁发表危害国家安全,破坏民族团结、国家宗教政策和社会稳定,含侮辱、诽谤、教唆、淫秽等内容的评论
承担一切因您的行为而直接或间接导致的民事或刑事法律责任
您在本站发表的评论,本站有权保留、转载、引用或者删除
参与本评论即表明您已经阅读并接受上述条款
将该文分享到:

我要回帖

更多关于 ffmpeg 封装h264为mp4 的文章

 

随机推荐