Google Summer of Code 2007
What?
Rockbox is officially accepted as a mentor organization for
GSoC 2007: the project page is
here.
Accepted projects for GSoC 2007
The results of our GSoC 2007 are summarised in
GsocRoundup2007.
Project Ideas
This is the list of proposed projects for 2007. These are only ideas and suggestions, students are free to make up and describe their own project when they apply.
Target specific
Port to a new target
- possibly TMS320-based
- Comment by DanielStenberg: I suggested a TMS320-based target mainly because ArchOpen already exists and have code working on TMS320, so it could be a slightly easier to port to such a platform than many others.
Codecs
SoundCodecWMA codec
- Fixed point implementation
Various optimizations
- Comment by bascule: This is not specific enough. Noting a collection of related Bugs/Feature Requests would be better.
Rockbox codebase
Metadata-on-buffer
- currently music metadata is loaded and handled in a fixed-size array which makes a much more limited system with more fixed limits and less flexibilty. MoB is what we want to enable good support for Album Art but even to enable large amount of songs loaded into memory simultanously (like SIDs etc), and more.
Playback engine re-write or major bugfix
- would be biggest step towards a first SWCODEC release
- could also help unifying the HW-/SWCODEC playback engines
USB Stack (Host and device)
Viewports
- amiconn (easier to meet in IRC) has a clear imagination about how it should work. Documentation started here: ViewPorts
Album Art support
- Both embedded and separate (per folder) .jpg files should be supported
Real-time text-to-speech
- eSpeak is a good candidate: supports many languages (uses UTF-8 text), active development, designed for embedded systems (runs on a ~28MHz ARM9), it is however written in C++ and would have to be translated/converted to C to fit in with the rockbox core.
- Flite is a re-implementation of parts of Festival in portable C with embedded systems in mind, might be worth checking out.
Plugins
Better video support
- Rockbox currently has a work-in-progress MPEG (MPEG-1 and MPEG-2) video player. Work to extend Rockbox's video playing capabilities could include: finishing the implementation of MPEG-1/MPEG-2 playback (see PluginMpegplayer for a to-do list); exploring the possiblity of other codecs (e.g. MPEG-4); optimisation of the video codec(s); incorporating video playback into the core playback engine.
- Features wanted: Basic formatting, links, tables and images (for viewing Wikipedia articles or converting HTML, PDF files for Rockbox)
Software fax/modem
Port ScummVM to Rockbox.
- Will probably not be feasible on old Archos targets but should work fine on newer targets with larger screens, but might be the most fun on a color display
- Comment by MartinArver: scummVM is written in c++. Read this scummVM developer discussion for their thoughts on a rockbox port. See also http://wiki.scummvm.org/index.php/HOWTO-Backends
Development
Benchmarking tools
- For optimization testing (codec decode timing vs realtime, text draw speed for LCD optimizations, etc).
LLVM Compiler Infrastructure
- Make rockbox compile using LLVM to investigate if it's a viable alternative to GCC (doesn't have a m68k and sh1 backend yet)
Mentors
Add yourself here if you are a
very much involved Rockbox hacker who would consider to become a mentor for a Summer of Code student:
And when added here, apply "officially" using google's online application:
http://code.google.com/soc/mentor_home.html
Copyright © by the contributing authors.