Maison >développement back-end >Problème PHP >Parlons de la méthode d'implémentation du transcodage vidéo php Qiniu recevant le rappel
Le développement d'Internet a fait des vidéos un élément indispensable de la vie quotidienne des gens, et de plus en plus de sites Web commencent à utiliser des vidéos pour afficher leur contenu. Pour le traitement vidéo, tel que la compression vidéo, le transcodage, etc., une assistance technique professionnelle est requise. Qiniu Cloud Storage est un service de stockage cloud populaire qui fournit une puissante fonction de transcodage vidéo capable de convertir les fichiers vidéo téléchargés en fichiers vidéo dans un format spécifié. Pour le transcodage vidéo, Qiniu Cloud Storage fournit également la réception de rappel. Présentons la méthode d'implémentation du rappel de réception de transcodage vidéo PHP Qiniu.
1. Qu'est-ce que la réception de rappel ?
La réception de rappel signifie qu'une fois que Qiniu Cloud Storage a terminé le transcodage, il envoie le résultat du transcodage à l'URL spécifiée via la méthode de publication et renvoie le format de données spécifié. L'avantage de la mise en œuvre de cette méthode est qu'il n'est pas nécessaire d'effectuer un traitement de rappel sur le serveur du client, car le rappel sera envoyé directement à l'URL spécifiée par le client, permettant ainsi un traitement rapide des résultats de transcodage.
2. Méthode de mise en œuvre
2.1 Enregistrez et téléchargez le bon
Avant d'utiliser Qiniu Cloud Storage pour le transcodage vidéo, vous devez d'abord vous inscrire et télécharger le bon. Le certificat de téléchargement est un jeton utilisé pour prouver légalement la légalité du fichier téléchargé par l'utilisateur côté serveur. Dans Qiniu Cloud Storage, nous pouvons utiliser le SDK PHP pour obtenir des jetons. Voici le code pour obtenir le certificat de téléchargement :
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 Télécharger la vidéo
Après avoir obtenu le certificat de téléchargement, vous pouvez télécharger la vidéo. Semblable au téléchargement d’images, le téléchargement de vidéos nécessite également l’utilisation du gestionnaire de téléchargement. Voici le code pour le téléchargement de vidéos :
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);
Ici, nous pouvons voir que contrairement au traitement des images, le traitement des vidéos nécessite de définir l'url et le contenu du callbackBody reçu par le rappel. Le contenu de cette partie détermine le format des données reçues par le rappel.
2.3 Recevoir un rappel
Une fois le téléchargement terminé, nous devons recevoir un rappel. Sur l'URL reçue par le rappel, utilisez le code suivant pour traiter les informations de rappel :
$hostname = "http://api.qiniu.com"; $port = 80; $path = "/callback"; $url = $hostname . ":" . $port . $path; $data = json_decode(file_get_contents('php://input'));
Grâce au code ci-dessus, vous pouvez recevoir les données de rappel transmises par Qiniu Cloud Storage. Pour différents rappels, nous pouvons effectuer différents traitements en fonction des données contenues dans « data ».
3. Résumé
Cet article présente la réception de rappel du transcodage vidéo PHP Qiniu Grâce à cette méthode, le transcodage vidéo peut être réalisé efficacement. En même temps, j’espère que le contenu de cet article sera utile à tout le monde.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!