i.mx 6s H264 encoding

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

i.mx 6s H264 encoding

Jump to solution
8,423 Views
cmolson
Contributor II

Hi,

I was wondering if freescale provides (or plans to) h264 encoding software for the imx6 series processors. I am developing an application to stream video from a 2MP cmos sensor. We have been looking at using something like the TI DM365, but the i.mx6 really impresses me.

If there is code available, what would the best development kit be? I suppose we could use the SABRE Lite, even though we don't need the quad core functionality.

Thanks!

Labels (2)
1 Solution
2,104 Views
LaurenPost
NXP Employee
NXP Employee

H.264 encoding is supported in hardware on the other platforms through our VPU processor (Dual Quad and Dual Lite).   It is unlikely that software encoders for the solo will be provided for the solo platform by Freescale.

As for other code to use, ffmpeg is one option although it has not been tested for its encoder use on Freescale platforms.

View solution in original post

0 Kudos
12 Replies
2,105 Views
LaurenPost
NXP Employee
NXP Employee

H.264 encoding is supported in hardware on the other platforms through our VPU processor (Dual Quad and Dual Lite).   It is unlikely that software encoders for the solo will be provided for the solo platform by Freescale.

As for other code to use, ffmpeg is one option although it has not been tested for its encoder use on Freescale platforms.

0 Kudos
2,104 Views
cmolson
Contributor II

Thank you for the response Lauren. Is the encoder that different between the imx6s and imx6d? I see that from the product page the imx6s supports hardware encode/decode, would the VPU documentation be available for us to write our own software for it?

Thanks!

0 Kudos
2,104 Views
LaurenPost
NXP Employee
NXP Employee

You did not state which OS - Linux or Android.   The VPU has frameworks already in place with Gstreamer on Linux and OpenMAX on Android which already interface with the VPU hardware.   You can write applications that interface to these applications.  On Linux, there is unit test code provided you can interface directly to the vpu library.

0 Kudos
2,104 Views
MustafaMunir
Contributor II

Hi Lauren,

We want to use H.264 encoder on android on Sabre Table. Is there any example/unit test code which shows how one should use freescale openmax implementation directly in an application.

Secondly, a libstagefrighthw is loaeded in stagefright, does that make freescale hardware encoders available through stagefright ?

Thanks & Regards,

Mustafa

0 Kudos
2,104 Views
LaurenPost
NXP Employee
NXP Employee

In the Android releases fsl_imx_omx source is now released starting with i.MX6 in R13.4.  In the directory under OpenMAXIL/test there are several examples.

On ICS, there is the NuPlayer under the frameworks/base/libmediaplayerservice which shows examples. 

FSL VPU H.264 encode has been integrated through stagefright under codecs/avc.

0 Kudos
2,104 Views
MustafaMunir
Contributor II

Thanks Lauren,

I have quickly looked at code in codecs/avc. In AVCEncoder.cpp following is a log message.

                          LOGV("Construct software AVCEncoder");

I think VPU is hardware based encoder, from above comment it seems as if codecs/avc is a software encoder. Can you please confirm that basically I have misunderstood the above message? Please note that I am looking at FSL BSP 10.3.2 (android 2.3.3) for IMX53 based sabre tablet.

Thanks once again.

Regards,

Mustafa

0 Kudos
2,104 Views
LaurenPost
NXP Employee
NXP Employee

Sorry I had the directory wrong.  Looking on FSL R10.4  (sorry don't have R10.3.2), the vpu encoder is in the codecs/vpu/enc directory.

Also since you are on Gingerbread, the FSL openmax code was not released for pre-ICS releases so my answer above was for ICS on iMX6 releases.  

0 Kudos
2,104 Views
MustafaMunir
Contributor II

Thanks Lauren,

One more question, Can you please tell me any link from where I can get R13.4 which includes samples for OpenMAX. I have tried really hard to find it on Freescale site, I might be looking at a wrong place.

Thanks again.

Regards,

Mustafa

0 Kudos
2,104 Views
LaurenPost
NXP Employee
NXP Employee

On freescale.com/imx  i.MX6 software BSP packages have not been released yet but should be available very soon.

0 Kudos
2,104 Views
LaurenPost
NXP Employee
NXP Employee

It just got uploaded today - go to i.MX6Q Product Summary Page  

Look for IMX6_R13.4_ANDROID_SOURCE_CODE package under Board Support Packages under Software

0 Kudos
2,104 Views
MustafaMunir
Contributor II

Lauren, Thanks for the information :smileyhappy:.

Regards,

Mustafa

0 Kudos
2,103 Views
cmolson
Contributor II

We are planning on running Linux. Okay I think I understand a bit better now. We are familiar with gstreamer and are currently using that for another application.

I appreciate your help!

Christian

0 Kudos