Encode App For Maccleverwars



-->

The Microsoft Media Foundation AAC encoder is a Media Foundation Transform that encodes Advanced Audio Coding (AAC) Low Complexity (LC) profile, as defined by ISO/IEC 13818-7 (MPEG-2 Audio Part 7) .

The Encyclopedia of DNA Elements (ENCODE) Consortium is an international collaboration of research groups funded by the National Human Genome Research Institute.The goal of ENCODE is to build a comprehensive parts list of functional elements in the human genome, including elements that act at the protein and RNA levels, and regulatory elements that control cells and circumstances in which a.

All you need is a (free) AppleID and then you can download it from the Mac App Store found in macOS: Apple Menu App Store. The latest version as of this writing is 8.3.3 and is designed to work. Encode is a educational App, where people can learn coding. The color of this App is system-oriented and the layout is simple and clear. The first page mainly consists of list and one can make such a list quickly with Repeater in Mockplus. Besides, it is a long page so people can view more information by swiping the screen. Miro Video Converter is a free mac video encoder and converter, it has pretty intuitive interface, you can easily know how to handle it as soon as launch the app. It's a basic freeware option that works well for a variety of formats and devices, such as MP4, H.264, MPEG4, AVI, FLV, iPhone 7/7 Plus, iPad Pro, Samsung, HTC etc.

The AAC encoder does not support encoding to any other AAC profiles, such as Main, SSR, or LTP.

Class Identifier

The class identifier (CLSID) of the AAC encoder is CLSID_AACMFTEncoder, defined in the header file wmcodecdsp.h.

Media Types

The AAC encoder supports the following media types. You can set the types in either order input type first, or output type first.

Input Types

Set the following attributes on the input media type.

Encode App Website

App
AttributeDescriptionRemarks
MF_MT_MAJOR_TYPEMajor type.Must be MFMediaType_Audio.
MF_MT_SUBTYPESubtype.Must be MFAudioFormat_PCM.
MF_MT_AUDIO_BITS_PER_SAMPLEBits per sample.Must be 16.
MF_MT_AUDIO_SAMPLES_PER_SECONDSamples per second.The following values are supported:
  • 44100 (44.1 KHz)
  • 48000 (48 KHz)
MF_MT_AUDIO_NUM_CHANNELSNumber of channels.Must be 1 (mono) or 2 (stereo), or 6 (5.1).
[!Note]
Support for 6 audio channels was introduced with Windows 10 and is not available for earlier versions of Windows.

After the input type is set, the encoder derives the following values and adds them to the media type:

Output Types

Set the following attributes on the output media type.

AttributeDescriptionRemarks
MF_MT_MAJOR_TYPEMajor type.Must be MFMediaType_Audio.
MF_MT_SUBTYPEAudio subtype.Must be MFAudioFormat_AAC.
MF_MT_AUDIO_BITS_PER_SAMPLEBits per sample.Must be 16.
MF_MT_AUDIO_SAMPLES_PER_SECONDSamples per second.Must match the input type.
MF_MT_AUDIO_NUM_CHANNELSNumber of channels.Must match the input type.
MF_MT_AUDIO_AVG_BYTES_PER_SECONDBit rate of the encoded AAC stream, in bytes per second.The following values are supported:
  • 12000
  • 16000
  • 20000
  • 24000
The default value for both mono and stereo is 12000 (96 Kbps).
MF_MT_AAC_PAYLOAD_TYPEThe AAC payload type.Optional. If set, the value must be zero, indicating that the stream contains raw_data_block elements only.
Optional. If the attribute is not set, the default value is zero, indicating that the stream contains raw_data_block elements only (raw AAC).
In Windows 7, if this attribute is set, the value must be zero.
Starting in Windows 8, the value can be 0 (raw AAC) or 1 (ADTS AAC).
MF_MT_AAC_AUDIO_PROFILE_LEVEL_INDICATIONThe AAC audio profile and level.Optional. The following values are supported:
  • 0x29 (default)
  • 0x2A
  • 0x2B
  • 0x2C
  • 0x2E
  • 0x2F
  • 0x30
  • 0x31
  • 0x32
  • 0x33

The following table lists the values that can be used for the MF_MT_AAC_PROFILE_LEVEL_INDICATION attribute.

MF_MT_AAC_PROFILE_LEVEL_INDICATION valueProfile
0x29AAC Profile L2
0x2AAAC Profile L4
0x2BAAC Profile L5
0x2CHigh Efficiency v1 AAC Profile L2
0x2EHigh Efficiency v1 AAC Profile L4
0x2FHigh Efficiency v1 AAC Profile L5
0x30High Efficiency v2 AAC Profile L2
0x31High Efficiency v2 AAC Profile L3
0x32High Efficiency v2 AAC Profile L4
0x33High Efficiency v2 AAC Profile L5

After the output type is set, the AAC encoder updates the type by adding the MF_MT_USER_DATA attribute. This attribute contains the portion of the HEAACWAVEINFO structure that appears after the WAVEFORMATEX structure (that is, after the wfx member). This is followed by the AudioSpecificConfig() data, as defined by ISO/IEC 14496-3.

Each output sample contains one compressed AAC frame with no header. This format is equivalent to the raw_data_block() element defined by MPEG-2. The MF_MT_AAC_PAYLOAD_TYPE attribute, if present in the output type, must be set to zero to indicate this payload type.

Each output sample contains one compressed AAC frame corresponding to 1024 PCM samples. For example, at 48 Khz sampling rate, the duration of one compressed frame is 21.33 msec.

If MF_MT_AAC_PAYLOAD_TYPE is zero (the default value), each output sample contains one raw_data_block() element as defined by ISO/IEC 13818-7.

Example Media Types

Here is an example of the media types needed to encode from 44.1-kHz, 160-Kbps stereo audio to raw AAC

Input media type:

AttributeValue
MF_MT_MAJOR_TYPEMFMediaType_Audio
MF_MT_SUBTYPEMFAudioFormat_PCM
MF_MT_AUDIO_BITS_PER_SAMPLE16
MF_MT_AUDIO_SAMPLES_PER_SECOND44100
MF_MT_AUDIO_NUM_CHANNELS2
MF_MT_AUDIO_AVG_BYTES_PER_SECOND176400 (optional)
MF_MT_AUDIO_BLOCK_ALIGNMENT4 (optional)
MF_MT_ALL_SAMPLES_INDEPENDENT1 (optional)
MF_MT_AVG_BITRATE1411200 (optional)
MF_MT_FIXED_SIZE_SAMPLES1 (optional)
Encode App For Maccleverwars

Output media type:

AttributeValue
MF_MT_MAJOR_TYPEMFMediaType_Audio
MF_MT_SUBTYPEMFAudioFormat_AAC
MF_MT_AUDIO_BITS_PER_SAMPLE16
MF_MT_AUDIO_SAMPLES_PER_SECOND44100
MF_MT_AUDIO_NUM_CHANNELS2
MF_MT_AUDIO_AVG_BYTES_PER_SECOND20000
MF_MT_AAC_PAYLOAD_TYPE0 (optional)
MF_MT_AAC_AUDIO_PROFILE_LEVEL_INDICATION0x29 (optional)
MF_MT_AUDIO_BLOCK_ALIGNMENT1 (optional)
MF_MT_ALL_SAMPLES_INDEPENDENT0 (optional)
MF_MT_AVG_BITRATE160000 (optional)
MF_MT_USER_DATA{0x00, 0x00, 0x29, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x12, 0x10} (optional)

Encode App

Remarks

In the current implementation, every input sample must have a valid time and duration. To set the sample time, call IMFSample::SetSampleTime. To set the sample duration, call IMFSample::SetSampleDuration.

If the sample time is not set, the encoder's IMFTransform::ProcessInput method returns MF_E_NO_SAMPLE_TIMESTAMP. If the sample duration is not set, the ProcessInput method returns MF_E_NO_SAMPLE_DURATION.

Sample duration can be calculated as follows:

where nAudioSamplesPerChannel is the number of PCM audio samples per channel in the input buffer, and nSamplesPerSec is the sampling rate, in samples per second.

Note

Due to a bug in the current implementation, if the sample duration is set to zero, the ProcessInput call succeeds, but a subsequent call to IMFTransform::ProcessOutput will throw a divide-by-zero exception. To avoid this error, set a valid nonzero duration on each input sample.

Requirements

Website
RequirementValue
Minimum supported client
Windows 7 [desktop apps only]
Minimum supported server
Windows Server 2008 R2 [desktop apps only]
DLL
Mfaacenc.dll

See also