欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

PHP+FFMPEG實現(xiàn)將視頻自動轉(zhuǎn)碼成H264標(biāo)準(zhǔn)Mp4文件

 更新時間:2014年09月24日 16:10:51   投稿:hebedich  
最近做一個在線教學(xué)網(wǎng)的項目,需要實現(xiàn)上傳任意格式視頻自動為h264標(biāo)準(zhǔn)視頻,使用html5播放。最終使用PHP+FFMPEG實現(xiàn),在此將詳細(xì)解決方案分享給大家!

配置php.ini文件

復(fù)制代碼 代碼如下:

file_uploads = on ;//是否允許通過HTTP上傳文件的開關(guān)。默認(rèn)為ON即是開
upload_tmp_dir ;//文件上傳至服務(wù)器上存儲臨時文件的地方,如果沒指定就會用系統(tǒng)默認(rèn)的臨時文件夾
upload_max_filesize = 1024m ;//望文生意,即允許上傳文件大小的最大值。默認(rèn)為2M,我們設(shè)置為1G
post_max_size = 1024m ;//指通過表單POST給PHP的所能接收的最大值,我們也設(shè)置為1G

max_execution_time = 3600 ;//每個PHP頁面運行的最大時間值(秒),默認(rèn)30秒,設(shè)置為一小時,因為后面轉(zhuǎn)碼時間很久。
max_input_time = 36000 ;//每個PHP頁面接收數(shù)據(jù)所需的最大時間,默認(rèn)60秒
memory_limit = 8m ;//每個PHP頁面所吃掉的最大內(nèi)存,默認(rèn)8M


 文件上傳插件

火焰雨推薦大家使用uploadify,Uploadify是JQuery的一個上傳插件,實現(xiàn)帶進(jìn)度顯示。插件安裝簡單,此處略過。
 但是有個問題需要注意,非IE瀏覽器session會丟失,查了很多資料,最終總結(jié)的原因是:

因為諸如uploadify采用的是flash客戶端,它產(chǎn)生的useragent與瀏覽器的user-agent不同。
 

最終解決辦法:

復(fù)制代碼 代碼如下:

//在upmodify上傳參數(shù)中加入session參數(shù),如下:
scriptData: {"SESSION_ID":""},
// 在服務(wù)端接收頁面加入以下代碼:
if(@$_REQUEST['SESSION_ID'] && ($session_id=$_REQUEST['SESSION_ID']) !=session_id()){
session_destroy();
session_id($session_id);
@session_start();
}

 這樣就解決了 FLASH 不能正確傳遞頁面

視頻格式轉(zhuǎn)換

現(xiàn)在Linux下比較流行的視頻格式轉(zhuǎn)換軟件是FFMPEG,F(xiàn)FMPEG是用于錄制、截圖、轉(zhuǎn)換和流化音頻和視頻的完整解決方案,一套領(lǐng)先的音/視頻編解碼類庫。除了FFMPEG外,我們要轉(zhuǎn)碼成H264格式 ,還需要一個擴展。(文章最后給出所有軟件包下載地址)

centos 5.4環(huán)境下安裝源碼安裝h264擴展

復(fù)制代碼 代碼如下:

tar -xjvf x264-snapshot-20120718-2245-stable.tar.bz2
  #進(jìn)入解壓后的源文件目錄
  cd x264-snapshot-20120718-2245-stable/
  ./configure --prefix=/usr/local --enable-shared
  make
  make install

 //centos 5.4環(huán)境下安裝源碼安裝ffmpeg with h264擴展
 tar -xjvf ffmpeg-2.1.1.tar.bz2
 //進(jìn)入解壓后目錄
 cd ffmpeg-2.1.1
 ./configure --enable-gpl --enable-libx264
 make
 make install
 //重新加載配置
 lcfonfig
 //測試是否安裝成功
 ffmpeg

 如果你看到以下內(nèi)容說明安裝成功:

復(fù)制代碼 代碼如下:

ffmpeg version 2.1.1 Copyright (c) 2000-2013 the FFmpeg developers
 built on Dec 17 2013 23:32:40 with gcc 4.4.7 (GCC) 20120313 (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調(diào)用ffmpeg轉(zhuǎn)碼視頻

復(fù)制代碼 代碼如下:

$cmd = 'FFMPEG  -i  uploadfile/video/test.wmv -c:v libx264 -strict -2 uploadfile/mp4/test.mp4';
 exec($cmd, $status);

 運行前請確認(rèn)exec函數(shù)已經(jīng)開啟。否則請修改php.ini文件

最后附上FFMPEG+H264擴展+YASM+apache_mod_h264

相關(guān)文章

  • Laravel實現(xiàn)構(gòu)造函數(shù)自動依賴注入的方法

    Laravel實現(xiàn)構(gòu)造函數(shù)自動依賴注入的方法

    這篇文章主要介紹了Laravel實現(xiàn)構(gòu)造函數(shù)自動依賴注入的方法,涉及Laravel構(gòu)造函數(shù)自動初始化的相關(guān)技巧,需要的朋友可以參考下
    2016-03-03
  • 完美解決Thinkphp3.2中插入相同數(shù)據(jù)的問題

    完美解決Thinkphp3.2中插入相同數(shù)據(jù)的問題

    下面小編就為大家?guī)硪黄昝澜鉀QThinkphp3.2中插入相同數(shù)據(jù)的問題。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-08-08
  • laravel 字段格式化 modle 字段類型轉(zhuǎn)換方法

    laravel 字段格式化 modle 字段類型轉(zhuǎn)換方法

    今天小編就為大家分享一篇laravel 字段格式化 modle 字段類型轉(zhuǎn)換方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-09-09
  • PHP編寫RESTful接口的方法

    PHP編寫RESTful接口的方法

    這篇文章主要為大家詳細(xì)介紹了PHP編寫RESTful接口的方法,如何使用PHP編寫RESTful接口,感興趣的小伙伴們可以參考一下
    2016-02-02
  • Laravel 5.5官方推薦的Nginx配置學(xué)習(xí)教程

    Laravel 5.5官方推薦的Nginx配置學(xué)習(xí)教程

    這篇文章主要給大家介紹了關(guān)于Laravel 5.5官方推薦的Nginx配置學(xué)習(xí)的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。
    2017-10-10
  • destoon實現(xiàn)公司新聞詳細(xì)頁添加評論功能的方法

    destoon實現(xiàn)公司新聞詳細(xì)頁添加評論功能的方法

    這篇文章主要介紹了destoon實現(xiàn)公司新聞詳細(xì)頁添加評論功能的方法,需要的朋友可以參考下
    2014-07-07
  • Smarty模板語法詳解

    Smarty模板語法詳解

    這篇文章主要介紹了Smarty模板語法,結(jié)合實例形式詳細(xì)分析了Smarty模板的注釋、變量、引號、函數(shù)等基本語法與使用技巧,需要的朋友可以參考下
    2019-07-07
  • 如何在CentOS中安裝PHP7.4的方法步驟

    如何在CentOS中安裝PHP7.4的方法步驟

    這篇文章主要介紹了如何在CentOS中安裝PHP7.4的方法步驟,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-12-12
  • PHP 文本文章分頁代碼 按標(biāo)記或長度(不涉及數(shù)據(jù)庫)

    PHP 文本文章分頁代碼 按標(biāo)記或長度(不涉及數(shù)據(jù)庫)

    PHP文本分頁,按標(biāo)記或者長度分頁,非傳統(tǒng)的數(shù)據(jù)庫分頁。廢話不多說,客觀如有意可直接看代碼
    2012-06-06
  • 詳解如何實現(xiàn)Laravel的服務(wù)容器的方法示例

    詳解如何實現(xiàn)Laravel的服務(wù)容器的方法示例

    這篇文章主要介紹了詳解如何實現(xiàn)Laravel的服務(wù)容器的方法示例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-04-04

最新評論