[Bug 796716] encoding: Add an ih264enc to unify H264 video encoder APIs

GStreamer (GNOME Bugzilla) bugzilla at gnome.org
Thu Jun 28 19:49:17 UTC 2018


https://bugzilla.gnome.org/show_bug.cgi?id=796716

--- Comment #1 from Thibault Saunier <tsaunier at gnome.org> ---
Created attachment 372868
  --> https://bugzilla.gnome.org/attachment.cgi?id=372868&action=edit
encoding: Add an ih264enc to unify H264 video encoder APIs

This introduces two different components:

- A GstH264EncoderInterface aiming at offering a common API for
  encoders that support it. It only exposes vmethod and no properties
  as the goal is to not break the current behaviour of the already
  exposed properties. For example, h264 encoders already expose a
  "bitrate" property but some expose it in bits per seconds and others
  in kbits per second, we can't change that. Also the default values
  for those properties are different but we want them to be all equal
  when harmonizing the properties for a particular codec. This interface
  is not meant to be used directly but only through the ih264enc
  element.

- A GstIH264Enc wrapper which exposes the common properties and make use
  of the new GstH264EncoderInterface in order to set them with a same
  semantic and default values.

In the end, the user should use the ih264enc wrapper and set properties
on it and expect that the behaviour of those is identical whatever
encoder is selected.

Currently only a "bitrate" property is exposed and the goal is to
harmonize APIs step by step.

A GstIVideoEnc baseclass is also introduced so that it is simpler
to add more API harmonizing elements in the future.

This is all introduced in -base as the interface needs to be implemented
in the various h264 encoders that are in many different places.

-- 
You are receiving this mail because:
You are the QA Contact for the bug.
You are the assignee for the bug.


More information about the gstreamer-bugs mailing list