Zencoder API PHP 库使用指南
2024-12-20 21:44:03作者:温玫谨Lighthearted
1. 安装指南
首先,您需要从 GitHub 下载 Zencoder API PHP 库。您可以通过访问 Zencoder API PHP 库 GitHub 仓库 来获取库的副本。
下载后,将库文件 Zencoder.php 放置在您的服务器上,确保您的脚本可以访问该文件。
git clone https://github.com/zencoder/zencoder-php.git
2. 项目使用说明
要开始使用 Zencoder API PHP 库,您需要创建 Services_Zencoder 类的新实例,并传递您的 API 密钥作为第一个参数。
$zencoder = new Services_Zencoder('您的API密钥');
一旦创建了对象,您就可以使用它来与 API 进行交互。以下是一些可以调用的函数的快速概览:
$zencoder->accounts->create($array);
$zencoder->jobs->create($array);
$zencoder->jobs->progress($job_id);
$zencoder->inputs->details($input_id);
$zencoder->outputs->details($output_id);
$zencer->notifications->parseIncoming();
任何错误都将抛出 Services_Zencoder_Exception。您可以在异常上调用 getErrors() 方法,它将返回从 Zencoder API 接收到的任何错误。
3. 项目API使用文档
Zencoder API PHP 库使用 cURL 来发送 JSON 格式的参数到 Zencoder 的编码 API。
创建编码任务
第一步
访问您的 Zencoder 账户中的 API 构建器,并执行一个成功的编码任务。
第二步
复制成功的 JSON 字符串(以第一个花括号 { 开头),并将其作为新 ZencoderJob 对象的参数。在您的服务器上执行此脚本来测试它是否正常工作。
try {
$zencoder = new Services_Zencoder('您的API密钥');
$encoding_job = $zencoder->jobs->create(
array(
"input" => "s3://bucket-name/file-name.avi",
"outputs" => array(
array(
"label" => "web"
)
)
)
);
echo "成功!\n";
echo "任务 ID: " . $encoding_job->id . "\n";
echo "输出 ID: " . $encoding_job->outputs['web']->id . "\n";
} catch (Services_Zencoder_Exception $e) {
echo "失败 :(\n";
foreach ($e->getErrors() as $error) {
echo $error . "\n";
}
}
第三步
修改上述脚本来满足您的需求。
通知处理
ZencoderOutputNotification 类用于捕获和解析当输出文件完成时从 Zencoder 发送到您的应用程序的 JSON 数据。
第一步
创建一个用于接收通知的脚本,并将其上传到服务器上的一个公共可访问位置。
try {
$zencoder = new Services_Zencoder('您的API密钥');
$notification = $zencoder->notifications->parseIncoming();
// 根据通知状态进行处理
} catch (Services_Zencoder_Exception $e) {
echo "失败 :(\n";
foreach ($e->getErrors() as $error) {
echo $error . "\n";
}
}
第二步
在编码任务的参数中,为每个您想要接收到通知的输出添加脚本的 URL。
$encoding_job = $zencoder->jobs->create(
array(
"outputs" => array(
array(
"label" => "web",
"notifications" => array("http://example.com/encoding/notification.php")
)
)
)
);
第三步
修改上述脚本来满足您的需求。
4. 项目安装方式
请参考上述的安装指南来安装 Zencoder API PHP 库。确保您已经将库文件放置在服务器上,并且您的脚本可以访问到它。
登录后查看全文
热门项目推荐
GLM-5智谱 AI 正式发布 GLM-5,旨在应对复杂系统工程和长时域智能体任务。Jinja00
LongCat-AudioDiT-1BLongCat-AudioDiT 是一款基于扩散模型的文本转语音(TTS)模型,代表了当前该领域的最高水平(SOTA),它直接在波形潜空间中进行操作。00
jiuwenclawJiuwenClaw 是一款基于openJiuwen开发的智能AI Agent,它能够将大语言模型的强大能力,通过你日常使用的各类通讯应用,直接延伸至你的指尖。Python0248- QQwen3.5-397B-A17BQwen3.5 实现了重大飞跃,整合了多模态学习、架构效率、强化学习规模以及全球可访问性等方面的突破性进展,旨在为开发者和企业赋予前所未有的能力与效率。Jinja00
AtomGit城市坐标计划AtomGit 城市坐标计划开启!让开源有坐标,让城市有星火。致力于与城市合伙人共同构建并长期运营一个健康、活跃的本地开发者生态。01
HivisionIDPhotos⚡️HivisionIDPhotos: a lightweight and efficient AI ID photos tools. 一个轻量级的AI证件照制作算法。Python05
热门内容推荐
项目优选
收起
deepin linux kernel
C
27
13
OpenHarmony documentation | OpenHarmony开发者文档
Dockerfile
641
4.19 K
Ascend Extension for PyTorch
Python
478
579
本项目是CANN提供的数学类基础计算算子库,实现网络在NPU上加速计算。
C++
934
841
openEuler内核是openEuler操作系统的核心,既是系统性能与稳定性的基石,也是连接处理器、设备与服务的桥梁。
C
386
272
🎉 (RuoYi)官方仓库 基于SpringBoot,Spring Security,JWT,Vue3 & Vite、Element Plus 的前后端分离权限管理系统
Vue
1.52 K
866
暂无简介
Dart
885
211
仓颉编程语言运行时与标准库。
Cangjie
161
922
昇腾LLM分布式训练框架
Python
139
163
🔥LeetCode solutions in any programming language | 多种编程语言实现 LeetCode、《剑指 Offer(第 2 版)》、《程序员面试金典(第 6 版)》题解
Java
69
21