Question

All,

I am new to azure media services and generally media programming, so might be a foolish question.

I have requirement to upload videos from clients and stream them for Android (immediate) and iOS (later). Now we choose azure media services for this and wen through zillions of posts to find the best encoding for Android - multitude of devices. I figured that H.264 Baseline profile, even though is not of top notch quality, it will do just fine. Our customers will watch videos in low cost android tablets, so i guess I am good there.

Ref: http://social.msdn.microsoft.com/Forums/en-US/MediaServices/thread/95ec8895-4a73-4a0c-8505-3ca5d8bbe13e

Now, if the above makes sense, I could not see a "Task Preset" here http://msdn.microsoft.com/en-us/library/windowsazure/jj129582.aspx#H264Encoding targetting the baseline profile.

Per http://msdn.microsoft.com/en-us/library/azure/dn535852.aspx Azure supports Baseline profile, but what is the "TASK PRESET" for Base profile so that i can programmatically create a job?

Please help

Cheers

Was it helpful?

Solution

The forum post you reference is a very old one from the early preview days of Azure Media Services. The Task Preset mentioned there is no longer available. From what I can see in the rest of documentation is that H.264 Baseline profile is supported, but currently there is no Task Preset that would encode input video to a H.264 Baseline. The H.264 codec presets include High and Main profiles.

You correctly see that currently there is no single task preset that targets Baseline profile.

But Windows Azure Media services is a hidden beast! I've written an article that with Azure Media Services, something that is not documented and not officially supported - Clip or Trim your video files.

Your challenge is a bit interesting since it appears to have been supported before, but dropped out after GA. Follow my blog as I might come up with a "Task Preset" for your needs soon!

UPDATE

You can create H.264 Baseline profile videos by using a custom task preset. User this XML String as task preset with Windows Azure Media Encoder:

<?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>

Check out this blog post for further information.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top