H 264基线配置文件-Azure媒体服务

H 264基线配置文件-Azure媒体服务,azure,media,azure-media-services,Azure,Media,Azure Media Services,全部, 我不熟悉azure媒体服务和一般的媒体编程,所以这可能是一个愚蠢的问题 我需要从客户端上传视频,并在Android(即时版)和iOS(更高版本)上播放。现在,我们选择azure媒体服务来实现这一点,并通过无数的帖子来寻找Android的最佳编码——大量的设备。我认为H.264基线配置文件,即使不是一流的质量,它也会做得很好。我们的客户将在低成本的安卓平板电脑上观看视频,所以我想我在这方面做得不错 参考: 现在,如果上述内容有意义的话,我在这里看不到针对基线配置文件的“任务预设” Per

全部,

我不熟悉azure媒体服务和一般的媒体编程,所以这可能是一个愚蠢的问题

我需要从客户端上传视频,并在Android(即时版)和iOS(更高版本)上播放。现在,我们选择azure媒体服务来实现这一点,并通过无数的帖子来寻找Android的最佳编码——大量的设备。我认为H.264基线配置文件,即使不是一流的质量,它也会做得很好。我们的客户将在低成本的安卓平板电脑上观看视频,所以我想我在这方面做得不错

参考:

现在,如果上述内容有意义的话,我在这里看不到针对基线配置文件的“任务预设”

Per Azure支持基线配置文件,但基本配置文件的“任务预设”是什么,以便我可以通过编程方式创建作业

请帮忙


干杯

您引用的论坛帖子是Azure Media Services早期预览时发布的一篇非常古老的帖子。此处提到的任务预设不再可用。从文档的其余部分可以看出,支持H.264基线配置文件,但目前没有将输入视频编码为H.264基线的任务预设。H.264编解码器预设包括High和Main配置文件

您可以正确地看到,当前没有针对基线配置文件的单个任务预设

但是WindowsAzure媒体服务是一个隐藏的野兽!我曾写过一篇文章,在Azure Media Services中,有些东西没有文档记录,也没有官方支持

您的挑战有点有趣,因为它以前似乎得到过支持,但在GA之后就退出了。请关注我的博客,因为我可能会很快为您的需求提供一个“任务预设”

更新

您可以使用自定义任务预设创建H.264基线配置文件视频。使用Windows Azure Media Encoder将此XML字符串作为任务预设使用:

<?xml version="1.0" encoding="utf-16"?>
<!--Created with Expression Encoder version 4.0.4276.0-->
<Preset
  Version="4.0">
  <Job />
  <MediaFile
    WindowsMediaProfileLanguage="en-US"
    VideoResizeMode="Letterbox">
    <OutputFormat>
      <MP4OutputFormat
        StreamCompatibility="Standard">
        <VideoProfile>
          <BaselineH264VideoProfile
            RDOptimizationMode="Speed"
            HadamardTransform="False"
            SubBlockMotionSearchMode="Speed"
            MultiReferenceMotionSearchMode="Speed"
            ReferenceBFrames="True"
            AdaptiveBFrames="True"
            SceneChangeDetector="True"
            FastIntraDecisions="False"
            FastInterDecisions="False"
            SubPixelMode="Quarter"
            SliceCount="0"
            KeyFrameDistance="00:00:05"
            InLoopFilter="True"
            MEPartitionLevel="EightByEight"
            ReferenceFrames="4"
            SearchRange="32"
            AutoFit="True"
            Force16Pixels="False"
            FrameRate="0"
            SeparateFilesPerStream="True"
            SmoothStreaming="False"
            NumberOfEncoderThreads="0">
            <Streams
              AutoSize="False"
              FreezeSort="False">
              <StreamInfo>
                <Bitrate>
                  <ConstantBitrate
                    Bitrate="4000"
                    IsTwoPass="False"
                    BufferWindow="00:00:04" />
                </Bitrate>
              </StreamInfo>
            </Streams>
          </BaselineH264VideoProfile>
        </VideoProfile>
        <AudioProfile>
          <AacAudioProfile
            Level="AacLC"
            Codec="AAC"
            Channels="2"
            BitsPerSample="16"
            SamplesPerSecond="44100">
            <Bitrate>
              <ConstantBitrate
                Bitrate="160"
                IsTwoPass="False"
                BufferWindow="00:00:00" />
            </Bitrate>
          </AacAudioProfile>
        </AudioProfile>
      </MP4OutputFormat>
    </OutputFormat>
  </MediaFile>
</Preset>


有关更多信息。

您参考的论坛帖子是Azure Media Services早期预览时发布的一篇非常古老的帖子。此处提到的任务预设不再可用。从文档的其余部分可以看出,支持H.264基线配置文件,但目前没有将输入视频编码为H.264基线的任务预设。H.264编解码器预设包括High和Main配置文件

您可以正确地看到,当前没有针对基线配置文件的单个任务预设

但是WindowsAzure媒体服务是一个隐藏的野兽!我曾写过一篇文章,在Azure Media Services中,有些东西没有文档记录,也没有官方支持

您的挑战有点有趣,因为它以前似乎得到过支持,但在GA之后就退出了。请关注我的博客,因为我可能会很快为您的需求提供一个“任务预设”

更新

您可以使用自定义任务预设创建H.264基线配置文件视频。使用Windows Azure Media Encoder将此XML字符串作为任务预设使用:

<?xml version="1.0" encoding="utf-16"?>
<!--Created with Expression Encoder version 4.0.4276.0-->
<Preset
  Version="4.0">
  <Job />
  <MediaFile
    WindowsMediaProfileLanguage="en-US"
    VideoResizeMode="Letterbox">
    <OutputFormat>
      <MP4OutputFormat
        StreamCompatibility="Standard">
        <VideoProfile>
          <BaselineH264VideoProfile
            RDOptimizationMode="Speed"
            HadamardTransform="False"
            SubBlockMotionSearchMode="Speed"
            MultiReferenceMotionSearchMode="Speed"
            ReferenceBFrames="True"
            AdaptiveBFrames="True"
            SceneChangeDetector="True"
            FastIntraDecisions="False"
            FastInterDecisions="False"
            SubPixelMode="Quarter"
            SliceCount="0"
            KeyFrameDistance="00:00:05"
            InLoopFilter="True"
            MEPartitionLevel="EightByEight"
            ReferenceFrames="4"
            SearchRange="32"
            AutoFit="True"
            Force16Pixels="False"
            FrameRate="0"
            SeparateFilesPerStream="True"
            SmoothStreaming="False"
            NumberOfEncoderThreads="0">
            <Streams
              AutoSize="False"
              FreezeSort="False">
              <StreamInfo>
                <Bitrate>
                  <ConstantBitrate
                    Bitrate="4000"
                    IsTwoPass="False"
                    BufferWindow="00:00:04" />
                </Bitrate>
              </StreamInfo>
            </Streams>
          </BaselineH264VideoProfile>
        </VideoProfile>
        <AudioProfile>
          <AacAudioProfile
            Level="AacLC"
            Codec="AAC"
            Channels="2"
            BitsPerSample="16"
            SamplesPerSecond="44100">
            <Bitrate>
              <ConstantBitrate
                Bitrate="160"
                IsTwoPass="False"
                BufferWindow="00:00:00" />
            </Bitrate>
          </AacAudioProfile>
        </AudioProfile>
      </MP4OutputFormat>
    </OutputFormat>
  </MediaFile>
</Preset>


了解更多信息。

哇,微软有时确实玩得很糟糕。感谢@astaykov的详细回答和更新。你似乎学识渊博。让我在我的Azure实例中尝试一下,然后再回来。我会接受这个答案,因为我确信这会奏效。感谢您抽出宝贵的时间回答。当然,我会像影子一样关注你们的博客,非常有趣的见解。哇,微软有时的确做得很糟糕。感谢@astaykov的详细回答和更新。你似乎学识渊博。让我在我的Azure实例中尝试一下,然后再回来。我会接受这个答案,因为我确信这会奏效。感谢您抽出宝贵的时间回答。当然我会像影子一样关注你的博客,相当有趣的见解。