使用 BitMovin Streams 服务,我想要:
无转换或混合。 Bitmovin 仪表板提供了开箱即用的此功能:选择一个文件 -> 文件被上传 -> 无需进行任何设置 -> 流已准备就绪。
我正在寻找一种使用 SDK(C#,但任何文档都可以)来做到这一点(仅此而已)的方法。
上传作品感谢他们的例子。我目前尝试了文档中的一些示例,但看起来非常复杂,而仪表板流程显示了一个非常简单的过程。
下面的(简化的)代码上传成功,创建编码和流,但最终:我没有清单,没有stream-id。
var fileInput = await _bitmovinApi.Encoding.Inputs.DirectFileUpload.CreateAsync(new());
var fileContent = new StreamContent(fileStream);
var fileUploadContent = new MultipartFormDataContent { { fileContent, "file", filename } };
var fileUploadResponse = await _httpClient.PutAsync(fileInput.UploadUrl, fileUploadContent, args.CancellationToken);
if (!fileUploadResponse.IsSuccessStatusCode)
throw await fileUploadResponse.Content.ReadAsStringAsync();
var codecConfig = await _bitmovinApi.Encoding.Configurations.Video.H264.CreateAsync(new()
{
DynamicRangeFormat = H264DynamicRangeFormat.SDR
});
var encoding = await _bitmovinApi.Encoding.Encodings.CreateAsync(new()
{
Name = filename
});
var stream = await _bitmovinApi.Encoding.Encodings.Streams.CreateAsync(encoding.Id, new()
{
InputStreams = [new()
{
InputId = fileInput.Id,
InputPath = fileInput.UploadUrl,
}],
CodecConfigId = codecConfig.Id
});
是否有更简单的方法以编程方式创建流? 我是否选择了错误的服务/提供商来完成如此简单的场景?
我相信您在这里使用了错误的 API。 您提到的工作流程是 Streams 产品,我们的一体化 API 可实现这一无缝工作流程,并且它是与您在帖子中引用的主要编码 API 不同的 API。
我们的文档中描述了您要查找的内容:https://developer.bitmovin.com/streams/docs/use-cdn-file-upload-with-streams
如您所见,创建流并检索
streamId
的主要端点是对 POST
(doc) 的
https://api.bitmovin.com/v1/streams/video
调用
创建流调用需要一个文件已上传到互联网,这就是您已经正确使用的直接文件上传 API 的来源。
希望这有帮助。