MPEG4 encoder for ARM Linux?

Jan 14, 2006 13 Replies

Hi All,



Does anyone know of a free MPEG4 encoder library suitable running on an ARM Linux system? My boss wants to see if it's going to be feasible to do this in software and avoid needing an MPEG4 hardware encoder on a new board design. It would be used for webcam video (and audio) encoding.



Thanks, Sean



Build the mplayer suite on your platform. I haven't tried it on ARM but it works perfectly on x86 and 32-bit PPC.

formatting link

I don't think it would encode. By the way, you need at least 500Mhz to decode VGA quality and at least 1G to encode. I haven't seen any ARM over

700Mhz yet.

So don't think - download it and look at the mencode portion, eh?

The OP didn't stipulate realtime nor did s/he stipulate framerate. The request was for a free library that operates on ARM Linux.

If you post the specs of your ARM platform, commercial vendors will be able to tell you what kind of video size and framerate are attainable on that hardware. And if it's workable, provide you with evaluation software.

If it doesn't work with the free stuff, there's still a good chance there are much faster, ARM-specific commercial encoders available, that work.

So basically, I think your way of testing makes little sense.

GCP

s/commercial vendors/competent people/

You may want to add hardware accelerators. The AT76C114 (ARM946 w Accelerator) can do MPEG-4 VGA EnDec running at 100 MHz. They are typically only available for customers with large volumes though.

Best Regards, Ulf Samuelsson ulf@a-t-m-e-l.com This message is intended to be my own personal view and it may or may not be shared by my employer Atmel Nordic AB

OK, I take your words for it.

The OP asks for software alternatives to hardware encoders. I bet they are thinking real-time. Otherwise, a big hard disk on a tiny ARM would look funny.

ARM is great for many things, but I would go Geode for multi-media apps.

GX2 (K6 core (w/o cache) with MMX and 3Dnow) can decode VGA quality LX (K6 core (w cache) with MMX and 3Dnow) can decode DVD quality

LX might encode VGA, but not DVD.

NX (Athelon core) would encode DVD.

If and when intel comes out with the 1G Xscale, it would change my mind. But I don't evaluate vaporware at this point.

I suspect you're right, but the OP didn't specify - so I answered the question that was asked, not the one that was meant :)

Ergh. Not I. Having spent three-ish years working with Geode, I can say unequivocally I would go with PowerPC for multimedia apps. I'd only go to Geode if I needed Wintel compatibility. Geode is flaky, hot and weird. Oddities abound - and you can never be sure if it's a SMM problem, an app problem, a hardware problem, a driver issue, ...

No OCD either (at least on the GX, I don't know about the others).

Which Geode did you work with? The newer one are different cores, only sharing the same name.

I agree, but the world still want Wintel, and they still pay for it. I have a customer who want to run XP on it, no matter what I say.

I disagree with "hot". At 1W CPU, it's not much more than a top end Xscale (ARM). I have not look into top end PPC.

Very often, it's a poor design of supporting hardwares and layouts. Power regulations are very important for the Geode, but not much more than ARM or PPC anyway. In fact, we are looking into adding an AVR to manage/monitor the powers for the Geode.

For our specific application, reseting the system is not a problem, but getting stuck is.

I'd have to agree about the Geode. After working with it for a few months, I'd avoid it if possible. Not much bang/watt-dollar, and awfully buggy for something that's been shipping for quite a few years.

Grant Edwards grante Yow! .. I don't understand at the HUMOR of the THREE visi.com STOOGES!!

Bit of a marketting gaff there, then. The Geode had a well-earned reputation as weak and buggy. Deciding to carry on the name with a new design seems pretty dumb.

Grant Edwards grante Yow! .. I don't understand at the HUMOR of the THREE visi.com STOOGES!!

The random latencies due to SMM on the old versions made the processor useless for some applications requiring accurate timing.

Any improvement in this respect on the more modern processors ?

Paul

True, the Geode is good for low priority user interfaces, i.e. control panels type. We plan on adding AVRs for RT stuffs. The basic architecture is the same. However, with faster clock and better instructions (MMX and 3Dnow), it helps in certain applications. Furthermore, with 64bits DDR (GX2+) vs.

32bits SDR (GX1), the memory latency is lower.

If you want top performance, you need external graphic controller. The same is true for ARM and PPC anyway.

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required