Hello, I've got an at91sam9261 up and running, and it is working (more or less) with an LCD (640x480), and I can draw pixels and pictures to it just fine. (Currently we are not using an OS, just writing C code off a main loop.) Now we're thinking about what it would take to play video. Say I started with a small file of AVI, MPG, WMV format, what do I need to do to play this on the LCD.
Aren’t there any OS-agnostic (or OS-free) video libraries out there? Making pixels appear on an LCD is fairly simple; once you’ve set the LCD CPU registers, it’s just writing numbers to memory and DMA takes care of the rest (i.e., copies to the LCD at the specified burst rate and pixels magically appear). Hasn’t someone published a generic video library that boils down to
render_video_data_to_framebuffer(*input_avi_data, time_sec, *output_frame_buffer_origin);
which simply decompresses/decodes/scales a frame from the video data (you’d have to tell it the format too – oh, and maybe width and height?) and copies pixel data to the specified buffer. And you’d call this repeatedly at the desired frame rate?
The only solutions readily available are using an embedded OS and their video player. Something like the function exists, obviously, buried in their video player. Has anyone published raw C functions that would be OS-independent (and in fact could be used without an OS)?
Thanks for any insight.