
The higher compression efficiency of HEVC will enable efficient recording and distribution of Ultra High Definition (UHD, 4K, 2160P) video. The higher compression efficiency also means that for a given bit rate or file size, HEVC encodes video with significantly higher quality than AVC. HEVC is able to compress video up to twice as efficiently as AVC, letting you encode a video in a file that is about half the size of AVC at the same quality level. High-Efficiency Video Coding (HEVC, or H.265) is the latest video compression standard developed by the Motion Picture Experts Group (MPEG), finalized in 2013. The following is the set of required and optional ICodecAPI properties for encoders to pass the HCK encoder certification.Until recently, if you recorded a video with your mobile phone or watched a video on the web, it was most likely encoded with the Advanced Video Coding (AVC) standard. This standard, also known as H.264, was developed in 2003 and it started to become widespread in 2008 after leading platforms like Adobe Flash and Blu-ray Disc adopted it for High Definition Video. The certification process should guarantee that the required properties are properly supported and, if an optional property is supported, that it is also properly supported. Certified encoders are required to support a certain set of ICodecAPI properties and can optionally support another set of properties. If a certified hardware encoder is present, it will generally be used instead of the inbox system encoder for Media Foundation related scenarios. If the specified value is odd then the next lower even value will be used. The number of threads must be an even value. The size of a tile must bigger than or equal to 265圆4 pixels. The number of threads must be less than or equal to the number of logical processors. The encoder will divide the frame into tiles such that the number of threads equals the number of tiles. Sets the number of threads used to perform the compression operation. Sets whether the content is full-screen video, as opposed to screen content that might have a smaller window of video or have no video at all. This property will set a limit on the maximum QP that the encoder can use during CBR ratecontrol. This property will set a limit on the minimum QP that the encoder can use during CBR ratecontrol. When this property is set it will cause the encoder to use the specified QP to encode the next frame and all subsequent frames until a new QP is specified.
#H.265 hevc codec download code
This is a VT_UI4 value.įorces the encoder to code the next frame as a key frame. Internally, this value is mapped to a smaller set of quality/speed levels supported by the encoder. At higher complexity levels, the encoder runs more slowly but produces better quality at the same bit rate. This value affects how the encoder performs various encoding operations, such as motion compensation. This is a VT_UI4 value.Įnables or disables low-latency mode. If zero, the encoder selects the GOP size.

Sets the number of pictures from one GOP header to the next, including the leading anchor but not the following one. Sets the maximum bitrate for rate control modes that allow a peak bitrate. Sets the buffer size, in bytes, for constant bit rate (CBR) encoding. Sets the average bit rate for the encoded bit stream, in bits per second. If other modes are specified, the eAVEncCommonRateControlMode_CBR rate control will be used. It supports the following properties.įor the codec requirements for HCK encoder certification, see the Certified Hardware Encoder section below. The H.265 encoder implements the ICodecAPI interface for setting encoding parameters. The following methods of the ICodecAPI interface are supported for the H.265/HEVC encoder:Īll other ICodecAPI methods will return the error E_NOTIMPL. The following methods of the IMFTransform interface are supported for the H.265/HEVC encoder:Īll other IMFTransform methods will return the error E_NOTIMPL. This attribute contains the sequence header. The default value is 1:1.Īfter the output type is set, the video encoder updates the type by adding the MF_MT_MPEG_SEQUENCE_HEADER attribute. For more information about profile and level constraints, refer to Annex A of ITU-T H.265. Must be MFVideoFormat_HEVC.Īverage encoded bit rate, in bits per second.

Set the following attributes on the output media type. The encoder supports a single output subtype: Until the output type is set, the encoder's IMFTransform::SetInputType method returns MF_E_TRANSFORM_TYPE_NOT_SET.

The output type must be set before the input type. The input media type must have one of the following subtypes:įor more information about these subtypes, see Video Subtype GUIDs. The H.265 video encoder exposes the following interfaces: The encoder supports the following profiles: The Media Foundation H.265 video encoder is a Media Foundation Transform that supports encoding content into the H.265/HEVC format.
