|
11541 | Patches | User Interface | Very Low | Add Voice Announcement of Summary Info to WPS hotkey | 2010-08-15 | Sean Inglis | 2020-07-15 | 4 |
Task Description
This patch adds an additional menu option to the list of WPS hotkey choices, “Announce Information”. This voices basic information about the player, currently playing file and current tracklist.
This feature reads a simple definition with a single line of no more than 20 characters from the file “announce.cfg” in the .rockbox directory.
This definition consists of a string of single character tokens, each of which announces a particular canned piece of information.
The tokens are:
A - current time B - elapsed time and total length of the current track C - current track number and total tracks in playlist D - battery level as a percentage E - battery remaining in hours and minutes F - sleep timer remaining in minutes
If more than one token is specified, more than one piece of information is announced, so:
AB
would announce the time followed by elapsed time and track length
Multiple announcements may be bound to the hotkey by separating one or more groups of tokens with a “:”
A:DF
In this example, the first time the hotkey is pressed, the time is announced. If it is pressed again within 10 seconds, the battery level and sleep timer are announced and so on.
A space between tokens adds a short pause to the announcement.
If no announce.cfg file is present, the time is announced by default.
|
|
10511 | Patches | Build environment | Very Low | Fixed multiple-language feature in tools/configure | 2009-08-11 | Rosso Maltese | 2020-07-14 | 2 |
Task Description
The patch fix the multiple-language feature, maintaining the same behaviour in interactive and batch mode and with “make reconf”. Now it’s possible to build more than one voice language at once, specifying different engine and option set for each one. So, running “make voice”, all the selected languages will be built.
To help the comprehension, here it is a batch mode sample:
../tools/configure –target=ipodvideo –ram=64 –type=av –language=italiano,espanol –tts=f,e –voice=lp_diphone –ttsopts=, –encopts=’-q 10 -c 10,-q 5 -c 5’
This is like to run:
../tools/configure –target=ipodvideo –ram=64 –type=av –language=italiano –tts=f –voice=lp_diphone –ttsopts=’ ' –encopts=’-q 10 -c 10’
../tools/configure –target=ipodvideo –ram=64 –type=av –language=espanol –tts=e –voice=lp_diphone –ttsopts=’ ' –encopts=’-q 5 -c 5’
In the first case, I set the language to italian, using festival with voice lp_diphone (female), no further festival options and some manual encoder options. In the second case, I set the language to spanish, using espeak. Even if I set the voice, the value is ignored, since the selected TTS engine doesn’t use it.
I also added some cosmetics, like some very circumstantial indentation, blank check in rootdir too, simpler numbered menu generation, some terser command pipes.
The patch is applied to r22250.
I don’t know if it’s a really wanted feature, but the word in the script hurt me!
|
|
12214 | Patches | Music playback | Very Low | Space80 Reverb Effect | 2011-08-01 | JoshuaChang | 2020-06-29 | 1 |
Task Description
space80 is a digital-plate-like reverb effect, i dump it from my soundcard driver and translate it to c code, the original author is stylus02, thanks him for teaching me many things about the dsp theory:)
about the speed: eats about 21.86MHz cpu on a cowon d2 target
|
|
12138 | Patches | Plugins | Very Low | Freecell game - new plugin for rockbox | 2011-05-29 | Jason Stark | 2020-06-29 | 2 |
Task Description
Hacking from Antoine Cellerier’s code for solitaire.c, I put together a rough freecell game.
It currently works for Sansa E200 targets. Others should work once button mappings are done.
This is not heavily tested, so feel free to report or fix any problems you encounter.
|
|
11249 | Patches | Operating System/Drivers | Very Low | Fixed Morse Code case switching (on Sansa Fuze / FuzeV2... | 2010-05-07 | Wenyu "Hearson" Zhang | 2020-06-29 | 2 |
Task Description
Hi all,
Currently for all models, the Morse Code input method can only type lowercased letters. Here I provide a patch which enables people to switch between lower cased and upper cased letters, I implemented this for Fuze and Fuze v2, and further fixes will be provided soon (or someone else want to add some key mapping options into your keymaps?)
The patch (also attached):
Index: apps/action.h
— apps/action.h (revision 25886) +++ apps/action.h (working copy) @@ -239,6 +239,7 @@
ACTION_KBD_DOWN,
ACTION_KBD_MORSE_INPUT,
ACTION_KBD_MORSE_SELECT,
+ ACTION_KBD_MORSE_CASE_SWITCH,
#ifdef HAVE_TOUCHSCREEN
/* the following are helper actions for touchscreen targets,
Index: apps/recorder/keyboard.c
— apps/recorder/keyboard.c (revision 25886) +++ apps/recorder/keyboard.c (working copy) @@ -148,6 +148,7 @@ #ifdef HAVE_MORSE_INPUT /* : We should put this to a configuration file. */ +static bool morse_uppercase = false; static const char *morse_alphabets =
"abcdefghijklmnopqrstuvwxyz1234567890,.?-@ ";
static const unsigned char morse_codes[] = { @@ -573,6 +574,11 @@
state.morse_code |= 0x01;
}
break;
+ case ACTION_KBD_MORSE_CASE_SWITCH: + if (state.morse_mode) { + morse_uppercase = !morse_uppercase; + } + break; #endif /* HAVE_MORSE_INPUT */
case ACTION_KBD_SELECT:
@@ -626,7 +632,8 @@
/* turn off hangul input */
state.hangul = false;
- kbd_inschar(&state, morse_alphabets[j]); + kbd_inschar(&state, + morse_uppercase ? toupper(morse_alphabets[j]) : morse_alphabets[j]);
}
#endif /* HAVE_MORSE_INPUT */
break;
@@ -862,6 +869,10 @@
int morse_code;
outline[0] = morse_alphabets[i];
+ + if (morse_uppercase) + outline[0] = toupper(outline[0]); +
sc->putsxy(x, y, outline);
morse_code = morse_codes[i];
Index: apps/keymaps/keymap-fuze.c
— apps/keymaps/keymap-fuze.c (revision 25886) +++ apps/keymaps/keymap-fuze.c (working copy) @@ -269,6 +269,7 @@
{ ACTION_KBD_DONE, BUTTON_UP, BUTTON_NONE },
{ ACTION_KBD_ABORT, BUTTON_HOME|BUTTON_REPEAT, BUTTON_NONE },
{ ACTION_KBD_MORSE_SELECT, BUTTON_SELECT|BUTTON_REL, BUTTON_NONE },
+ { ACTION_KBD_MORSE_CASE_SWITCH, BUTTON_HOME, BUTTON_NONE },
LAST_ITEM_IN_LIST
}; /* button_context_keyboard */
|
|
11356 | Patches | Games | Very Low | improvements for game "jewels" | 2010-06-05 | Michael Stummvoll | 2020-06-29 | 4 |
Task Description
preamble first :) I am new at the rockbox-project, so this is my first commit. I hope that I am right here with that. If not, please notify, and say, where somewhat would be better. Strictly speaking this is my first contribition to an opensource-project ever. I am a friend of OSS since years and now I want to give something back ;) I am thinking, rockbox is a nice project to get in the open source scene.
To get in the rockbox-project I tried to improve the jewels-game. First I changed the controls for the Sansa Fuse in the Simulator. The old controls are good for the real Fuse, but very unconfortable at simulator.
Then I wanted jewels to get more difficult with higher levels. To do so I changed it to start with 4 types of jewels only and get one more each three levels till they are 7 types.
Greetings, Michael
|
|
13193 | Patches | Configuration | Very Low | Add option to disable settings reset on startup | 2020-04-01 | Stefan Ott | 2020-04-03 | 2 |
Task Description
I would like to run my iPod with its keypad locked all the time, thus I wrote a little patch to an option to disable the settings reset during startup regardless of the hold button's position.
You will find the patch attached to this message. I'm not entirely convinced by the name of the new option (or my wording in general) so if you have a better idea, feel free to rename things.
|
|
12074 | Patches | Settings | Very Low | Add setting to enable/disable lineout on Sansa Fuze V2 | 2011-04-19 | Rob Walker | 2019-08-02 | 2 |
Task Description
This patch allows the line out on the Sansa Fuze V2 to be enable/disabled by means of the existing Lineout poweroff setting (previously used on some iPods).
By assigning this setting to the quickscreen I can switch between headphones and lineout after plugging into the dock. Still no luck in finding out how to autodetect the dock.
I'm not 100% sure that re-using the "Lineout Poweroff" setting is the right thing to do here as it's not powering on/off the line-out - just switching between headphones and line out
|
|
8183 | Patches | Games | Very Low | The Case Game - (Deal or No Deal variant) | 2007-11-19 | Brian Morey | 2019-03-05 | 34 |
Task Description
The Case Game
Here is a variant of Deal or No Deal for Rockbox.
26 cases contain random amounts of virtual money. After choosing 1 case for yourself, you open the other cases until the banker makes you an offer to buy your case. If you choose to accept the offer the game ends and you receive that offer as your final score. By declining the offer, you continue to open the remaining cases until the next offer. If you decline all offers you get the amount that was in your case as your final score. If play continues until your down to 1 case plus the case you chose, you are given the option to swap cases.
Gameplay controls:
() While opening cases: pressing UP shows the remaining case amounts.
pressing DOWN shows the high scores.
() While deciding on an offer: pressing UP shows the previous offers.
pressing DOWN shows the high scores.
This game allows name entries into a high score board.
This game currently only works on color lcd screens (Sansa e200 176×220) or greater.
Apply the patch and place the .bmp files in the “apps/plugins/bitmaps/native/” directory.
Please post results for other platforms as well as comments. I tested the game out on the Gigabeat simulator and it seemed to work well.
|
|
10631 | Patches | Games | Very Low | Spider (spider solitare) rework! | 2009-10-01 | Ben Basha | 2019-03-05 | 3 |
Task Description
Spider solitare game on easy level
uses solitare card suit
try it!
working on color and grayscale targets
|
|
11619 | Patches | Music playback | Very Low | Restore pitch and speed settings on resume | 2010-09-10 | Frank Gevaerts | 2017-12-10 | 3 |
Task Description
This patch should save pitch and speed settings to nvram, and restore them after reboot if needed.
If I read the code correctly, there should be enough room in nvram (and anyway, the way this is done doesn't apply to any targets that actually use real nvram)
This code compiles, but apart from that it's completely untested.
Of course, since this patch increments the nvram data version, you'll lose resume info the first time you reboot.
|
|
11765 | Patches | Battery/Charging | Very Low | Improve Battery Life on AMSv1 Sansa players | 2010-11-19 | Fred Bauer | 2017-09-09 | 6 |
Task Description
This patch modifies the CPU and peripheral bus clocks to hopefully gain some battery life. With this patch the CPU frequency can be either 31 or 186Mhz and the pclk is boosted from 31 to 62 Mhz while the CPU is boosted. The power draw of the CPU is proportional to the clock frequency and setting the frequency at or below what is required for playback keeps the power usage to a minimum because boosting to a frequency below 200Mhz is inexpensive. (Keeping the boosted CPU frequency below 200Mhz eliminates the need to wait for a voltage rise.)
I would appreciate feedback on battery life if anyone has the patience to run a battery bench.
|
|
13053 | Patches | User Interface | Very Low | Add option to make scrollbars borderless | 2015-07-29 | Andrey Maluy | 2015-07-30 | 1 |
Task Description
This patch will add a setting, called "Scroll Bar Border", which will determine whether menus / lists will have scrollbars with borders or not.
The default value for this setting is "yes", so that it matches previous behavior.
|
|
13040 | Patches | Playlists | Very Low | Playlist becomes one item shorter when shuffled | 2015-03-21 | Thomas White | 2015-05-30 | 2 |
Task Description
I noticed that the playlist seems to become one item shorter when I shuffle it, using the latest Git master branch (commit 70d57080) on a Sansa Clip+.
Steps to reproduce: 1. Clear the playlist by pressing Stop (power button) 2. Add a small number of tracks to the playlist 3. Shuffle the playlist (playlist view, menu, Shuffle) 4. Observe that playlist is one item shorter than before
I tracked the reason for this down, and attach a patch. This isn't a "proper" fix, and is a bit hacky, but it does illustrate what causes the problem.
|
|
13007 | Patches | FM Tuner | Very Low | FM Region "Other": Enable full frequency range. | 2014-09-29 | Oid Maps | 2014-10-02 | 1 |
Task Description
This patch changes the frequency range when selecting "Region: Other" for the FM radio:
With this patch, the "full range" from 76 MHz to 108 MHz, in 0.05 MHz steps, is available when selecting the "Other" region.
|
|
9069 | Patches | Plugins | Very Low | Rockedit : new text editor for Rockbox | 2008-06-03 | Clément Pit--Claudel | 2014-04-25 | 8 |
Task Description
Hello, I’ve recently designed new text editing plugin for Rockbox, which I called (how original…) rockedit. The point is not to compete with current text_editor, but rather to develop a new approach to text editing by, in particular, allowing user to work in insert/replace mode. The major difference is that the keypad has been replaced by a single which the user navigates through using up/down, while left/right are used to change current char. Fire key is used to switch between different chars lists. I didn’t manage, though, to use keypad as set in r17659. The diff file just reverts it, which is not a good solution at all… Furthermore, I haven’t tested it on any other target but my gigabeat : I cannot boot Windows currently.
I’ve included a patch which includes keymap changes, and another which doesn’t. I’ve also added a screenshot. Please do comment and help me improve this editor !
|
|
9114 | Patches | Applications | Very Low | Pause Between Tracks | 2008-06-24 | Linus Nielsen Feltzing | 2014-03-18 | 7 |
Task Description
This patch adds a new playback option, Pause Between Tracks. It pauses the playback automatically after each track, and the user must press Play to play the next.
This is useful for e.g dance classes, sound effects etc.
There is a noticeable lag in the simulator, where it starts the playback of the next song before pausing, but who cares? It seems to work fine on the target anyway.
Try it!
|
|
10763 | Patches | User Interface | Very Low | This patch speeds the keyboard input for scroll wheel d... | 2009-11-05 | Fred Bauer | 2014-03-03 | 34 |
Task Description
This patch is for the Sansa Fuze but easily modified for other players with scroll wheels. apps/keymaps/keymap-[your player].c needs to be modified
This patch changes the keyboard input method for scroll wheel players to this:
Scrolling the wheel forward selects the column of the desired character moving right. Reversing the wheel moves the keyboard cursor down (not left) to select the character. Reversing again inserts the letter and resets the row and column to the top left. Repeat…(right, down, right, down…)
The benefit is not leaving the scroll wheel or stopping to click anything.
The center select button is now always mapped to delete. Left and right always move the edit position. To make overshoot more forgiving reverse scrolling past the bottom of the keyboard moves the cursor to the top of the previous column.
The posted patch includes keymap changes for the Sansa Fuze. These are the changes required for a different target: - { ACTION_KBD_UP, BUTTON_SCROLL_BACK, BUTTON_NONE }, - { ACTION_KBD_UP, BUTTON_SCROLL_BACK|BUTTON_REPEAT, BUTTON_NONE }, - { ACTION_KBD_DOWN, BUTTON_SCROLL_FWD, BUTTON_NONE }, - { ACTION_KBD_DOWN, BUTTON_SCROLL_FWD|BUTTON_REPEAT, BUTTON_NONE }, + { ACTION_KBD_SCROLL_BACK, BUTTON_SCROLL_BACK, BUTTON_NONE }, + { ACTION_KBD_SCROLL_BACK, BUTTON_SCROLL_BACK|BUTTON_REPEAT, BUTTON_NONE }, + { ACTION_KBD_SCROLL_FWD, BUTTON_SCROLL_FWD, BUTTON_NONE }, + { ACTION_KBD_SCROLL_FWD, BUTTON_SCROLL_FWD|BUTTON_REPEAT, BUTTON_NONE },
This patch will remove Morse code but preserves the unicode capability (not tested)
|
|
12522 | Patches | Battery/Charging | Very Low | iPod Classic/6G: charger detection | 2012-01-08 | Cástor Muñoz | 2014-02-09 | 1 |
Task Description
External/USB adapters are not correctly detected on my Classic 80Gb, this patch detects it so car mode functionality now works, also the iPod is powered-up when USB cable is inserted.
The function power_input_status() returns USB charger when both external and USB chargers are present. It is possible to detect the external adapter when USB cable is plugged but it is necesary to poll the PMU (not IRQ safe), and i think this information is not currently used at all.
|
|
12912 | Patches | Plugins | Very Low | Atari2600 Emulator Back from the Dead compiles for HEAD | 2013-11-14 | foolsh | 2013-11-15 | 1 |
Task Description
I'm decided to make myself useful today and hammered out most of the rest the code needed to move http://www.rockbox.org/tracker/6048 along. I'm starting a new entry since the old one is closed. I'm hosting all the work I do at http://foolsh.no-ip.org/projects/atari2600/wiki/Wiki
2600box Plugin
* Added the .make file * Added keymaps for most color targets * Added to viewer.config loads *.bin files * Fixed screen resizing for smaller screen targets * Compiles against HEAD/master
I'm still testing sim builds at the moment.
There is some bad news, it crashes in the sims after a minute or two, and the buttons on my fuze+ don't work for some unknown reason but they do in the sim.
Everything else is looking pretty good. I'd like to hear back from people who have real hardware and can test the keymaps.
|
|
10764 | Patches | Drivers | Very Low | Implementation of the MTP protocol | 2009-11-05 | amaury pouly | 2013-11-14 | |
Task Description
This task is about the implementation of the MTP protocol for rockbox.
The code can be found in a github repository: http://github.com/godeater/rockbox/tree/mtp The two main files are: firmware/usbstack/usb_mtp.{c|h} But there also are some other modification to be able to run it using the debug menu.
|
|
12075 | Patches | Settings | Very Low | Add timeout to quickscreen | 2011-04-19 | Rob Walker | 2013-10-10 | 4 |
Task Description
Following my patch to control line-out on the Fuze via a setting on the quickscreen (FS#12074), I found I kept forgetting to leave the quickscreen. This meant that when I intended to change track, I was actually changing the shuffle / repeat settings etc and had to fiddle around to get back to where I wanted to - not a good idea when driving at >70mph!
The attached patch adds a configurable timeout to the quickscreen so that it returns to the WPS screen if no button is touched within N seconds. 0 (the default) will disable the timeout preserving the existing behaviour.
|
|
10198 | Patches | Battery/Charging | Very Low | USB charge only setting | 2009-05-11 | Jonathan Gordon | 2013-09-07 | 4 |
Task Description
this patch adds a setting to choose what to do on a usb connection. default is to connect. options are charge only or connect..
holding *any* button will swap the outcome…
it works, but not perfectly… and the manual patch needs to be checked
|
|
9613 | Patches | Database | Very Low | Allow formatting of track names for the default <All Tr... | 2008-12-08 | Justin Gan | 2013-08-17 | 14 |
Task Description
By default, whenever you choose the <All Tracks> option from the database menu, the list of results returned defaults to the standard track name format, i.e. “%02d. %s” tracknum title. What I wanted was to be able to define the format that gets applied to the <All Tracks> option, dependent on the current menu level. So for example, if I had browsed to genre→artist→<All Tracks> it would return the list of all tracks for all artists for the given genre and I wanted the track names to be formated with:
"%s %s %02d. %s" artist album tracknum title
and then sorted into order, since I already know what genre the tracks are for.
Similarly, if I simply browsed to genre→artist→album→<All Tracks>, it would return the list of all tracks for the selected genre and artist, but I want the track names to be formated with:
"%s %02d. %s" album tracknum title
so when it’s sorted, I get the tracks grouped only by album and tracknumber, since I already know what artist the tracks are for.
This patch attempts to address this issue by allowing users to define custom <All Tracks> formats in the tagnavi_custom.config file. Thus, sort order can be controlled by how you format the track names, just as it works in base Rockbox.
The premise behind the code is that if the <All Tracks> menu option is chosen, Rockbox will look for formats with a certain naming convention defined by concatenating the tag names of the parent menu levels with “.” characters and finally appending an “.All” identifier. So in the first example above where we had browsed to genre→artist→<All Tracks>, Rockbox will look for all formats called:
"genre.artist.All"
and then cycle through them to see if the appropriate clauses defined on the format are met. Similarly, for the second example where we had browsed to genre→artist→album→<All Tracks>, Rockbox will look for the format called:
"genre.artist.album.All"
As in base Rockbox, it will cycle through all applicable formats and apply the first format it comes across that meets all the clauses defined on the format. One minor change I had to make to get the relevant tags loaded for the search results was to add the tags defined in the clauses of all matching format names to the tagcache search, but not add the clauses themselves.
So now, in the tagnavi_custom.config file to illustrate the first example, I have defined 4 formats called “genre.artist.All” to format the final display name based on whether the artist/album tags are actually defined on the mp3’s in the database.
%format “genre.artist.All” “%s - %s - %02d. %s” artist album tracknum title ? artist !~ “<Untagged>” album !~ “<Untagged>” tracknum > “0” %format “genre.artist.All” “%s - %02d. %s” album tracknum title ? album !~ “<Untagged>” tracknum > “0” %format “genre.artist.All” “%s - %02d. %s” artist tracknum title ? artist !~ “<Untagged>” tracknum > “0” %format “genre.artist.All” “%02d. %s” tracknum title ? tracknum > “0”
The downside of this approach is that in order to have this style of functionality for every <All Tracks> menu option, I defined a lot of formats. As such, I had to increase the maximum number of formats from 32 to 96 in order to cope with my formatting schemes. I also increased the maximum number of tag filters from 4 to 8. Now this obviously increases the amount of memory allocated for formats, which will have an impact on available audio buffer size. The attached tagnavi_custom.config file shows the various “All” formats I’ve added and it’s pretty comprehensive in the way it handles missing tags, so technically, if your music library is properly tagged, you should never need all of the formats so you could easily reduce the maximum number of formats.
My principal concern with this patch is in terms of the memory usage of increasing the maximum number of formats and number of tag filters allowed. I’m not aware of a memory profiler for cygwin, but then I hadn’t used cygwin before playing with Rockbox - so any pointers would be helpful.
The second piece of functionality I wanted was in the handling of the “strip” functionality. Base Rockbox has an all or nothing approach; if the global format found for the list of tracks contains a strip modifier, then it applies the strip to ALL track names, even if the subsequent formatting of the track does not contain a strip modifier. I wanted Rockbox to only strip tracknames if a strip modifier was defined on the format that is applied to the track. This patch fixes this problem.
This works fine on my Sansa e280 with a full 8Gb drive and a full 2Gb micro-SD card. It’s formatted close to 1000 tracks with no noticeable difference in processing time, and I’ve not come across any out of memory errors on my e280, but I haven’t tested it on any other mp3 player so I would recommend you test this first using the appropriate simulator.
Note that this patch incorporates the year album patch FS#8051 as the code is all tied up in the same files.
|
|
11108 | Patches | Drivers | Very Low | USB Audio support | 2010-03-15 | amaury pouly | 2013-08-13 | 3 |
Task Description
This flyspray task will hold the development of a potential usb audio driver for rockbox. It will also serve for the development of the isochronous transfer support support in usb code.
|
|
12807 | Patches | Plugins | Very Low | [WIP] New amiga music player plugin powered by UADE lib... | 2013-01-25 | Mauricio Garrido | 2013-07-19 | 1 |
Task Description
Hi there,
this is a WIP plugin that I wrote last year. It plays amiga music using the UADE library.
You can find more about it here: http://zakalwe.fi/uade/
I'm a bit new to git so please forgive me for not uploading a proper patch.
To test the plugin, simply copy the bitmap and rockuade folders to the plugins folder in
rockbox sources. And you have to extract the data.zip file in the .rockbox folder.
I'm not going to work on this anymore, so I decided to upload it here, and hope someone
can make a proper patch and maybe some dev would be interested in testing it, make
the necessary changes and upload an stable release.
Please read the README file for some additional info about the plugin.
Tested on: samsungypr0, fuze+, fuzev2
Commid ID: e1ea08417bca57c607df6686472fa0a86f38b6d1
|
|
12795 | Patches | ID3 / meta data | Very Low | Album art for FLAC and Ogg | 2012-12-31 | Evan Ramos | 2013-06-13 | |
Task Description
I am working on adding album art support for FLAC and Ogg files. FLAC looks straightfoward, but there is a design problem with Ogg.
https://wiki.xiph.org/VorbisComment#Cover_art
The struct containing the image and associated data is base64 encoded. I can't just set id3→albumart.pos to a location in the file like all other supported album art formats (and FLAC). Obivously I could allocate memory for the decoded base64 data, but it would have to be deallocated later to prevent a leak.
On IRC, nick_p suggested: "how about adding a new id3 struct element id3→albumart.base64_encoded=true and decoding it when needed on the fly?" This sounds like a good idea, with one issue: it's not the album art alone that is base64 encoded, but the data struct described here:
http://flac.sourceforge.net/format.html#metadata_block_picture
I can test to see if I can parse the beginning of the base64 block, then set the pos pointer to the middle of of the block (with the id3 struct addition) and see if it will still decode.
|
|
12176 | Patches | Codecs | Very Low | New Chiptune codec pack based on Game_Music_Emu library... | 2011-07-01 | Mauricio Garrido | 2013-04-10 | 37 |
Task Description
Hi, this is a codec pack containing all codecs based on blargg's Game_Music_Emu library.
I have ported all code to C to work in ROCKbox, and i have replaced the MAME versions of some emulators with others compatible with the GPL license. It was a lot of work but i did it because i really love chiptune music and having the possibility to listen to a lot of classic video game system's music in a small player is really great ;).
Original Game_Music_Emu library here: http://slack.net/~ant/libs/audio.html
Tested on: Sansa Fuze v2 Created from revision: 30084
The following formats are contained in the pack:
- AY (ZX Spectrum, Amstrad CPC) - GBS (Nintendo Game Boy) - HES (NEC TurboGrafx-16, PC Engine) - KSS (MSX Home Computer, other z80 systems) - NSF, NSFE (Nintendo NES, Famicom) - SGC (Sega Master System, Game Gear, Coleco Vision) - VGM, VGZ (Sega Master System, Mark III, Sega Genesis, Mega Driver, BBC Micro) Additional features:
- 44100 Khz, stereo playback. - Support all sound chips in NSF/NSFE formats. - Support MSX-AUDIO and MSX-MUSIC in KSS format . - Support ADPCM samples in HES format. - Support for extended m3u playlists created specially for
some chiptune formats.
Known issuses:
- Some (or all) codecs might not work in some targets, specially
if they have an small iram size, or if the codec is too cpu intensive,
like VGM and KSS.
- Subsong change is not working properly, specially when it happens
automatically.
- Most vgz tracks will be truncated due to the small amount of free
memory available to uncompress them.
- Some SCC+ soundtracks might not work correctly.
** There might be several bugs and issues to be found yet, so please feel free to
report them here or to my mail address.
Special thanks to:
- Shay Green (blargg) the original author of the great Game_Music_Emu
library.
- Chris Moeller (kode54) who made some nice improvements to the library. - Mitsutaka Okazaki, author of the YM2413 emulator. - The OpenMSX team for the YM8950 emulator. - Stéphane Dallongeville for the YM2612 emulator. - Joshua Chang, Haiku Konaru and everyone else who has helped me to
test the codecs.
|
|
12809 | Patches | Plugins | Very Low | [WIP] New vgm streamed music plugin powered by vgmstrea... | 2013-01-25 | Mauricio Garrido | 2013-01-25 | 1 |
Task Description
Hi there,
this is another WIP plugin that I wrote last year. It plays videogame streamed music
using the vgmstream library. Original homepage here:
sourceforge.net/projects/vgmstream/
I'm a bit new to git so please forgive me for not uploading a proper patch.
To test the plugin, simply copy the rockstream folder to the plugins folder in
rockbox sources. And you have to extract the data.zip file in the .rockbox folder.
The formats.db found in data.zip is basically a list with all vgmstream supported
extensions (at least "all" by the time I wrote the plugin). You can add or remove
new or unwanted extensions there. The plugin will only handle the extensions found
in the formats.db.
Currently the plugin works as a viewer plugin, and there is only one extension associated
with the plugin in viewers.config for testing purposes, but you can always use the
'open with' option from rockbox. Once you open a file the plugin will parse all supported
files found in the same folder.
The vgmstream project is updated quite often, if someone wants to
update the core library, I believe that would be very easy, since I only changed a couple
of things to it.
I'm not going to work on this anymore, so I decided to upload it here, and hope someone
can make a proper patch and maybe some dev would be interested in testing it, make
the necessary changes and upload an stable release.
As a last comment, I have only tested the plugin in the simulator, samsungypr0, fuze+
and ipod nano. It only worked in the simulator and samsungypr0, so hope someone can
fix that.
Please read the README file for some additional info about the plugin.
Working on: simulator and samsungypr0
Commid ID: e1ea08417bca57c607df6686472fa0a86f38b6d1
|
|
12496 | Patches | Operating System/Drivers | Very Low | RaaA WebOS | 2011-12-30 | Jason Yu | 2013-01-04 | 2 |
Task Description
Rockbox WebOS app.
Built on r31467, 32/64-bit Ubuntu 11.10, running on a 32GB Touchpad
Directions (only tested on the above):
* Install WebOS PDK: https://developer.palm.com/content/resources/develop/sdk_pdk_download.html
* Install platform-native libsdl-dev if you haven't already. Only needed to pass configuration check as the PDK doesn't properly install staging sdl-config for some reason.
* Apply patch (patch -p0 < filename.patch)
* cd webos
* ../tools/configure, select WebOS target (206)
* make && make install && sh ./buildpkg.sh
Notes:
* This is one big hack – I fudged just about everything in /firmware (how the target system works is still not altogether clear to me) and piggybacked a lot of this off of the SDL target. Mostly in the interest of getting it to run without adding ifdefs all over the place. Obviously we'll want to be more methodical and thorough about exactly which changes need to go where moving forward.
* The Touchpad's SDL video implementation appears to adjust orientation and scale output to fit within 1024x768 as best as possible. This means that a 800x480 build will appear in landscape mode, letterboxed, while a 320x480 will appear in portrait mode, pillarboxed. The device itself automatically orients to landscape – meaning, if you're in a portrait resolution and then you exit, everything will initially be sideways – but that doesn't affect input. Scaling routines are noticeably slow.
* I tried building this as a hybrid Enyo/PDK (window mgr friendly) app but had some problems with the native part failing to execute at SDL_Init. So for now no backgrounding or notification bar.
* Make scripts use the ARM compilers installed with the PDK. I'm wondering though if this is superfluous given that the Rockbox toolchain also supports ARM7. I did try exposing some of the ARM-specific assembly but the compilation failed with the PDK compiler.
800x480 build: http://www.jasonyu.net/webos/org.rockbox.raap_0.0.1_all.ipk
|
|
10698 | Patches | User Interface | Very Low | Cowon D2: Tactile button functions with hold switch on | 2009-10-21 | Andrew Beveridge | 2012-12-07 | 9 |
Task Description
This has been (slightly) discussed before, but this is a new take on the matter, not a repeat of FS#10683 .
With this patch applied, the following functionality is recognised with the hold switch in place:
On any list/menu screen or the while playing screen; pressing MINUS decreases volume by one, pressing PLUS increases volume by one, pressing MENU switches between Play and Pause, holding MINUS skips back a track, holding PLUS skips forward a track, holding MENU advances to the next folder.
I feel that anybody using a Cowon D2 will find this functionality essential, not only because it is present in the original firmware, but because it is necessary for in-pocket operation. With a small DAP like this, with tactile buttons as well as a touch screen, it makes sense to maximize convenience.
I have added as much functionality as I could without requiring pressing multiple buttons at once. I have made several similar patches and built them for members on the iAudiophile forums, and this configuration has consistently been the most popular.
I welcome any comments/suggestions. -Andrew
|
|
12773 | Patches | Themes | Very Low | Android Notification: Use setLatestEventInfo instead of... | 2012-10-22 | zhkailing | 2012-10-28 | 3 |
Task Description
Android: The Notification bar which use "Remoteviews" may be not suitable for some ICS Roms (see Attachment). So I change the Remoteviews to "Notification.setLatestEventInfo" to display the track information.
The patch may have some offsets.
|
|
10959 | Patches | Games | Very Low | Brickmania - Ball disappears. | 2010-02-03 | Bert Wooster | 2012-08-12 | 3 |
Task Description
Running “current build” r24477-100203 on Sansa e200 V1
Game Brickmania bug: The ball just disappears (often on Level 2, but maybe on others). Ball will just usually go to the top corner and not “bounce” back, but the game acts as if a ball is still alive (doesn’t register a lost ball) though there is no further movement on screen. I just have to quit the game.
The ball doesn’t bounce back. No further ball is issued. It just disappears and I can’t interact w/ the game anymore due to no active ball.
FIRST APPEARED: This began a few weeks ago (sorry I can’t be more specific), but has persisted in several “daily build” updates I’ve done and is in the current build I just installed.
REPRODUCIBLE: I reproduce the bug each time I just play through Brickmania. It generally happens in level 2 of the game though it may happen in subsequent levels– I don’t get through to them to see.
I’ve installed with rbuitil and manually, same thing happens. I have 2 different V1 e200s and it happens on both of them.
Thanks for all your work on the great Rockbox.
|
|
12474 | Patches | Database | Very Low | [PATCH] Database: Support for multiple search roots. | 2011-12-21 | Thomas Martitz | 2012-07-18 | 4 |
Task Description
The setting works similar to the autoresume dirs: Directories are seperated by colon, e.g. "/Music:/Podcasts". Default is "/sdcard" on android, "/" on all other targets.
A maximum of 8 dirs can be selected, the setting cannot be longer than 80 chars.
Note: There's one problem. If you specifiy "/Music:/" (or any folder and one if its parents afterwards), then /Music is scanned twice. It's tricky to fix, and I'm not sure if it's worth it. This does not happen for "/:/Music" as it can be detected more easily in this order (and this is already implemented).
|
|
7660 | Patches | Plugins | Very Low | Plugin espeak TTS engine for rockbox | 2007-08-26 | Toni | 2012-06-13 | 3 |
Task Description
A first port of espeak running on rockbox. Warning: Only tested on Sansa player!
I have skipped some advanced features of espeak, for example: - mbrola - on the fly Translator language switching (try: ‘spring’ with german selected)
Because this plugin is very basic, there is no file input selection. It always reads from the ‘test.txt’ in the root. You have to unzip the espeak-data to the root of your player.
|
|
7505 | Patches | Plugins | Very Low | Gigabeat Flashwriter | 2007-07-29 | Karl Kurbjun | 2012-05-22 | 34 |
Task Description
WARNING This software is distributed on an “AS IS” basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. Even though there are preventative measures in place this flashwriter plugin may erase your flash and leave you with a broken player. Please be careful and pay special attention to the messages given when using this tool.
*IN THE UNLIKELY EVENT THAT THE TOOL ERRORS WHILE FLASHING IT WILL TRY TO RESTORE THE BACKUP.
*IF RESTORE FAILS AND THE TOOL GIVES AN ERROR MESSAGE STATING NOT TO TURN THE PLAYER OFF PLUG THE PLAYER INTO THE CHARGER AND POST A MESSAGE HERE. (DO NOT LET THE PLAYER TURN OFF)!
This plugin erases a sector of the flash and then rewrites it with the file bootloader.bin. It then modifies (read/modify/erase/write) the first sector and patches the reset vector to point to the code in bootloader.bin. The flash can be accessed at 0×04000000, and it is 1 MB in length.
This still needs testing.
It is safe to erase and write to the sector located at 0×04050000 (actually the latest version uses 0x040A0000). This area is only used for visual images. This has been tested with 2.00, 3.00, and 3.02 firmware.
If the program shows an ABORT message when running Check flash MD5 (version) please backup the flash and upload the backup.bin and backup.md5 files here. This will only work with original releases; please do not upload previously hacked images. If you upload a file please include the version number.
|
|
12223 | Patches | Music playback | Very Low | sinc resampling for rockbox | 2011-08-09 | Stefan Keller | 2012-03-28 | 11 |
Task Description
The attached patch implements sinc based resampling in rockbox. I have only tested it stand-alone so far (i.e. the code outside of rockbox – I am waiting for a replacement for my broken android phone to test it there). There is (of course) quite some room for improvement. Things which could be improved: - buffer handling - calculate the correct sinc spanning the whole table for downsampling. Then the downsampling and upsampling code would be the same (no need for sinc_increment, saving some additions). Also the result would be more accurate resampling. - Save some memory by always calculating the correct sinc and putting it into resample_data. Would need to use fp_sincos() for that. - Save some more memory by taking advantage of sinc's symmetry, only storing half of it in the table.
I know that I'm breaking the coding-style by using more than 80 chars in some lines. I will fix that when I have time. I wanted to get this code finally out to get some feedback after it sitting for two weeks (basically unchanged) on my HD.
|
|
12596 | Patches | User Interface | Very Low | Clip/Clip+/Zip keymap change - power button returns to ... | 2012-02-22 | Martin Sägmüller | 2012-02-22 | 1 |
Task Description
I know keymap changes can be a difficult topic, this one however is just a small change - which, I hope, improves usability of Clip players quite a bit.
I just swapped the behavior of two functions when browsing lists: short press on the power button returns to WPS, and pressing menu + center stops playback while in lists. Return to WPS is arguably the much more often used functionality of the two, and this change makes it easier to do that.
|
|
12568 | Patches | Configuration | Very Low | iPod Classic - limit volume to +6db | 2012-01-29 | Albert Barca | 2012-02-13 | 4 |
Task Description
The iPod Classic Cirrus CS42L55 DAC+amp chip is specified to output audio up to +12dB versus the reference level (0.775V RMS) and the current Rockbox driver implements this accordingly (note that the OF limits the amplification to a lower level).
However, any amplification above +3dB applied to a 0dB signal results in serious clipping errors, the sound being distorted (oscilloscope measurements attached). This is not a surprise, given that +12dB translates in over 8V peak-to-peak output, way above what the iPod is capable of with its 3.7V battery.
Distortions aside, +12dB can be overkill for most of the earphones (depending on the sensitivity) and not a very pleasant experience. If you put the iPod in your pocket and forget to lock it you may experience this frequently.
In practice not all tracks have peaks reaching the 0dB level (actually nowadays this is quite common given the "loudness war"). To provide some room for additional amplification when needed, I found the +6dB limit to be a good compromise.
|
|
12530 | Patches | Manual | Very Low | Add a note and a warning about the location for recordi... | 2012-01-10 | Alexander Levin | 2012-01-12 | 1 |
Task Description
The location for recordings can be set, but the only way to see the current value for the setting is to look into the config file. The patch adds a note stating that to the manual.
Also, there is a known bug ( FS#12517 , FS#12500 ) preventing saving the recorded files in the root directory (maybe this applies only to some targets, not all). The patch adds a warning about that.
|
|
12435 | Patches | Codecs | Very Low | ZX Spectrum .tap codec | 2011-12-09 | George Manolaros | 2012-01-08 | 8 |
Task Description
This patch adds a new codec that playbacks ZX Spectrum .tap files. Created against trunk (revision 31187)
|
|
10754 | Patches | Music playback | Very Low | Amend Sleep Timeout to Pause Timeout | 2009-11-02 | Sean Inglis | 2012-01-04 | 3 |
Task Description
Amend the sleep timeout behaviour to pause when the timeout matures.
This allows the idle timeout to power off the player if it remains untouched, or the sleep / pause timeout to recycle if the user unpauses before idle timeout kicks in.
|
|
12490 | Patches | ID3 / meta data | Very Low | WPS tag for number of channels | 2011-12-27 | Frank Gevaerts | 2011-12-28 | 2 |
Task Description
This patch adds a %ch tag that returns the number of channels in the current file.
Unfortunately, the large majority of codecs don't fill in this field in struct mp3entry. In the codecs covered by the rockbox testfiles collection, only atrac, cook and tta actually work.
I don't think it makes much sense to commit this with so few supported codecs, so help is appreciated on the codec side of things
|
|
12361 | Patches | Settings | Very Low | Smart settings_load_config() so it only does setting_ap... | 2011-11-01 | Jonathan Gordon | 2011-12-20 | 3 |
Task Description
in svn settings_apply() is called whenever a config is loaded (after boot) regardless of what is in the file. even an empty one will cause a full settings_apply() (which is slow, causes disk access and will stop music thanks to the buflib users).
This patch will apply settings individually if they have a callback registered, and if no settings without a callback are applied it doesnt bother calling settings_apply().
|
|
11734 | Patches | Plugins | Very Low | Resistor Calculator: Calculator-like number pad library | 2010-11-07 | Calvin Walden | 2011-12-06 | 3 |
Task Description
r28529
This patch adds a new library that creates a calculator-like keyboard for easy number entry as an alternative to the on-screen keyboard. A lot of the code for drawing the buttons was taken from the calculator plugin.
Tested on the e200.
|
|
6585 | Patches | Plugins | Very Low | Dictionary stardict converter | 2007-01-28 | Tomasz Moń | 2011-12-05 | 1 |
Task Description
There’re many dictionaries for http://stardict.sourceforge.net/Dictionaries.php as many of them are GPL‘ed I would like to request for converter for those so it’ll be possible to use them with RockboxDictionary
|
|
7287 | Patches | ID3 / meta data | Very Low | Support metadata sort tags in the Database | 2007-06-11 | Dan Everton | 2011-11-23 | 24 |
Task Description
Attached is a patch that starts support for the sort tags specified in ID3 v2.4. It adds three new tags to the tagcache system, sortartist, sortalbum, and sorttitle which are drawn from the TSOA/TSOP/TSOT tags.
This is only the beginning and is very, very lightly tested (i.e. it compiles and doesn’t seem to break anything).
|
|
12398 | Patches | Plugins | Very Low | Give the random folder advance config a UI revamp | 2011-11-21 | Jonathan Gordon | 2011-11-21 | 1 |
Task Description
This uses the same code as FS#12330 but uses it for the random folder advance config plugin instead.
I've nuked the entire plugin so not everything is reimplemented yet but it currently works.
Two problems: 1) it uses the \t code in the lists which isnt great (indented lines which try to scroll don't quite work and it is not implemented for the skinned list yet) 2) It cant be used to select a whole sub tree, so if you have thousands of folders it will be very tedious to select them all.
|
|
11862 | Patches | User Interface | Very Low | Add a frequency response graph to the graphic equalizer... | 2011-01-06 | Attilio Scotolati | 2011-11-18 | 2 |
Task Description
This patch adds a frequency response graph below the equalizer's controls, making it an EQ that is actually "graphical".
I'm still not sure about the accuracy of the represented curve, in particular the Q factor on the peaking filters seems to have an effect opposite to the expected, though the equations are taken from the same "audio EQ cookbook" the equalizer is based on, any help is appreciated!
The user interface is still incomplete, I want to add proper tags on the axes and bars. I also thought about re-enabling the theme on this screen (why is it disabled?) and change the behavior of the "right" button, making it consistent with other menus.
Tested on a Sansa e200.
|
|
12192 | Patches | Operating System/Drivers | Very Low | Introduce bsearch() and use it in tagtree.c. | 2011-07-18 | Thomas Martitz | 2011-10-18 | 1 |
Task Description
bsearch() is a general purpose binary search function for arrays. It's supposedly faster than looping over arrays. The array needs to be sorted in ascending order under the provided comparison function. If the key and array element are of the same kind, then the same compare function can be used for qsort() and bsearch().
Code taken from glibc.
—
So, is anyone interested?
|