This still requires >64M GPU memory for most video but the amount has

been reduced. SD or smaller video streams may work in 64M, but HD

won't. I recommend 80M (gpu_mem=80 in boot/config.txt) to be on the

safe side. Having said that that will only allow for 1 stream. If you

are playing >1 stream (even transienntly) then you will need more (say

gpu_mem=128). The code should give up cleanly if it cannot allocate a

h/w video decoder and give the stream to old-stle ffmpeg decode, but as

it stands in many cases it thinks it has allocated a decoder cleanly

only to find that it fails when it tries to use it.



There are a few command-line switches - in general you shoudln't use

them!



--mmal-zero-copy By default the decoder copies frames out of

h/w buffers into s/w buffers before giving them to the main part of

chrome. This helps keep the gpu-mem requirement down. If you have

allocated a lot of gpu-mem (say gpu_mem=192) then this will allocate

more gpu frame buffers and use them instead. This is normally faster

but does require quite a lot more gpu mem than the default



--mmal-frame-buffers=<n> Set the number of gpu frame buffers (8M each).

Defaults to 2 or 6 if zero-copy is set. Probably shouldn't be changed.



--mmal-red-pixel Puts a red square in the top left of a frame

decoded by mmal so you can tell that it is active. Doesn't work if

zero-copy is set.