问题标签 [azure-media-services]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
391 浏览

azure - Encoding videos for web and mobile using Azure Media Services

I'm using Azure Media Services to encode adaptive videos that need to be seen in web (I'm using Smooth Streaming for this) and in both iOS and Android (and I'm using HLS for both). In the Azure documentation are presets for encoding to Smooth Streaming in 1080p and there's also documentation for remuxing the SS files to HLS. So far, so good.
The problem is that when I convert the 1080p Smooth Streaming to HLS, the result is not playable in Android. I've searched about it and it seems that the problem is that the Media Services preset encodes the video using h264 high profile and Android doesn't support that profile.
I've fixed this problem encoding to two different Smooth Streaming presets: "H264 Smooth Streaming 1080p" and "H264 Smooth Streaming 720p" (because the latter encodes to h264 main profile), and then using the 720p files to generate the HLS video. This is not optimal because I'm encoding one more time that needed and I'm not using the 720p smooth streaming files. So... Is there a way that I can skip the 720p Smooth Streaming encoding? Maybe encoding to Smooth Streaming in 1080p but with main profile?

0 投票
1 回答
1292 浏览

ffmpeg - 使用 FFMPEG 将实时流编码为 IIS 媒体服务(或 Azure 实时媒体服务)的提示?

我们正在尝试使用 ffmpeg 将实时或静态资产编码到 IIS 媒体服务的实时流中。谁能提供关于我们应该使用和设置哪些参数的指针?

作为我们测试的一部分,为了看看我们是否可以让事情正常工作,我们有一个标准的普通 MP4 视频静态资产,我们正试图将其流式传输到服务器。它似乎在客户端工作,但是当我们尝试在接收端查看视频时,我们什么也得不到。

这是我们正在使用的命令的示例,其中 gg.mp4 是静态 MP4 视频(显然 (hostname) 是我们主机的名称,而不是括号中的实际单词 :)...

0 投票
1 回答
185 浏览

azure - 部署到服务器 (iis8) 后创建 Azure 媒体服务作业失败

我在使用 Azure 媒体服务时遇到了一些问题。我已成功将文件上传到 Azure 媒体服务并将其编码为 mp4,但这仅适用于 Visual Studio 中的 localhost。当我将以下代码部署到 Azure 虚拟机 Windows Datacenter 2012 版时,文件已上传,但从未创建编码作业

任何帮助深表感谢!

这是我用来创建作业的代码:

编辑:

进行了一些挖掘(记录...)并找到了堆栈跟踪:

0 投票
1 回答
177 浏览

azure - 无法创建资产

我正在尝试使用 Windows Azure 媒体服务使用他们的 REST API 上传视频。

到目前为止我所做的是我已经成功获得了一个 access_token。按照他们网站上的指南,我现在需要创建一个资产。这部分的教程告诉我,我需要触发这样的请求:

但我的回答与指南中提供的不同。它看起来像这样:

更重要的是 - 我对所有其他 api 端点(等)都得到了完全相同的GET /assets响应GET /jobs

我确信这是一个很容易解决的问题,我在这里遗漏了一些东西。

0 投票
1 回答
216 浏览

azure - 如何获取已发布的视频 URL

我正在尝试基于 Windows Media Services REST API 构建我的应用程序(我没有使用任何 SDK,只是简单的 rest api 请求)。

我的步骤或多或少像:

  1. 创建资产
  2. 分配写访问策略
  3. 分配上传定位器
  4. 将文件上传到上传定位器路径指定的 URL
  5. 分配下载访问策略
  6. 分配下载定位器

所有这些步骤似乎都很好,但是 - 我如何才能真正获得视频流 URL?我看不到任何东西,看起来像这样的 url(据我所知,它应该看起来类似于从上传定位器上传 URL)。我应该使用来自 api 各个部分的一些片段自己“折叠”它吗?

根据这篇文章,我应该在path参数后面加上name参数和/manifest(所以它应该看起来像这样:)<path_param>/<name_param>.ism/manifest但它给了我ResourceNotFound错误。无论如何,我已经看到其他人(如SHIBSANKAR)已经找到了一些方法来获取所有资产 url,所以我认为有一些方法可以做到这一点,但他们没有描述他们是如何做到的。

0 投票
1 回答
1925 浏览

azure - 在 WAMS 媒体文件上启用 CORS 以在 MPEG-DASH 参考播放器中播放

我一直在尝试使用 MPEG-DASH 的dash.js 参考播放器来播放来自我的 Windows Azure 媒体服务 (WAMS) 帐户的媒体。不幸的是,Chrome 33(支持媒体源扩展,因此支持 DASH)给了我一个标准的 CORS 错误:

XMLHttpRequest 无法完全加载rad.origin.mediaservices.windows.net/6c8d4ddf-1579-4047-8f15-ae1fe95bd2d5/interview1.ism/manifest(format=mpd-time-csf)。请求的资源上不存在“Access-Control-Allow-Origin”标头。因此,Origin 'localhost:3000' 不允许访问。

不幸的是,您不能只将 crossdomain.xml 上传到 WAMS,因此浏览器将允许该请求(由于某种原因,这是一种不允许的类型)。我找到了一篇关于如何为 Azure 存储启用 CORS的文章,但这是为了从浏览器启用上传场景:这与我需要的相反。

如果这是不可能的,Azure 似乎并不真正支持破折号......所以我一定做错了什么,因为有人已经这样做了,因为这个媒体链接在破折号播放器中工作。

对于测试,您可以使用在线 Dash.js 播放器

0 投票
1 回答
750 浏览

c# - C# Azure MediaServices 上传文件抛出错误

我正在使用 MVC4 测试项目尝试将文件上传到 Azure 媒体服务。

我可以很好地创建我的 CloudMediaContext。我还可以创建一个 IAsset,并在其中创建一个 IAssetFile。 但是,当我尝试向其上传新文件时,出现以下异常:

我不确定错误是否存在于 MVC4 中,因为无法从其自己的目录上传文件?根据错误,我缺少一些引用或程序集,但我唯一添加的是 Azure.MediaServices 的 NuGet 包,它安装了 Azure MediaServices .NET SDK ...

这是上传的 HomeController 代码:

这是我的 MediaServices 课程(做这项工作)

0 投票
1 回答
5878 浏览

ffmpeg - FFmpeg 用于使用 URL 进行文件转换

我需要从 MP4 转换为 AVI。MP4 视频在窗口 azure blob 存储中上传,并且可以公开访问存储。当我们编写 ffmpeg 命令行时我的问题。我可以提供 blob 存储上的视频的网址吗

ffmpeg -i https://abcd.blob.core.windows.net/container/1.mp4 D:\Shared\1.avi

0 投票
3 回答
1007 浏览

asp.net - 对 Azure 媒体服务中的 2 个作业任务使用相同的输出资产

我在上传后使用 Windows Azure 媒体服务进行视频处理。我的基本工作流程包括将文件上传到 WAMS 资产、创建作业、创建 2 个任务 - 第一个从视频创建缩略图,第二个将其编码为 HTML5。目前,一切都很好,但是我不得不为各个任务创建 2 个不同的输出资产容器。作业完成后,我将文件(缩略图)复制到视频资产,并删除缩略图资产,以便所有生成的文件都在同一个资产中。

这是可行的,但感觉很笨拙,并且会产生一些复制文件的开销,然后删除不必要的资产。有没有办法告诉编码任务使用缩略图任务的输出资产?

0 投票
1 回答
664 浏览

azure - 将块 Blob 发送到 Windows Media Services 上传 URL

我正在尝试创建一个使用 Windows Media Services REST API 上传视频文件并对其进行转码的应用程序。一切正常,但我遇到了一种情况,我无法上传 160 MB 的视频文件而不知道为什么。以常规方式调试上传过程非常痛苦,因为上传 160 MB 文件需要很长时间,所以我决定在这里问我的问题:

  1. 我知道单个文件大小(最大为 64 MB)的 Azure 存储限制。将文件上传到 Windows Media Services 是否也有这样的限制?我需要以 4 MB 的块发送该文件吗?

  2. 如果是这样,实际上如何使用 REST API 做到这一点?我可以将分块文件发送到常规存储帐户,但是对于 WMS,情况有所不同。基本上,在处理 WMS 时,我需要将我的文件(或文件块)上传到特定的临时 url,我不确定如何将它与块结合并设置块 id 等。我也找不到任何信息关于互联网上的那个。

提前感谢您的任何建议!