|
11639 | Patches | Themes | Very Low | Android port: add theme downloader activity | 2010-09-22 | Maurus Cuelenaere | 2011-08-15 | 3 |
Task Description
This patch introduces 2 new activities, one which lists available themes for a specified target and another which lists more details and the option to install the specific theme. Currently this is more a proof-of-concept, as the communication with the theme server is handled by the same API RBUtil uses, which isn't perfect for the intended usage (e.g. offers no possibility to filter by screen size, only uses INI as output format, ..).
(this also includes some minor unrelated changes to the main Rockbox extraction functionality which won't be in the final patch)
TODO: - make translatable - better UI - uninstall/update functionality - show only themes fit for the displays' resolution - use different protocol to communicate with theme server to get rid of iniparser dependency (XML, JSON, .. ?)
|
|
11665 | Patches | LCD | Very Low | LCD functions ignore viewport bg_pattern if a backgroun... | 2010-10-11 | Jonathan Gordon | 2010-10-11 | 2 |
Task Description
at least in the 16bit lcd drivers, all functions which use transparency (or clear pixels) get the pixel colour from the backdrop image, completly ignoring the bg_pattern.
This isnt a problem except in skins where it is perfectly reasonable to want a background image for most of the screen but a solid colour for one or two viewports.
There is a tiny problem though, bg_pattern is set to LCD_DEFAULT_BG which is a valid colour, so we probably need to add a flag to the viewport struct to say if it should ignore the background image or not.
|
|
11679 | Patches | User Interface | Very Low | Remember last postion in the Settings menu. | 2010-10-14 | Teruaki Kawashima | 2011-02-16 | 1 |
Task Description
This attempts to implement the idea in http://forums.rockbox.org/index.php?topic=25169.0 this only works for the Settings menu in the main menu.
With this patch, if you reenter the Settings menu, it shows the menu shown when you leave the menu just like when you return to the browser or the database.
|
|
11689 | Patches | Themes | Very Low | Theme settings | 2010-10-19 | Jonathan Gordon | 2010-10-19 | 1 |
Task Description
This adds a very simple way for themers to add some customisability to their themes without requiring the user to actually edit the skin files.
2 new tags are added: %Sl(name, default, …) to configure a setting named "name" with the default value "default", the … is any amount (up to 32) of strings which are accepted values. The order here is the order to be used with the next tag.
%Sv(name) to get the value. If the users value isnt in the above list, or the setting file is missing the default value will be used… can be used with normal ?<> conditionals or %if() (both number and name should work)
For the user to actually use this he needs to create /.rockbox/wps/skinsettings.txt which has the same syntax as .cfg files. i.e "name: value" and #comment.
This first version is very stupid and loads the .txt file into every skin which has a least one %Sl(), but the final version will do this much smarterer. (Also these settings are static so the values should be loaded at parser time instead of runtime.)
Also a plugin could be made to dump the allowed values for the used theme (or all skins) to disk to make it easier.
Because there is no limit to what the settings could be, I'm hoping that defacto setting names will just happen, the theme site could help with this also. It isnt a big deal if theme A accepts different values for a setting than theme B though.
Lastly, I need to also add a simple way for yes/no type settings %?Sv(show aa)<%Cd> should be able to work… Actually, brain fart time… because the settings are loaded at parse time we could probably use the feature handling code to always only parse the correct branch which would save a bunch of skin buffer and render time.
|
|
11702 | Patches | Codecs | Very Low | mpc filterbank synthesis optimization | 2010-10-25 | Andree Buschmann | 2010-11-10 | 9 |
Task Description
This patch resorts the v-array within mpc’s synthesis filter. Through this data is placed more locally for the performance critical function mpc_decoder_windowing_D() and allows ldm-usage in the asm’ed parts.
This first patch does work for simulation but not for ARM or CF builds. An update with more optimized ARM asm will follow, CF asm needs to be corrected by someone with knowledge on CF assembly.
The output is binary identical.
|
|
11733 | Patches | Plugins | Very Low | Resistor calculator: BMP for greyscale targets. | 2010-11-07 | Calvin Walden | 2010-11-07 | 1 |
Task Description
r28528
This adds a bitmap to be shown as the output of the 3 modes of the calculator, similar to the color-codes on the color targets, except that it is a static image for the greyscale targets. Might as well use the screen space for something.
|
|
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.
|
|
11752 | Patches | Plugins | Very Low | pitch_detector: Mixed accidentals and Key Transposition | 2010-11-12 | Robert Horn | 2011-01-15 | 3 |
Task Description
Patch against r28560.
Adds options for displaying pitches according to key (for transposing instruments) and “mixed” accidentals a la Korg (C#, Eb, F#, G#, Bb).
I’d also like to add some kind of support for alternate temperaments (perhaps even just intonation), however this isn’t trivial and I probably won’t undertake the project unless some interest is expressed.
|
|
11759 | Patches | Codecs | Very Low | Rearrange libmad synthesis memory acceses for arm | 2010-11-15 | MichaelGiacomelli | 2011-04-08 | 13 |
Task Description
Work in progress patch. Currently decodes audio but with some glitches. Has a small mountain of debug code included.
The basic idea is to rearrange the D filter coefficients in the synthesis filter so that pairs of them are used sequentially. This is not easy because the taps need to be loaded in the seemingly random order needed by the audio samples. However, this rearrangement seems to be possible:
0 1 2 3 4 5 6 7 (original sequence) 0 2 1 3 4 6 5 7 (new sequence)
The complication is that the code assumes that it can start a new filter at any offset, even odd ones, which means each and every filter needs to be rewritten 4 times, one for each of the 4 possible alignments. This patch does that.
Once I'm certain that it works, I intend to convert the D coefficients to packed 16 bit values, then use packed 16 bit multiply instructions on ARMv5E+. This should lead to a small speed up on armv4 (just because ldm instructions can be used instead of ldr) and a very large speed up on arm9E and arm11 (because packed multiplies are tremendously faster and much easier to pipeline).
|
|
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.
|
|
11803 | Patches | Language | Very Low | Patch to add basic support for SVox Pico when building ... | 2010-12-10 | Kyle | 2010-12-10 | 1 |
Task Description
This patch applies to the tools used to generate voice files and talk clips. It adds basic support for the free SVox Pico speech synthesizer, which is the default speech system on Android phones, and is also available on Linux and Windows. Support for this synthesizer is very basic, because the pico2wave utility used to generate wav files of synthesized speech lacks the ability to set speed, pitch, volume, etc. This patch has so far only been tested for English, although several other languages are supported by the synthesizer. Note that you will need the SVox Pico synthesizer installed on your system. On Ubuntu 10.10 and most recent Debian-based systems, installing libttspico-utils should automatically pull down the correct files. This patch hasn't been tested on Windows, but it should work if pico2wave.exe is in your path.
To build voice files using SVox Pico, apply this patch and run
tools/configure –type=AV
Then select your target from the list. The rest of the defaults should be fine, but be sure to type "p" when the script asks for the TTS engine to use. Then run
make voice
and copy the .voice file into .rockbox/langs. The next time you start Rockbox, you should hear your voice prompts spoken using SVox Pico.
To generate talk clips for filenames and directories using SVox Pico, apply the patch and run
tools/voice.pl -C -s=pico -S= -e=rbspeexenc -E= <directory you want spoken>
Your talk files will be generated recursively in the directory you specify. All _dirname.talk and .talk files that correspond to individual files will be generated, with the exception of the _dirname.talk file for the top level directory you specified.
Please test this patch and provide any feedback you have. Thanks.
|
|
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.
|
|
11864 | Patches | Plugins | Very Low | Working LUA Flashcard Program | 2011-01-07 | Steve | 2011-04-29 | 4 |
Task Description
I have written a basic flashcard program for LUA and am attaching source code and an example data file. I am using a Sansa Clip+ so YMMV. It uses ANKI format text files which are tab delimited txt. You may use UTF8 for the flashcard if you have your device set as such. To use, save the two included text files in the same directory and run. The card data file, Russian.txt, is a typically UTF8 encoded text file exported straight from ANKI with no modifications. I am using a size 8-fixed font in the screen shots.
Things I would like to see done:
1. Making the code more generic to run on all rockbox platforms.
2. If someone would tell me how to play vorbis files from LUA on a clip+, I might be able to implement playing the vocabulary words as they are displayed on the device. I am already parsing the audio file names from the database, but I need a function to play them.
3. If LUA/Rockbox supported SQLite, It might be possible to read and write native ANKI database with scheduling information. This would facilitate programming of advanced flashcard scheduling for efficient learning.
4. A menu to select different databases.
Looking forward to feedback!
|
|
11883 | Patches | Operating System/Drivers | Very Low | Close all files and safely unmount disks before enterin... | 2011-01-16 | sideral | 2011-04-08 | 5 |
Task Description
The attached patch implements a clean disk unmount by way of the following changes:
Patch 1: Allow disk_unmount_all to close all files and flush dirty buffers when unmounting a filesystem. (Before, we've been calling disk_unmount, which does not flush buffers because it's written to handle user-ejected storage media that aren't accessible any more.)
Patch 2: Call disk_unmount_all in the power-down and reboot paths.
Patch 3: Fix write to detect a bad file handle.
(Split out from FS#11877, in which I first theorized that an unclean filesystem may be responsible for some filesystem corruption I'm seeing, but which turned out to be a deeper problem. Related to r28693 / FS#11774 , in which we introduced disk unmounting before entering USB mode.)
|
|
11891 | Patches | Codecs | Very Low | Add mp3 gap skipping support to improve gapless playbac... | 2011-01-18 | Andrew Tefft | 2011-09-02 | 1 |
Task Description
As we know, rockbox will use the information provided by "good" mp3 encoders (e.g. LAME) to ignore the extra padding that occurs at the beginning and end of each mp3 file, so that true gapless playback can occur. Unfortunately we do not always have the luxury of encoding our mp3 files in this way but we might still want true gapless playback. This patch compensates for the use of "dumb" mp3 encoders that do not record the necessary information for this feature.
In cases where it does not detect the proper header information to trim off the extra padding, it will optionally skip up to a full frame of silence (or near silence) at the beginning and end of each track (if the trimming is already specified, this patch does not do any additional trimming).
This can potentially eliminate up to a frame of "real" silence at the beginning or end of a track, but in terms of audibility, that would be completely unnoticeable (and it would only happen on these badly-encoded tracks), while the extra silence is an audible annoyance.
I have added an option to the Playback Settings menu so that the user can disable it if desired.
|
|
11898 | Patches | Playlists | Very Low | This is a preliminary patch to add keymaps needed for p... | 2011-01-21 | foolsh | 2011-02-03 | 17 |
Task Description
This is a preliminary patch to add the key maps needed to compile plugins for the android port. It is mostly complete.
You will need to change plugins=”yes” line 2790 of file /tools/configure but this breaks the sdl port.
Most plugins seem to work well some don’t, I have not tested all plugins yet but will start as soon I post this.
To a section to tools/configure that defines plugins=”yes” for the android port and “no” for the sdl port
Testing testing testing
patch probably breaks some targets because of logo.c defaulting to a generic keymap which I changed “commented out” and added #error No keymaps defined! so the compiler will not just over look it. Let me know what breaks and I will try to fix it.
|
|
11927 | Patches | Database | Very Low | Queue overflow during database initialisation | 2011-02-11 | Steve Bavin | 2011-04-14 | 2 |
Task Description
While the database initialisation is running, the tagcache queue can overflow due to system broadcast messages. This can be seen by running a simulator (it will crash with KERNEL_ASSERT after a while) or on a target by enabling KERNEL_OBJECT_CHECKS, then initialising the database and repeatedly connecting/disconnecting a charger.
The same problem may well happen with other queues (dircache, for example).
|
|
11930 | Patches | Games | Very Low | Bomberman | 2011-02-12 | Lev Panov | 2011-02-12 | 2 |
Task Description
Bomberman like game with ai. Not finished yet - lots of bugs and things to be done are known :) Tested on Cowon D2 and also on some simulators with the same screen size (will work on other screen sizes too, but not now). Somebody test it on iPod Video and on Zen Vision:M please. Any suggestions greatly appreciated! Hope the patch will work…
|
|
11959 | Patches | User Interface | Very Low | Feature: Use buttonlight as a disk activity indicator | 2011-02-22 | Calvin Walden | 2011-02-22 | 1 |
Task Description
3.7.1, r29372, tested on Sansa e270
The idea is that when connected via USB, devices with button/wheel lights will indicate disk activity using the light, similar to a USB flash drive.
This works, sort of. One real problem has been encountered: The calls to buttonlight_on() and _off() seem to override the backlight_timeout_plugged setting, preventing the backlight from shutting off when this is enabled.
|
|
11975 | Patches | User Interface | Very Low | Apply "Backlight on first keypress" only for certain ke... | 2011-02-28 | sideral | 2011-04-25 | 1 |
Task Description
I didn't like that the "Backlight on first keypress" function ignores the first keypress no matter which key was pressed. For example, I want the volume keys to work normally even when the backlight is off (that is, they should turn on the backlight *and* change the volume).
This patch restricts "Backlight on first keypress" to certain buttons only. in other words, these buttons work normally only when the backlight is on; otherwise, they just turn on the backlight. As a proof of concept, it changes the Clip and Clip+ behavior to filter out only the Home key when the backlight is off, allowing the other keys to function normally.
It works by allowing button-target.h to define the buttons that are filtered by the "Backlight on first keypress" function. If left undefined, the function filters all buttons when the backlight is off, as in the status quo.
[EDIT: Clarified that there is no overlap with FS#9305 - Context sensitive backlight on key press]
|
|
11977 | Patches | User Interface | Very Low | autoresume: Add option to prevent accidental rewind to ... | 2011-03-01 | sideral | 2011-03-01 | 1 |
Task Description
Split out from FS#11748 .
This patch adds an option to prevent rewinding to the beginning of a track to avoid losing the current playback and resume position by accidentally pressing the Left key. Instead, Left always directly skips back to the previous track. This behavior can be enabled for all tracks or only for those tracks that can be autoresumed on automatic track change (which already is separately configurable).
I'm dropping this patch here for now because I see little chance right now of this being accepted into the trunk. Some developers have complained about the considerable configuration complexity of autoresume as it is, and although this additional behavior can be convenient, there is no ultimate need for it because the resume position prior to the rewind to 0:00 is preserved as long as another skip occurs within the first 15 seconds of the rewound track's playback (for example, by pressing Left again to skip to the previous track).
This change was originally contributed by Dave Slusher in FS#11748 . I just added the configuration logic.
Patch relative to r29484.
|
|
11978 | Patches | Codecs | Very Low | New Atari SC68/SNDH codec based on the SC68 library by ... | 2011-03-01 | Mauricio Garrido | 2011-06-10 | 7 |
Task Description
Hi, this is a new codec based on the SC68 library by Benjamin Gerard (sc68.atari.org).
Revision: 29484 Tested on: Sansa Fuze v2
Features:
44 Khz Stereo sound.
Supports sc68 and sndh files.
Support for multi track and single track files.
Metadata parsing.
Fade out support.
** This codec needs the sc68 Replay folder to work, just put it in the root of your player. you can find one here: http://aminet.net/package.php?package=mus/play/sc68.lha
Notes:
1. This is a beta codec, some (big) songs may cause rockbox to crash.
2. When compiling the sc68 library i had a lot of dependencies errors with
missing includes. It is compiling fine now on the vmware image, but not in cygwin.
I still have to find the problem with that.
3. Some songs doesn't work, specially some big sndh files. I'm still working on it.
4. Seek support is broken, i'm working on it.
Please feel free to make any comment or suggestion.
|
|
11989 | Patches | Plugins | Very Low | Contacts plugin written in LUA | 2011-03-03 | Gabriel Maia | 2011-04-16 | 3 |
Task Description
Rockbox already exists for several years (fortunately), however it doesn't include a contacts list plugin by default, most likely because no one had coded one until now. As it's something that sometimes becomes handy, I decided to write my own, and as it's a simple enough plugin I've written it in LUA, to serve the purpose of a contacts plugin, to have a working example of a LUA plugin (that is not a game) and to explore the (im)possibilities of the LUA interpreter of Rockbox.
So this task will handle the development of a contacts plugin. Attached goes a BETA (but already very complete) version of the plugin. Just copy to your device (any location) and "play" the file. The database where the contacts are stored is located at the root of your player, in a file called contacts.txt. The name and location of this file is subject to change in future versions, but the way contents are stored will probably keep being the same, so you can start adding your contacts (you can edit the file in the PC as long as you keep the format valid for LUA interpretation).
Key features (already implemented): - View first, middle and last name of the contacts just after you open the plugin (fixed name order) - Add contacts (lots of fields, I won't be adding more for now) - Delete contacts (permanently and without confirmation, take care) - View contact fields (after selecting it in the menu) - View specific fields in their own screen (where you can also clear and, in the future, edit them) - (Should be) Compatible with any Rockbox target that interprets LUA because the interface is entirely made of standard RB menus - Works (at least) on my iPod Nano 2nd Gen - Wonderful LACK OF warranty that it will work or that the plugin won't delete your contacts accidentally. Use keeping in mind this is a BETA version
To be implemented (for sure): - Edit contacts To be implemented (when I have time): - Order the way names are displayed (e.g. first→middle→last to last→first→middle) - Search for contacts by inputing part of any of the fields content - Order contacts by categories (that's why there's a "Category" field on them) To be implemented (if my programming skills allow it): - Associate a image file to a contact, which will be shown when the contact is selected (and if someone codes it, why not a pictureflow of contacts?) - Import and export contacts as vCards - More configurable settings
Another additional note is that the current code of the plugin is not in agreement with the Rockbox coding style guidelines, I've tried to keep the number of chars in each line under 80, but there are lines where this is false. Also, the tabs are double-space instead of four spaces. This will be corrected when I finish the plugin.
Please test on your player and share the results, as well as any bugs or suggestions you might find.
|
|
12025 | Patches | Plugins | Very Low | Ohm's Law Calculator added to resistor.c plugin | 2011-03-23 | Leif Andersen | 2011-03-28 | 3 |
Task Description
(Made using r29635)
This plugin adds an Ohm's Law calculator feature to the resistor.c plugin. It takes two inputs, of either (voltage, resistance, current, power), but not both of the same time, it will then calculate the other two values.
|
|
12027 | Patches | Configuration | Very Low | Add the Zipit Z2 as an build target. | 2011-03-24 | Don Heyse | 2011-06-05 | 7 |
Task Description
Here’s a patch to version r29143M-110324 that adds the Zipit Z2 as a build target. It requires one new file (also attached) firmware/target/hosted/zipit/powermgmt-zipit-z2.c to monitor the battery.
This is mostly a generic SDL app with a few tweaks for the Zipit buttons and battery monitoring. The patch also includes a few small bug fixes for SDL app builds. I had to fix the labels in the asm section of lcd-16bit.c. There were some missing parenthesis on an #ifdef in button-application.c. And the apps/SOURCES file needs an #ifdef to handle an SDL app build without touchscreen support.
|
|
12029 | Patches | Plugins | Very Low | SDL_PAD keymaps for plugins on SDLAPP build without TOU... | 2011-03-25 | Don Heyse | 2011-03-25 | 1 |
Task Description
If you build RaaA for SDL with HAVE_TOUCHSCREEN disabled there are no key bindings for the SDL_PAD in any of the plugins. This patch attempts to define generic key mappings for the 3×3 number pad on a typical PC keyboard. It needs work however. For instance, after a bit of testing I decided I’d prefer not to wait for a key repeat on the HOME button to quit most of the plugins. That said, it may prove a useful starting point developers building for RaaA platforms without a mouse or touchscreen. (Like me with the zipit.)
For the Zipit I plan to fix up the generic SDL keys first, testing on a real PC, and then try and figure out a way to use most of them as is. I’m not sure yet if it makes sense to define a ZIPIT_PAD for the few plugins where alternative keys make sense, or use some other #ifdef.
|
|
12054 | Patches | Database | Very Low | Highlight each album's last-played track in database vi... | 2011-04-07 | sideral | 2011-08-09 | 3 |
Task Description
The attached proof-of-concept patch highlights (places the cursor at) each album's last-played track in database views. The intention is to allow easy resuming of multi-track audiobooks or podcasts where they were last left off. This works best when autoresume has also been enabled.
The patch relies on runtime statistics gathering being enabled (and the DB needs to be enables as well, of course).
The current patch has some caveats that I plan to address in future revisions:
Right now, it's unconditionally enabled for all database-based track views. We might consider allowing to turn this off for regular music albums.
When the last-played track has been completed (played through to its end), we should actually highlight the next track (or the first track if the last-played track was the final track of the album). [EDIT: fixed – see latest patch in comments section]
It would be great if a similar feature was available for the file browser. I'd find it acceptable if that would require the DB as well (as that's the place where the last-played info is stored). It could benefit from an add-to-DB-as-files-are-played feature (aka FS#12073).
Comments?
[EDIT: Clarified summary. Fixed a rather severe bug in the patch to make it actually work. :) ] [ EDIT 2: Linked to FS#12073. Addressed one caveat. ]
|
|
12073 | Patches | Database | Very Low | Dynamically add files to database as they are played | 2011-04-18 | sideral | 2011-04-19 | 2 |
Task Description
These experimental patches dynamically add new tracks to the database when they are played. This allows users who (for various reasons [1]) prefer to not fully initialize the database to take advantage of database-based features such as autoresume (remember a resume position for each file), runtime statistics, or track ratings.
The current patch set is only a prototype. It's still somewhat inefficient because it does a full database commit and reload for each new track that is played.
The actual database-extension patch (patch 0002) works by refactoring tagcache_build to create a new interface, tagcache_add_file, that adds a single file to the database. This new function runs in the database thread and takes a dircache_entry pointer, which is provided by way of a Q_UPDATE event. The audio thread generates this event in tagtree_buffer_event when the initial DB lookup fails, and later checks the database again in tagtree_track_finish_event. If the DB commit and reload have succeeded in the meantime, this second lookup will succeed and the runtime information the user is interested in (stats, resume info) can be stored in the DB.
Patch 0001 changes the DB commit's buffer-allocation preference from using the dircache buffer to using the RAM DB's buffer. (This used to be the preference until r10003 reversed it, supposedly because the dircache buffer typically is bigger. I don't know yet how valid this argument is today.) This reversal avoids needlessly flushing and refilling the dircache and makes the Q_UPDATE event-passing mechanism more robust (because in-flight update events contain dircache_entry pointers, which would have to be invalidated when the dircache is flushed – which is not done yet).
Current limitations/caveats: * Requires dircache and Load-DB-to-RAM enabled (and only works on targets that include these features) * tagcache_add_file does not respect any database.[un]ignore files in the directory hierarchy above the added new file. * DB needs to be initialized to begin with. There's no UI function for a basic DB initialization (without scanning and adding all files) yet. * Not very thoroughly tested (mostly in simulator, with small file sets)
Possible improvements: * Delay committing DB changes if more track-add events are in the tagcache queue * Incremental commit: Could be optimized for add-one-track case * Incremental load_tagcache: Avoid flushing and reloading full database * Add function to initialize an empty DB
Comments welcome!
Footnote: [1] Reasons for not using the database, or not keeping it up to date, include: metadata parser instability; prefer not keep tags up to date; prefer file browser over database browser
|
|
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
|
|
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.
|
|
12080 | Patches | Music playback | Very Low | Scrobbledroid API support for Android | 2011-04-25 | Matt Muscari | 2011-05-22 | 1 |
Task Description
Adding last.fm scrobbling support to the Android version via one of the existing Android Last.fm apps is actually very easy - the log file approach doesn't seem to be compatible with e.g. the actual Last.fm app. Last.fm supports the scrobbledroid api. Adding scrobbledroid intents into the RunForegroundManager class adds support for scrobbling in about 10 lines of code. Attached is a patch to add in the appropriate intent creation and sending. This code could be modified to allow toggling via the settings page, but I don't know much about the native framebuffer code for the UI that is used by rockbox for android. I leave that to somebody else to implement if this is deemed to be too inflexible. I just want to submit this code so that others may enjoy last.fm support without having to jump through hoops to upload log files to last.fm on Android devices.
|
|
12101 | Patches | User Interface | Very Low | Option for date format | 2011-05-07 | Matthieu Pupat | 2011-05-10 | 1 |
Task Description
Attached is a patch that:
* adds an option to chose the date format in the system menu (choice between YMD, DMY and MDY) * adds a %cF theme tag so that theme can know in which order to display the date
There are a few new strings that I only added in English.
This is my very first rockbox patch so please let me know if anything should be improved.
I did the patch against svn 29827 and tested it in a simulated Fuze v2 as well as a real one.
|
|
12125 | Patches | Operating System/Drivers | Very Low | Use persistent dircache without HAVE_EEPROM_SETTINGS | 2011-05-22 | Rosso Maltese | 2011-07-06 | 3 |
Task Description
The patch allows to use the persistent dircache even in targets that do not define HAVE_EEPROM_SETTINGS.
Starting trying to implement such a feature for my iPod Video, I "discovered" the functions dircache_load/save (I have a slight knowledge of the RB software). Investigating why it was not used on my target, I saw that it's conditioned to the define HAVE_EEPROM_SETTINGS without an apparently reason to limit them just to some targets. So, I simply "detach" the functions definition and use from the define. I'm using it since an hour, starting up and shutting down the DAP various times, jumping back and forth inside the dynamic play list, and I got no problems at all.
If I guess correctly the code, the dircache should be updated also when changing the DAP content, if the USB connection is done by RB and not the OF.
It's applied to r29907.
|
|
12131 | Patches | Plugins | Very Low | rockout sampler/drum machine | 2011-05-26 | Shane Wilson | 2011-06-22 | 6 |
Task Description
rockout is a sampler that can play 6 samples at a time (unlimited playback length). sample playback is 16 bit 44.1khz. you can play samples back, you can glitch samples out using the glitch sequencer, there is echo, there is distortion, backwards, and a record loop function. you can load your own samples into rockout (stereo .WAV 16bit 44.1khz files) rockout currently works on the sansa e200 series and c200 series. don't hold your breath for other players to work, due to their greatly lower amounts of RAM.
—
rar file only includes 1 very small/crappy sample pack. more (better) sample packs available at:
1) the motherload: 10 folders of samples, almost all hand selected/cut by myself: http://www.megaupload.com/?d=BXMTW9T8
2) individual folders:
https://docs.google.com/leaf?id=0BwiF_VSZhsHjNjY1OWQzZTQtY2M2Zi00M2NhLWJlN2EtOTI0Nzk2MTJiYjI5&hl=en_US
https://docs.google.com/leaf?id=0BwiF_VSZhsHjYjQwMGFmOTMtMjM4YS00YTZjLWJkNzUtZTEzOGEzMTU0YzI0&hl=en_US
https://docs.google.com/leaf?id=0BwiF_VSZhsHjNjE0ZTc3YTUtYTNiZS00ZGJjLThmNTQtNmQ1MWU0NTk3YjRj&hl=en_US
https://docs.google.com/leaf?id=0BwiF_VSZhsHjNjM4NzMxYzQtZTVkZC00OGZhLThiZDUtMjYyZTgzNzFmZWQ2&hl=en_US
https://docs.google.com/leaf?id=0BwiF_VSZhsHjMjFiNDk2ODQtZmU2YS00Yzk0LTg3YTMtNDY1YWMzYjU4ZmM0&hl=en_US
https://docs.google.com/leaf?id=0BwiF_VSZhsHjN2MxZWE0NTAtMmJmMS00YmZjLWFjM2YtMjM1NzlhOWUyMmMz&hl=en_US
|
|
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.
|
|
12149 | Patches | Database | Very Low | Read Lyricist/Text writer from mp3 id3 tag for display ... | 2011-06-05 | Kaname Madoka | 2011-07-03 | 1 |
Task Description
This patch allows for the display id3 (v2.2-v2.4) tag of Lyricist/Text writer in the wps, database, track info.
To display in wps, use "%iw" tag.
Example:
# Disable Status Bar %wd # Title %s%al%?it<%it|%fn> # Artist %s%al%?ia<%ia|%?d(2)<%d(2)|%(root%)» # Album %s%al%?id<%id|%?d(1)<%d(1)|%(root%)» %?iy<%(%iy%)|> # Songwriter %s%al%?iw<writer %iw|> # Composer %s%al%?ic<composer %ic|> # Comment %s%al%?iC<%iC|> # Time PlayNumber %al[%pc/%pt] %ar%(%pp/%pe%) #%s%ac%Sx(Next:) %?It<%It|%Fn>
Tested on sansa c200 v1. Target source code revision is #29961.
The following files were changed: apps/screens.c apps/metadata/id3tags.c apps/metadata/metadata_common.c apps/lang/japanese.lang apps/lang/english.lang apps/gui/skin_engine/wps_debug.c apps/gui/skin_engine/skin_tokens.c apps/metadata.c apps/metadata.h apps/tagcache.c apps/tagcache.h apps/tagnavi.config apps/tagtree.c lib/skin_parser/tag_table.c lib/skin_parser/tag_table.h
Currently, only English and Japanese languages are supported.
I am not good at English. Please point it out if there are a problem.
|
|
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.
|
|
12189 | Patches | Codecs | Very Low | Simplify the codec API and don't always loop MODs. | 2011-07-11 | Sean Bartell | 2011-08-31 | 3 |
Task Description
This patch makes some changes to codec_api to help remove dependencies for my project.
The unused strcasestr callback is removed.
The global_settings pointer was being used by several codecs to check whether REPEAT_ONE mode is on; this has been replaced with a callback "should_loop()".
The MOD codec has been modified not to restart the file when it reaches the end. This does not affect MOD files that use "position jump" to loop part of the song. Ideally the MOD codec would only follow such loops if should_loop() returns 1, but detecting loops is nontrivial.
|
|
12191 | Patches | Drivers | Very Low | Higher quality audio hw settings for AS3515 (Clipv1, Fu... | 2011-07-17 | Stefan Keller | 2011-07-29 | 3 |
Task Description
This patch changes some of the settings of the AS3515 to highest audio quality, similar to FS#11304 but for AMSv1.
AUDIOSET2_IBR_DAC_50 → AUDIOSET2_IBR_DAC_0
0% reduction (instead of 50%) of DAC bias. This will probably increase power consumption.
Not set AUDIOSET3_IBR_HPH.
Increases HP amp bias. Recommended by the data sheet for 16Ohm loads (and will probably reduce THD).
Would be great if these settings could be changed during audio playback to listen for any actual changes in quality :)
|
|
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?
|
|
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
|
|
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.
|
|
12225 | Patches | Utils | Very Low | Fix compiler warning in utils/rk27utils/rkboottool | 2011-08-10 | Uwe Kleine-König | 2011-08-10 | 1 |
Task Description
The attached patch fixes a minor compiler warning on 64 bit platforms.
|
|
12240 | Patches | Codecs | Very Low | rbcodec refactoring part 1 | 2011-08-22 | Sean Bartell | 2011-08-28 | 6 |
Task Description
Continuing from FS#12204 , these patches remove some of the dependencies librbcodec has on the rest of Rockbox.
0001: puts equalizer settings in the parameters of dsp_set_eq_coefs, removing the need to access global_settings from dsp.c
0002: makes dsp_process yield each iteration instead of once each tick, which is tricky to do portably. If this is undesirable, I can work around it.
0003: moves some replaygain stuff around so dsp.c doesn't have to access global_settings.
0004: instead of dsp.c and tdspeed.c allocating buffers, buffers are allocated elsewhere and passed to dsp_timestretch_enable(). The necessary buffer size is determined by calling dsp_timestretch_get_buffer_size().
0005: replace get_audio_base_data_type() with audio_format_is_atomic(), removing a dependency on TYPE_PACKET_*.
0006: move autoresumable() to playback.c, removing another dependency on global_settings.
|
|
12242 | Patches | Codecs | Very Low | rbcodec refactoring part 2 | 2011-08-22 | Sean Bartell | 2011-08-22 | 7 |
Task Description
Continuing from FS#12240, these patches remove most of the rest of the dependencies librbcodec has on the rest of Rockbox.
|
|
12264 | Patches | Operating System/Drivers | Very Low | Make logf() output via serial optional (advanced config... | 2011-09-08 | Ralf Ertzinger | 2011-09-08 | 1 |
Task Description
By default logf() will output to the serial port if that is enabled (HAVE_SERIAL). This is kind of distracting if logf() is used to debug serial communication itself.
The attached patch does the following: - make logf() only output to serial if LOGF_SERIAL is defined (defaults to undef) - adds an advanced configure option to enable LOGF_SERIAL
The patch is against r30429.
|
|
12277 | Patches | Themes | Very Low | WPS tags for the list item number and the "divisible" o... | 2011-09-13 | Alexander Levin | 2011-09-18 | 2 |
Task Description
The patch adds two new WPS tags:
1. %Ln yields the number of the list item currently being drawn
2. The operator "/?" (which can be used in the %if tag) yields the string "div" if the first operant is divisible by the second and NULL otherwise.
With these two additions it should be possible to create themes where list items are coloured alternately (as an example).
The whole work has been done by gevaerts on 2011-09-12 (and all the credits also go to him), I only placed the patch to the patch tracker, changed the operator from "/" to "/?", and changed the function name from "skinlist_get_item" to "skinlist_get_item_number".
He posted the patch on the binpaste and it would be pity if it got lost.
|
|
12312 | Patches | Operating System/Drivers | Very Low | Android: Stop tick timer when app is closed | 2011-10-04 | Björn Stenberg | 2011-10-04 | 1 |
Task Description
Our tick timer eats CPU even when the app is closed and music is stopped. To fix this, I added a tick_pause() and tick_resume() to kernel-android.c, to be called from java when appropriate.
I've figured out where to call pause, but the current location of resume is inadequate. The app wakes up to a black screen.
A clue, anyone?
|
|
12330 | Patches | Database | Very Low | Add a nice UI to configure database search directories | 2011-10-12 | Jonathan Gordon | 2011-10-12 | 1 |
Task Description
This patch does all the UI work needed to add a very nice folder chooser. It saves and loads the search directories from /.rockbox/database.txt.
This is only the UI change, someone else needs to figure out how to make it actually work.
The system changes to searching the entire tree below folders (so no more ignoring some folders and then looking for uningored folders.
this also uses a half done patch to make lists handle indenting, not done for the skin list but if this is actually wanted that can be easily added
|
|
12334 | Patches | Utils | Very Low | Update to my tools/talkclips.py script | 2011-10-15 | Daniel Dalton | 2011-10-15 | 2 |
Task Description
Update to my tools/talkclips.py script. Minor updates which include: - Better handling of logfile eg. we don't leave it open as was the case before - Report a few more details in the log eg. start/end time, duration, and number of talk clips created. This is useful to dettect how many files had problems… - Summarise output for user at end, of processing, number of talkclips created and how long this took (in seconds). - Report to user how many talk clips will need to be created to give them an indication of potential waiting time etc. This is calculated by first determining how many files are on the device excluding .talk files, and how many .talk files there are, and calculating the difference. - This information allows a percentage indication to be drawn throughout the script, so now the user can track the percentage as processing takes place.
Patch is attached.
Thanks.
|