[FFmpeg-trac] #5357(undetermined:open): support for options of VideoToolbox H.264 Encoder

FFmpeg trac at avcodec.org
Thu May 5 15:51:43 CEST 2016


#5357: support for options of VideoToolbox H.264 Encoder
-------------------------------------+-------------------------------------
             Reporter:  ponpon       |                    Owner:  kernrj
                 Type:  defect       |                   Status:  open
             Priority:  normal       |                Component:
              Version:  unspecified  |  undetermined
             Keywords:               |               Resolution:
             Blocking:               |               Blocked By:
Analyzed by developer:  0            |  Reproduced by developer:  0
-------------------------------------+-------------------------------------
Changes (by kernrj):

 * owner:   => kernrj
 * status:  new => open


Comment:

 '''Several of these can be used now'''
 `kVTCompressionPropertyKey_PixelAspectRatio`
 The pixel aspect ratio (PAR) is set when the display aspect ratio (DAR) is
 set on the command line using `-aspect` (PAR and DAR are related - the DAR
 set on the command line will generate the correct PAR in the output).
 This can also be set using AVCodecContext.sample_aspect_ratio with the API
 .

 `kVTCompressionPropertyKey_H264EntropyMode`
 Entropy coding can be set with `-coder` to `cabac` or `cavlc` (`ac` or
 `vlc` for short).

 `kVTCompressionPropertyKey_MoreFramesBeforeStart`
 `kVTCompressionPropertyKey_MoreFramesAfterEnd`
 These are hints that other frames will be concatenated before or after the
 current session's frames. They can be set with `-frames_before 1` and
 `-frames_after 1`. Not all devices support these concatenation flags -
 they will be ignored when not supported.

 `kVTCompressionPropertyKey_RealTime`
 Set with `-realtime 1`. This is a hint that real-time encoding is more
 important than quality.

 `kVTCompressionPropertyKey_ColorPrimaries`
 `kVTCompressionPropertyKey_TransferFunction`
 `kVTCompressionPropertyKey_YCbCrMatrix`
 Colorimetry info is used when available. They can be set using the API.

 '''Some parameters won't be added'''
 `kVTCompressionPropertyKey_Quality`
 This isn't supported with H.264. It's normally used for JPEG encoding.

 `kVTCompressionPropertyKey_AllowTemporalCompression`
 Setting this to false disables P and B-frames, which can be achieved by
 setting the gop size to 1 (`-g 1`)

 `kVTCompressionPropertyKey_UsingHardwareAcceleratedVideoEncoder`
 This is an output parameter that's true when hardware encoding will be
 used, but this isn't directly exposed. Encoding will fail if hardware
 encoding is not supported. If you want to allow software encoding, use
 `-allow_sw 1`. Hardware will always be used when available, even if
 software encoding is allowed.

 The rest of these settings will be added in a future patch.

--
Ticket URL: <https://trac.ffmpeg.org/ticket/5357#comment:1>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker


More information about the FFmpeg-trac mailing list