[Bug 785712] New: FEI: Implement VAEntryPointFEI based h264 encoder

GStreamer (GNOME Bugzilla) bugzilla at gnome.org
Wed Aug 2 00:43:35 UTC 2017


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

            Bug ID: 785712
           Summary: FEI: Implement VAEntryPointFEI based h264 encoder
    Classification: Platform
           Product: GStreamer
           Version: git master
                OS: Linux
            Status: NEW
          Severity: normal
          Priority: Normal
         Component: gstreamer-vaapi
          Assignee: gstreamer-bugs at lists.freedesktop.org
          Reporter: bsreerenj at gmail.com
        QA Contact: gstreamer-bugs at lists.freedesktop.org
                CC: bsreerenj at gmail.com, vjaquez at igalia.com
     GNOME version: ---

FEI(Flexible Encoding Infrastructure) is an extension to VA API which allows
applications to have more control over different phases of encoding and trade
off quality for speed with their on IPs.

More Details here: https://bugzilla.gnome.org/show_bug.cgi?id=784667

This bug report is to track the development of a new element "vaapih264feienc"
which will be using VAEntryPointFEI for H264 encode.

Why a new element for FEI?:

FEI is useful in very advanced applications. I would say, it makes sense to use
FEI, If we implement an encoder itself(not just the plugin integration) which
is something we haven't experimented with GStreamer yet (I believe).

Example use cases: 
--write custom BitRateControl algorithms,
--tweak/alter the motion vector and macroblock prediction per macroblock basis
for each frame encode.
--analyze the vme distortion and make more intelligent prediction decisions 

Adding all these into existing vaapih264enc will make the code too complicated
and it could be difficult to debug.

Another point is that FEI is still under heavy development and only supported
in Intel SKL platform for now. So better keep a separate code base for the new
encoder and may be in future we can merge with vaapih264encoder(if needed).

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