H264 encoder – gst-plugin-cedar

The support from the linux-sunxi community for the Allwinner Chips is quite impressive – because 720p50 Video is producing a lot of data it is good to have a working encoder solution available, while debugging our V4L2 – Kernel Module.

Adding support for compressing Video to h264 on the Allwinner A10/A20 is as easy as the following steps – which are copy and pasted from n8body’s Blog which relies on the gst-plugin-cedar. We are compiling the plugin directly on the target Hardware.

1. get gst-plugin-cedar Source


$ git clone https://github.com/ebutera/gst-plugin-cedar

2. get tools needed for building


$ sudo apt-get install gstreamer0.10-tools libgstreamer0.10-dev libgstreamer-plugins-base0.10-dev

3. compile the code


$ ./autogen.sh && make

4. place the plugins in the appropriate directory (/usr/lib/arm-linux-gnueabihf/gstreamer-0.10/)

One question that still bothers me is if gst-plugin-cedar is using the full capabilities of Allwinners H.264 Hardware-Encoder or if its only supporting I-Frames – because the Wiki from linux-sunxi.org is showing a Proof of Concept Status for this binary blob free encoder. sure this can be determined very quickly by looking at the statistics of a encoded file.

Happy Holidays btw.

Update:

I just verified that the current gst-plugin-cedar only produces I-Frames. This can be done using ffprobe from the ffmpeg project.


$ ffprobe -show_frames ~/test.mkv

which shows the detail of all frames inside the video. All frames where flaged at keyframes which is synonymous to I-Frames.

Advertisements

2 comments

  1. oggstreamer

    Not yet – as far as I found out – there is one mailing list entry where somebody is acutally asking the author what it would take to make the gst-1.0 port …

    Also I hope that there will be some contact to people from the linux-sunxi circle who are familiar with the Cedar HW-Encoder as the gst-plugin currently only supports I-Frames – to be really useful also the P-Frames would be desireable …

    Like

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s