@crvouga/mockingbird-service-medicalconvert (中文(简体) )
本地模拟器。 真正的API合同. 部分 嘲笑鸟。 。 。 .
用于官方SDK v3客户端的状态 AWS Elemental Media Convert仿真器. 它支持端点发现,一个同步的任务,决定控制,事件Bridge相容事件,输出写入一个已配置的仿真器S3服务.
安装
npm install -D @crvouga/mockingbird-service-mediaconvert
仅限无害环境管理。 节点22+或Bun 1.2+.
使用量
import {
CreateJobCommand,
DescribeEndpointsCommand,
MediaConvertClient,
} from "@aws-sdk/client-mediaconvert"
import { createServer } from "@crvouga/mockingbird-service-mediaconvert/server"
// Test setup: start the emulator and point the discovery client at it.
const server = await createServer()
const aws = {
region: "us-east-1",
credentials: { accessKeyId: "fixture", secretAccessKey: "fixture" },
}
const discovery = new MediaConvertClient({ ...aws, endpoint: server.url })
// Application code, unchanged. DescribeEndpoints returns the emulator URL, which the
// second client uses to submit jobs.
const { Endpoints } = await discovery.send(new DescribeEndpointsCommand({}))
const mediaConvert = new MediaConvertClient({ ...aws, endpoint: Endpoints?.[0]?.Url })
const { Job } = await mediaConvert.send(
new CreateJobCommand({
Role: "arn:aws:iam::000000000000:role/MediaConvert",
Settings: {
Inputs: [{ FileInput: "s3://inputs/source.mp4" }],
OutputGroups: [
{
OutputGroupSettings: {
Type: "FILE_GROUP_SETTINGS",
FileGroupSettings: { Destination: "s3://outputs/video/" },
},
},
],
},
}),
)
// Job.Status === "SUBMITTED"
await server.close()
支持的操作有描述端点(Description Endpoints),CreateJob(CreateJob),GetJob(GetJob)和CancelJob等. CreateJob保留了角色,队列,用户Metadata,以及完整的嵌入式设置结构. 重复的客户端请求返回原工作 .
控件
GET /__admin/jobs财务报告和审定财务报表GET /__admin/jobs/:id检查提交的任务和确切设置.POST /__admin/jobs/:id/transition接受status(单位:千美元)PROGRESSING, (中文(简体) ),COMPLETE, (中文(简体) ),ERROR,或CANCELED+ 可选progress, (中文(简体) ),durationInMs, (中文(简体) ),size, (中文(简体) ),names, (中文(简体) ),errorCode,以及errorMessage。 。 。 .- 完成一个任务时, 向每个 HLS 或文件组 S3 目标写决定性输出字节
s3.endpoint已配置. - 每个状态都改变 发出一个事件Bridge 兼容
MediaConvert Job State Change活动通过共享的 webhook 中枢. - 错误预设为
too_many_requests, (中文(简体) ),internal_error,以及unavailable。 。 。 .
共享运行时间提供重置,时钟,日记,度量衡,断层,和命名空间隔离.
API 密码
MediaConvertAPI, (中文(简体) ),MediaConvertAPIOptions, (中文(简体) ),MediaConvertEvent, (中文(简体) ),TransitionOptions:处理器,事件,和决定控制.MediaConvertJob, (中文(简体) ),MediaConvertJobStatus, (中文(简体) ),OutputGroupDetail: 持久就业状态.createRuntime, (中文(简体) ),MediaConvertRuntime, (中文(简体) ),MediaConvertRuntimeOptions:完整的"鸟"跑步时间和"网球"中枢.MEDIACONVERT_NAMESPACE, (中文(简体) ),MEDIACONVERT_PRESETS, (中文(简体) ),accessKeyCredential:常数和故障控制.document, (中文(简体) ),operationIds, (中文(简体) ),supportedOperationIds: 生成了 OpenAPI 元数据.createServer, (中文(简体) ),MediaConvertServerOptions, (中文(简体) ),DEFAULT_PORT, (中文(简体) ),serveTarget从./server:节点HTTP适配器和CLI集成.
故意不模拟
所提交的HLS/MP4结构以外的真实转码,IAM评价,任意操作,生产限制,计费,仪表板,和编码器没有被模拟.
官方预言: AWS 元素介质转换 API 参考。 。 。 .