Now there is some most promising news, sound like with some simple optomizations for scaling that this shouldn't be too difficult eh? I put the full post about the bounty to the Dev maliing list. but the link to the wiki page is http://www.linuxtogo.org/gowiki/OpenMoko/Video_Bounty That's the current home of the full rules for the contest. Your news is great but it's almost a shame that it looks like it'll be trivial to do.
A few technical questions here. Is image data constantly transferred to LCD from system memory (60 times per second)? If we compare it to Nokia 770, Nokia 770 has a similar design with framebuffer stored in the system memory with data getting transferred to graphics chip using DMA when needed (graphics chip has its own video memory). Anyway, screen update requests do not seem to have any visible impact on video decoding performance (tested with 640x480 24 fps video). So DMA transfers are not too expensive and cpu can do some other useful things while DMA transfer is in process. If video is really heavy on memory bus, is it possible to reduce refresh rate somewhat (to 50Hz for example) to improve performance? By the way, initially some people also considered Nokia770 hardware to be too slow for video playback with full fps and more or less acceptable quality, check built-in video player limitations [1], but now using MPlayer build for maemo [2], it can handle even some nontranscoded video files more or less successfully. For example when using the following video clip (http://www.divx.com/movies/detail.php?movieID=57&cID=1), it can be watched fullscreen with ~30% frames dropped (resulting in jerky playback on fast moving scenes). If we compare Neo 1973 to Nokia 770, it: * has ~5% faster cpu clock frequency * does not have enhanced dsp instructions support (these instructions provide ~10-15% decoding performance improvement currently) * does not have DSP to relay audio decoding to it (mp3 audio takes ~15% cpu resources if libmad decoder is used on ARM core) * does not have hardware YUV support (that may result in more cpu resources needed for video output and a lot frames dropped because of software YUV->RGB conversion) So while Nokia 770 should be faster for video, Neo 1973 is not too far behind. But one of the most important performance statistics is memory bandwidth, can anyone benchmark memcpy on copying a large data block? Nokia 770 has memory copy bandwidth up to 110MB/s, if Neo 1973 has a similar memory performance, it should be not so bad for video. Just for some experiment, I compiled mplayer for arm920t (not using armv5te instructions), and benchmarked it with sdl video output (software YUV->RGB conversion, generic nonoptimized scaling 320x240 => 640x480) and libmad mp3 audio decoder. This test was run on Nokia 770, but the intention was to simulate how it can possibly behave on Neo 1973. # mplayer -endpos 100 -vo sdl -ac mad -framedrop -quiet -benchmark test.avi VIDEO: [DIVX] 320x240 24bpp 23.976 fps 401.2 kbps (49.0 kbyte/s) AUDIO: 44100 Hz, 2 ch, s16le, 128.0 kbit/9.07% (ratio: 16000->176400) BENCHMARKs: VC: 46,446s VO: 38,929s A: 13,574s Sys: 2,082s = 101,031s BENCHMARK%: VC: 45,9718% VO: 38,5312% A: 13,4359% Sys: 2,0611% = 100,0000% BENCHMARKn: disp: 1368 (13,54 fps) drop: 1031 (42%) total: 2399 (23,75 fps) Actually VO: part in this benchmark can be heavily optimized and video playback without dropping frames for this resolution and bitrate should be possible. Also if we badly need to watch some video at any cost and can't transcode it, video can be watched in grayscale, in this case video decoding is a bit faster and we don't need resource consuming YUV->RGB conversion (conversion to grayscale is cheap). Anyway, let's wait for the information from the first Neo 1973 owners. I think that the information about real Neo 1973 multimedia capabilities will be available really soon :) [1] https://maemo.org/maemowiki/VideoEncoding [2] https://garage.maemo.org/projects/mplayer/ _______________________________________________ OpenMoko community mailing list [email protected] https://lists.openmoko.org/mailman/listinfo/community
_______________________________________________ OpenMoko community mailing list [email protected] https://lists.openmoko.org/mailman/listinfo/community

