hoangstark/shufu-encoder-sdk

Shufu 编码器 SDK

v1.1.1 2019-07-07 09:37 UTC

This package is auto-updated.

Last update: 2024-09-17 01:09:56 UTC


README

Latest Version on Packagist Build Status Total Downloads

使用此 SDK 通过用户名和密码登录,然后获取访问令牌。

安装

您可以通过 composer 安装此包。

composer require hoangstark/shufu-encoder-sdk

用法

登录

<?php

namespace App\Http\Controllers;

use Hoangstark\ShufuEncoderSdk\ShufuEncoderSdk;

class LoginController extends Controller
{
    protected function login()
    {
        $shufuEncoder = new ShufuEncoderSdk;
        $shufuEncoder->login('https:///api', 'shufu', 'secret');
        return $shufuEncoder->getAccessToken();
    }
}

获取任务

$shufuEncoder = new ShufuEncoderSdk;
$shufuEncoder->login('https://:8080/api', 'shufu', 'secret');

$tasks = $shufuEncoder->getTasks();

获取编码任务

$shufuEncoder = new ShufuEncoderSdk;
$shufuEncoder->login('https://:8080/api', 'shufu', 'secret');

$tasks = $shufuEncoder->getEncodingTasks();

获取单个任务

$shufuEncoder = new ShufuEncoderSdk;
$shufuEncoder->login('https://:8080/api', 'shufu', 'secret');

$task = $shufuEncoder->getTask(1);

获取单个任务的编码进度

$shufuEncoder = new ShufuEncoderSdk;
$shufuEncoder->login('https://:8080/api', 'shufu', 'secret');

$percentage = $shufuEncoder->getTaskProgress(1);

创建任务

$shufuEncoder = new ShufuEncoderSdk;
$shufuEncoder->login('https://:8080/api', 'shufu', 'secret');

$task = $shufuEncoder->createTask(array(
    "webhook_success" => "https://enpii3jcfpr19.x.pipedream.net",
    "webhook_error" => "https://en4vdjmi70ib.x.pipedream.net/",
    "s3_filename" => "test",
    "s3_path" => "encoded/a/c",
    "s3_region" => "eu-central-1",
    "s3_bucket" => "shufu-encoder",
    "s3_key" => "...",
    "s3_secret" => "...",
    "encode_formats" => array(
        array(
            "width" => 1280,
            "height" => 0,
            "video_kilobitrate" => "1500",
            "audio_kilobitrate" => "128",
            "video_codec" => "libx264",
            "audio_codec" => "aac",
            "profile" => "main",
            "preset" => "veryfast"
        ),
        array(
            "width" => 720,
            "height" => 0,
            "video_kilobitrate" => "750",
            "audio_kilobitrate" => "128",
            "video_codec" => "libx264",
            "audio_codec" => "aac",
            "profile" => "main",
            "preset" => "veryfast",
        )
    ),
));

echo $task->message // Task created

更新任务

$shufuEncoder = new ShufuEncoderSdk;
$shufuEncoder->login('https://:8080/api', 'shufu', 'secret');

$task = $shufuEncoder->updateTask(1, array(
    "webhook_success" => "https://enpii3jcfpr19.x.pipedream.net",
    "webhook_error" => "https://en4vdjmi70ib.x.pipedream.net/",
    "s3_filename" => "test",
    "s3_path" => "encoded/a/c",
    "s3_region" => "eu-central-1",
    "s3_bucket" => "shufu-encoder",
    "s3_key" => "...",
    "s3_secret" => "...",
    "encode_formats" => array(
        array(
            "width" => 1280,
            "height" => 0,
            "video_kilobitrate" => "1500",
            "audio_kilobitrate" => "128",
            "video_codec" => "libx264",
            "audio_codec" => "aac",
            "profile" => "main",
            "preset" => "veryfast"
        ),
        array(
            "width" => 720,
            "height" => 0,
            "video_kilobitrate" => "750",
            "audio_kilobitrate" => "128",
            "video_codec" => "libx264",
            "audio_codec" => "aac",
            "profile" => "main",
            "preset" => "veryfast",
        )
    ),
));

echo $task->message // Task updated

将任务派送到队列

$shufuEncoder = new ShufuEncoderSdk;
$shufuEncoder->login('https://:8080/api', 'shufu', 'secret');

$queue = $shufuEncoder->queueTask(1);

echo $queue->message // Task does not have file | Task already encoded | Task queue dispatched

测试

composer test

变更日志

请参阅 CHANGELOG 了解最近更改的详细信息。

贡献

请参阅 CONTRIBUTING 了解详细信息。

鸣谢

许可协议

MIT 许可协议 (MIT)。有关更多信息,请参阅 许可文件