Windows Azure 媒体编码 - 不正确...编码过程中的错误...值必须是 64 到 1280 之间的偶数以及 4 的倍数
Windows Azure Media Encoding - incorrect... errors during the encode process.. value must be an even number between 64 and 1280 and a multiple of 4
我们一直在调查纵向 iOS 视频无法通过 Azure 媒体编码服务进行编码的问题。有什么解决方法吗?
错误发生在视频为 720 宽和 1280 高,没有任何旋转元数据的情况下。
Windows Azure Media Encoder ran into errors during the encode process
on source Invalid Width specified. The value must be an even number
between 64 and 1280 and a multiple of 4.
具有 1280 宽和 720 高旋转 90 度元数据的类似视频编码没有问题。
我们尝试了不同的 xml 预设值,认为视频处理不正确。
<Presets Rotation="Auto">
<Preset
Version="5.0">
查看这些视频的来源后,我们确定这些是从 Snapchat 制作的 mp4 视频,并添加了一些效果。没有效果的视频看起来很好。因此 Snapchat 正在以某种方式破坏它们。
因此,我们认为上面提供的错误是错误的,实际错误,即视频的其他一些问题,正在被这个维度错误处理程序捕获。
能为用户提供一个有用的错误就好了。其实说尺寸不对还是很有用的,因为其他这个尺寸的视频都可以。
首先,您使用的是已弃用的媒体处理器 "Windows Azure Media Encoder"(解释不正确的错误消息)。该组件将在日历年结束前从生产部署中删除。
请更新您的代码以使用 "Media Encoder Standard" - 请参阅 this 页面和相关文档。
其次,如果输入的MP4不包含旋转元数据,你知道哪些视频是纵向拍摄的,哪些是横向拍摄的吗?以下说明将有助于您确定它们处于纵向模式的 MP4 - 如果视频处于横向模式,相同的编码器设置将产生意想不到的结果。
媒体编码器标准中的强制旋转
下面是修改后的 JSON 预设,它将强制编码器对输入视频应用 90 度旋转,并生成两层,一层为 720x1280,另一层为 360x640。当然,您可以对其进行编辑以添加其他图层。请注意两个自定义设置的使用,"Rotation" 和 "StretchMode"。您可以将 JSON 保存到本地文件并在 PC 上使用指令 here to submit an encoding Task. Alternatively, you can download and use http://aka.ms/amse。
{
"Version": 1.0,
"Sources": [
{
"Streams": [],
"Filters": {
"Rotation": "90"
}
}
],
"Codecs": [
{
"KeyFrameInterval": "00:00:02",
"StretchMode" : "None",
"H264Layers": [
{
"Profile": "Auto",
"Level": "auto",
"Bitrate": 3400,
"MaxBitrate": 3400,
"BufferWindow": "00:00:05",
"Width": 720,
"Height": 1280,
"BFrames": 3,
"ReferenceFrames": 3,
"AdaptiveBFrame": true,
"Type": "H264Layer",
"FrameRate": "0/1"
},
{
"Profile": "Auto",
"Level": "auto",
"Bitrate": 650,
"MaxBitrate": 650,
"BufferWindow": "00:00:05",
"Width": 360,
"Height": 640,
"BFrames": 3,
"ReferenceFrames": 3,
"AdaptiveBFrame": true,
"Type": "H264Layer",
"FrameRate": "0/1"
}
],
"Type": "H264Video"
},
{
"Profile": "AACLC",
"Channels": 2,
"SamplingRate": 48000,
"Bitrate": 128,
"Type": "AACAudio"
}
],
"Outputs": [
{
"FileName": "{Basename}_{Resolution}.mp4",
"Format": {
"Type": "MP4Format"
}
}
]
}
好奇 - Jules,你是怎么找到使用 "Windows Azure Media Encoder" 的代码的?我们假设它已从我们的大部分示例代码中删除。我很想知道您在哪里在线找到该字符串,以便我们将其删除。
我们一直在调查纵向 iOS 视频无法通过 Azure 媒体编码服务进行编码的问题。有什么解决方法吗?
错误发生在视频为 720 宽和 1280 高,没有任何旋转元数据的情况下。
Windows Azure Media Encoder ran into errors during the encode process on source Invalid Width specified. The value must be an even number between 64 and 1280 and a multiple of 4.
具有 1280 宽和 720 高旋转 90 度元数据的类似视频编码没有问题。
我们尝试了不同的 xml 预设值,认为视频处理不正确。
<Presets Rotation="Auto">
<Preset
Version="5.0">
查看这些视频的来源后,我们确定这些是从 Snapchat 制作的 mp4 视频,并添加了一些效果。没有效果的视频看起来很好。因此 Snapchat 正在以某种方式破坏它们。
因此,我们认为上面提供的错误是错误的,实际错误,即视频的其他一些问题,正在被这个维度错误处理程序捕获。
能为用户提供一个有用的错误就好了。其实说尺寸不对还是很有用的,因为其他这个尺寸的视频都可以。
首先,您使用的是已弃用的媒体处理器 "Windows Azure Media Encoder"(解释不正确的错误消息)。该组件将在日历年结束前从生产部署中删除。
请更新您的代码以使用 "Media Encoder Standard" - 请参阅 this 页面和相关文档。
其次,如果输入的MP4不包含旋转元数据,你知道哪些视频是纵向拍摄的,哪些是横向拍摄的吗?以下说明将有助于您确定它们处于纵向模式的 MP4 - 如果视频处于横向模式,相同的编码器设置将产生意想不到的结果。
媒体编码器标准中的强制旋转 下面是修改后的 JSON 预设,它将强制编码器对输入视频应用 90 度旋转,并生成两层,一层为 720x1280,另一层为 360x640。当然,您可以对其进行编辑以添加其他图层。请注意两个自定义设置的使用,"Rotation" 和 "StretchMode"。您可以将 JSON 保存到本地文件并在 PC 上使用指令 here to submit an encoding Task. Alternatively, you can download and use http://aka.ms/amse。
{
"Version": 1.0,
"Sources": [
{
"Streams": [],
"Filters": {
"Rotation": "90"
}
}
],
"Codecs": [
{
"KeyFrameInterval": "00:00:02",
"StretchMode" : "None",
"H264Layers": [
{
"Profile": "Auto",
"Level": "auto",
"Bitrate": 3400,
"MaxBitrate": 3400,
"BufferWindow": "00:00:05",
"Width": 720,
"Height": 1280,
"BFrames": 3,
"ReferenceFrames": 3,
"AdaptiveBFrame": true,
"Type": "H264Layer",
"FrameRate": "0/1"
},
{
"Profile": "Auto",
"Level": "auto",
"Bitrate": 650,
"MaxBitrate": 650,
"BufferWindow": "00:00:05",
"Width": 360,
"Height": 640,
"BFrames": 3,
"ReferenceFrames": 3,
"AdaptiveBFrame": true,
"Type": "H264Layer",
"FrameRate": "0/1"
}
],
"Type": "H264Video"
},
{
"Profile": "AACLC",
"Channels": 2,
"SamplingRate": 48000,
"Bitrate": 128,
"Type": "AACAudio"
}
],
"Outputs": [
{
"FileName": "{Basename}_{Resolution}.mp4",
"Format": {
"Type": "MP4Format"
}
}
]
}
好奇 - Jules,你是怎么找到使用 "Windows Azure Media Encoder" 的代码的?我们假设它已从我们的大部分示例代码中删除。我很想知道您在哪里在线找到该字符串,以便我们将其删除。