[gst-devel] ffenc_h264 plug-in ???

Felipe Contreras felipe.contreras at gmail.com
Sat Oct 25 18:48:46 CEST 2008


On Sun, Oct 5, 2008 at 12:02 AM, Felipe Contreras
<felipe.contreras at gmail.com> wrote:
> On Tue, Sep 30, 2008 at 9:15 AM, Edward Hervey <bilboed at gmail.com> wrote:
>> On Mon, 2008-09-29 at 21:21 -0300, Alexandre wrote:
>>> On Mon, Sep 29, 2008 at 1:19 PM, Edward Hervey <bilboed at gmail.com>
>>> wrote:
>>>         On Mon, 2008-09-29 at 17:49 +0200, Wim Taymans wrote:
>>>         > On Mon, 2008-09-29 at 20:29 +0530, Irfan Shaikh wrote:
>>>         > >
>>>         > >
>>>         > > Hi All,
>>>         > >
>>>         > >       Can any one please tell me in which package can i
>>>         find ffmpeg's
>>>         > > H264 encoder plug-in ffenc_h264.
>>>         >
>>>         > Are you making up element names? That element does not exist
>>>         and neither
>>>         > does the 'ffmpeg h264 encoder'.
>>>
>>>
>>>          Indeed. I'm guessing he means the h264 encoder used by ffmpeg
>>>         ergo...
>>>         x264. And for that we have a plugin : x264enc.
>>>
>>> Or he meant ffenc_h264 or ffdec_h264, both of which can be found in
>>> the ffmpeg plugin.
>>
>>  If you have ffenc_h264 on your distro, that means they're using the
>> system wide ffmpeg, most likely compiled with everything-under-the-sun
>> support (which includes x264).
>>
>>  So instead of only having one level of abstraction for using x264
>> (gstplugin-x264enc <=> x264), you have two (gstffmpeg <=>
>> libavcodec(ffmpeg) <=> x264). Bad for efficiency.
>>
>>  Oh, and as you might know.. we don't support gst-ffmpeg built with
>> system-wide ffmpeg.
>>
>>  Just use x264enc, please.
>
> So you advocate an element that doesn't work properly vs one that
> does, just because it's a GStreamer direct wrapper?
>
> x264enc is in gst-plugins-bad, which suggests it needs work.
>
> By default the output of x264enc looks horrible, I looked at the code
> and it turns out the bitrate is assumed in kbit/s when in fact the
> param is in bit/s. That wouldn't be a big problem if there wasn't an
> artificial limit of 100 * 1024, which means you can't get more than
> 102.4 kbit/s.
>
> I suggest to do the practical thing and use ffenc_libx264. I've
> started an x264enc from scratch, if someone is interested, but it will
> take time.

If somebody wants to try it:
git clone git://github.com/felipec/libomxil-g.git
git checkout -b gst origin/gst
make

No properties are handled right now, but x264's defaults work pretty
well (q 10).

-- 
Felipe Contreras




More information about the gstreamer-devel mailing list