php安裝ffmpeg擴展,ffmpeg庫安裝

本文目錄一覽:

有誰在phpstudy下安裝過ffmpeg的php擴展

在官網上找了ffmpeg的php擴展來裝,發現無法加載擴展,查看後得知官網的php擴展版本是vc6,二php5.4是vc9編譯的。在網上找了個php5.4的對應的ffmpeg的php擴展,地址是:

求大神幫忙解決php-mpeg擴展問題

裝php-ffmpeg擴展,ffprobe對象是可以偵測大多數媒體格式信息的。

目前也這樣最簡單。。

我學過mp4/3gp/flv、mkv、avi的格式,讀信息就是要多寫一堆文件操作函數而已多花幾天,但這樣最直接不需要掛擴展。還是用php-ffmpeg省事。不重複發明輪子。

怎樣在windows下配置ffmpeg-php

首先介紹下我使用的集成環境wamp。

PHP: php5.2.6

Apache: apache2.2.8

1.下載ffmpeg-php

2. 解壓ffmpeg-php-win32-all.zip 後有下面幾個文件:

avcodec-51.dll

avformat-51.dll

avutil-49.dll

php_ffmpeg.dll

pthreadGC2.dll

3. 將四個文件拷貝到windows\system32文件夾下面(小插曲:之前自己再配置時候按照網上的文章只拷貝兩個文件 avcodec-51.dll, avformat-51.dll到這個文件,結果發現並不能配置成功。後來將後面avutil-49.dll, pthreadGC2.dll全部拷貝過去就成功了,很有可能這四個文件是有一定關聯使用的。)

avcodec-51.dll, avformat-51.dll, avutil-49.dll, pthreadGC2.dll

4. 然後需要到apache\bin文件下找到php.ini文件下允許使用dll文件加入extension=php_ffmpeg.dll 並允許 extension=php_gd2.dll, extension=php_gettext.dll這兩個

改動後如下(去掉前面的分號就代表允許執行)

extension=php_gd2.dll

extension=php_gettext.dll

extension=php_ffmpeg.dll

5. 重新啟動wamp後使用phpinfo()函數看到一下信息配置: //我兩個環境一個apache一個IIS,iis不用重啟就生效了,apache沒試不知道, add by aboc

ffmpeg

ffmpeg-php version 0.5.2.1

libavcodec version Lavc51.43.0

libavformat version Lavf51.12.2

ffmpeg-php gd support enabled

以上就表明ffmpeg在php環境中配置成功了。

6. 下面我們建立一個php的頁面來測試是不是可以使用ffmpeg的一些函數功能。建立testvideo.php文件

代碼如下:

?php

extension_loaded(‘ffmpeg’); //可不要

$ffmpegInstance = new ffmpeg_movie(‘C:\wamp\www\top10.mp4’); //這裡要用絕對路徑

echo “getDuration: ” . $ffmpegInstance-getDuration().”br” .

“getFrameCount: ” . $ffmpegInstance-getFrameCount().”br” .

“getFrameRate: ” . $ffmpegInstance-getFrameRate().”br” .

“getFilename: ” . $ffmpegInstance-getFilename().”br” .

“getComment: ” . $ffmpegInstance-getComment().”br” .

“getTitle: ” . $ffmpegInstance-getTitle().”br” .

“getAuthor: ” . $ffmpegInstance-getAuthor().”br” .

“getCopyright: ” . $ffmpegInstance-getCopyright().”br” .

“getArtist: ” . $ffmpegInstance-getArtist().”br” .

“getGenre: ” . $ffmpegInstance-getGenre().”br” .

“getTrackNumber: ” . $ffmpegInstance-getTrackNumber().”br” .

“getYear: ” . $ffmpegInstance-getYear().”br” .

“getFrameHeight: ” . $ffmpegInstance-getFrameHeight().”br” .

“getFrameWidth: ” . $ffmpegInstance-getFrameWidth().”br” .

“getPixelFormat: ” . $ffmpegInstance-getPixelFormat().”br” .

“getBitRate: ” . $ffmpegInstance-getBitRate().”br” .

“getVideoBitRate: ” . $ffmpegInstance-getVideoBitRate().”br” .

“getAudioBitRate: ” . $ffmpegInstance-getAudioBitRate().”br” .

“getAudioSampleRate: ” . $ffmpegInstance-getAudioSampleRate().”br” .

“getVideoCodec: ” . $ffmpegInstance-getVideoCodec().”br” .

“getAudioCodec: ” . $ffmpegInstance-getAudioCodec().”br” .

“getAudioChannels: ” . $ffmpegInstance-getAudioChannels().”br” .

“hasAudio: ” . $ffmpegInstance-hasAudio();

?

7.執行後如果拿到視頻的一些信息如下就表示環境配置成功了,那我們就可以開始開發我們的視頻轉換了。

執行結果:

getDuration: 811.13336181641

getFrameCount: 12167

getFrameRate: 15

getFilename: C:\wamp\www\top10.mp4

getComment:

getTitle:

getAuthor:

getCopyright:

getArtist:

getGenre:

getTrackNumber: 0

getYear: 0

getFrameHeight: 240

getFrameWidth: 320

getPixelFormat: yuv420p

getBitRate: 269769

getVideoBitRate:

getAudioBitRate:

getAudioSampleRate: 48000

getVideoCodec: mpeg4

getAudioCodec: mpeg4aac

getAudioChannels: 2

hasAudio: 1

視頻截圖的話如下方法: //add by aboc

$ff_frame = $ffmpegInstance-getFrame(rand(1,$ffmpegInstance-getFrameCount())); //隨機截取某一幀

$gd_image = $ff_frame-toGDImage();

imagejpeg($gd_image,’t.jpg’);

imagedestroy($gd_image);

echo ‘img src=”t.jpg” /’;

原創文章,作者:GYQWC,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/315798.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
GYQWC的頭像GYQWC
上一篇 2025-01-09 12:13
下一篇 2025-01-09 12:13

相關推薦

  • PHP和Python哪個好找工作?

    PHP和Python都是非常流行的編程語言,它們被廣泛應用於不同領域的開發中。但是,在考慮擇業方向的時候,很多人都會有一個問題:PHP和Python哪個好找工作?這篇文章將從多個方…

    編程 2025-04-29
  • 使用FFmpeg在Java中將MP3 URL轉換為PCM

    本文介紹了使用FFmpeg在Java中將MP3 URL轉換為PCM的具體步驟,以及相應代碼示例。 一、準備工作 在使用FFmpeg之前,需要先安裝FFmpeg,可以在官網(http…

    編程 2025-04-29
  • PHP怎麼接幣

    想要在自己的網站或應用中接受比特幣等加密貨幣的支付,就需要對該加密貨幣擁有一定的了解,並使用對應的API進行開發。本文將從多個方面詳細闡述如何使用PHP接受加密貨幣的支付。 一、環…

    編程 2025-04-29
  • 使用PHP foreach遍歷有相同屬性的值

    本篇文章將介紹如何使用PHP foreach遍歷具有相同屬性的值,並給出相應的代碼示例。 一、基礎概念 在講解如何使用PHP foreach遍歷有相同屬性的值之前,我們需要先了解幾…

    編程 2025-04-28
  • PHP獲取301跳轉後的地址

    本文將為大家介紹如何使用PHP獲取301跳轉後的地址。301重定向是什麼呢?當我們訪問一個網頁A,但是它已經被遷移到了另一個地址B,此時若服務器端做了301重定向,那麼你的瀏覽器在…

    編程 2025-04-27
  • PHP登錄頁面代碼實現

    本文將從多個方面詳細闡述如何使用PHP編寫一個簡單的登錄頁面。 1. PHP登錄頁面基本架構 在PHP登錄頁面中,需要包含HTML表單,用戶在表單中輸入賬號密碼等信息,提交表單後服…

    編程 2025-04-27
  • PHP與Python的比較

    本文將會對PHP與Python進行比較和對比分析,包括語法特性、優缺點等方面。幫助讀者更好地理解和使用這兩種語言。 一、語法特性 PHP語法特性: <?php // 簡單的P…

    編程 2025-04-27
  • PHP版本管理工具phpenv詳解

    在PHP項目開發過程中,我們可能需要用到不同版本的PHP環境來試驗不同的功能或避免不同版本的兼容性問題。或者我們需要在同一台服務器上同時運行多個不同版本的PHP語言。但是每次手動安…

    編程 2025-04-24
  • PHP數組去重詳解

    一、array_unique函數 array_unique是php中常用的數組去重函數,它基於值來判斷元素是否重複,具體使用方法如下: $array = array(‘a’, ‘b…

    編程 2025-04-24
  • PHP導出Excel文件

    一、PHP導出Excel文件列寬調整 當我們使用PHP導出Excel文件時,有時需要調整單元格的列寬。可以使用PHPExcel類庫中的setWidth方法來設置單元格的列寬。下面是…

    編程 2025-04-24

發表回復

登錄後才能評論