網路發展讓影片成為了人們日常生活中不可或缺的一部分,越來越多的網站都開始使用影片來展現自己的內容。而對於視訊的處理,如視訊壓縮,轉碼等更是需要專業的技術支援。七牛雲端儲存是一個流行的雲端儲存服務,它提供了強大的視訊轉碼功能,可以將上傳的視訊檔案轉換為指定格式的視訊檔案。對於視訊轉碼,七牛雲端儲存也提供了回呼接收,以下我們就來介紹一下php七牛視訊轉碼接收回呼的實作方法。
一、什麼是回呼接收
回呼接收,即在七牛雲端儲存完成轉碼後,將轉碼結果透過post方式傳送給指定的url,並傳回指定的數據格式。透過這種方式實現的好處在於不需要在客戶的伺服器上進行回調處理,因為回呼會直接傳送到客戶指定的url上,從而實現快速處理轉碼結果。
二、實作方法
2.1 註冊上傳憑證
在使用七牛雲端儲存進行視訊轉碼前,首先需要註冊上傳憑證。上傳憑證即一個在服務端進行合法證明使用者上傳檔案上傳合法性的token。在七牛雲端儲存中,我們可以使用PHP SDK來實現token的取得。以下是取得上傳憑證的程式碼:
use Qiniu\Auth; use Qiniu\Storage\UploadManager; $accessKey = 'ACCESS_KEY'; $secretKey = 'SECRET_KEY'; $auth = new Auth($accessKey, $secretKey); $bucket = 'BUCKET_NAME'; $token = $auth->uploadToken($bucket);
2.2 進行影片上傳
取得了上傳憑證之後,即可進行影片上傳。與上傳圖片相似,影片上傳也需要使用到上傳管理器。以下是影片上傳的程式碼:
use Qiniu\Storage\UploadManager; use Qiniu\Storage\BucketManager; use Qiniu\Auth; $accessKey = 'ACCESS_KEY'; $secretKey = 'SECRET_KEY'; $auth = new Auth($accessKey, $secretKey); $bucket = 'BUCKET_NAME'; $callbackUrl = 'http://your.domain.com/callback.php'; $callbackBody = 'filename=$(fname)&filesize=$(fsize)&etag=$(etag)'; $policy = array( 'callbackUrl' => $callbackUrl, 'callbackBody' => $callbackBody ); $upToken = $auth->uploadToken($bucket, null, 3600, $policy); $filePath = '/path/to/video.mp4'; $key = 'video.mp4'; $uploadMgr = new UploadManager(); list($ret, $err) = $uploadMgr->putFile($upToken, $key, $filePath);
在這裡我們可以看到,與處理圖片不同,處理影片需要設定回呼接收的url和callbackBody內容,這一部分的內容決定了回呼接收的資料格式。
2.3 接收回呼
在上傳完成後,我們需要接收回呼。在回呼接收的url上,使用以下程式碼處理回呼訊息:
$hostname = "http://api.qiniu.com"; $port = 80; $path = "/callback"; $url = $hostname . ":" . $port . $path; $data = json_decode(file_get_contents('php://input'));
透過以上程式碼,即可接收到從七牛雲端儲存傳過來的回呼資料。針對不同的回調,我們可以根據"data"裡面的資料進行不同的處理。
三、總結
本文介紹了php七牛視訊轉碼的回呼接收,透過此方法即可高效實現視訊轉碼處理。同時,希望文中的內容對大家有幫助。
以上是聊聊php七牛視訊轉碼接收回呼的實作方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!