Commit graph

13663 commits

Author SHA1 Message Date
Michael Sevakis
b474d0d98f Change add_handle to never have side effects on the buffer if it fails. It actually seems ok and I'm not sure if's responsible for anything, but it's more sane and keeps buffer_handle from regressing buf_widx later if buffering cur_handle.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29291 a1c6a512-1295-4272-9138-f99709370657
2011-02-13 10:44:13 +00:00
Michael Sevakis
50c727ce7a Oops. Put back some changes to go only with others.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29289 a1c6a512-1295-4272-9138-f99709370657
2011-02-12 12:33:43 +00:00
Michael Sevakis
3c81bf0c13 Fix move_handle in buffering. Calculating wraps by buffer_len - 1 is incorrect. Switch handle movement to memmove calls exclusively.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29288 a1c6a512-1295-4272-9138-f99709370657
2011-02-12 12:18:09 +00:00
Andree Buschmann
3f377e568e Use menu layout for sleep timer that is consistent to other timers. Closes FS#11923.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29283 a1c6a512-1295-4272-9138-f99709370657
2011-02-11 16:15:11 +00:00
Frank Gevaerts
4421cfedf0 Make sure there is a logo for LCD_WIDTH>480 && LCDWIDTH<600 (useful for 600x1024 LCDs)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29281 a1c6a512-1295-4272-9138-f99709370657
2011-02-11 11:28:21 +00:00
Michael Hohmuth
a5303765ec autoresume: Match full directory path names only in autoresumable()
Removed genre-tag matching (considered too fragile for real-world use).

Removed substring matching for file names.  To avoid unintended
matches, the search pattern now must match the file's full dir name
(or a parent directory thereof), anchored in the root directory.

Search strings now must be delimited with ":" rather than ",".  The
default list of directories is "/podcast:/podcasts" (case-insensitive).

Made implementation somewhat more efficient (don't use strtok -> no
need to copy the string to private storage (stack) before tokenizing
it).

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29280 a1c6a512-1295-4272-9138-f99709370657
2011-02-11 00:20:03 +00:00
Michael Sevakis
bdec638b9b Always do proper mp3entry copying instead of using bufread directly. Add bufreadid3() helper.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29279 a1c6a512-1295-4272-9138-f99709370657
2011-02-10 22:03:39 +00:00
Alexander Levin
82a8ad643a Fix a couple of typos in the comment in english.lang. Whether the comment is correct is another question which is not the subject of this commit.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29278 a1c6a512-1295-4272-9138-f99709370657
2011-02-10 20:55:39 +00:00
Andree Buschmann
57ca48458f Fix test plugin build.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29277 a1c6a512-1295-4272-9138-f99709370657
2011-02-10 20:20:12 +00:00
Michael Sevakis
edfff8a5ef audio_peek_track should copy the struct mp3entry instead of pointing directly into the buffer. Despite the dire warning, caller does in fact yield/sleep and its usage is too nonlocalized to control that reliably.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29275 a1c6a512-1295-4272-9138-f99709370657
2011-02-10 10:26:07 +00:00
Michael Hohmuth
e93713ba3c autoresume: Simplify configuration option for resume on automatic
track change

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29271 a1c6a512-1295-4272-9138-f99709370657
2011-02-10 09:37:58 +00:00
Michael Sevakis
88d91faba5 buffering: Don't execute move-handle-ony case if handle is of metadata type (atomic) and must be kept fully buffered. Manage handle corruption guard and handle buffering with one set of logic which allows reading of the maximum amount of data without overflow. 'FIXME' regarding handle corruption guard is really part of expected operation when thread that does the handle closing hasn't yet performed the delegated task before rebuffering starts.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29270 a1c6a512-1295-4272-9138-f99709370657
2011-02-10 05:56:21 +00:00
Thomas Martitz
bf1ca7041e Hopefully all green now
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29263 a1c6a512-1295-4272-9138-f99709370657
2011-02-09 20:51:11 +00:00
Thomas Martitz
c64e5e675a Fix remaining reds.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29262 a1c6a512-1295-4272-9138-f99709370657
2011-02-09 20:38:36 +00:00
Thomas Martitz
86cab2e27a Disable buffering codecs (and code generally) on RaaA.
It's not useful to do it since you need to write back the code to disk to be able to load it from memory, it also requires writing to an executable directory.
Keep it for the simulator for the sake of simulating.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29261 a1c6a512-1295-4272-9138-f99709370657
2011-02-09 20:27:23 +00:00
Thomas Martitz
82eec87dd6 Fix red. Not all targets have album art support.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29260 a1c6a512-1295-4272-9138-f99709370657
2011-02-09 20:22:55 +00:00
Thomas Martitz
f577a6a22c Embedded album art support in MP3/ID3v2 tags.
- Support is limited to non-desync jpeg in id3v2 tags. Other formats (hopefully) follow in the future.
- Embedded album art takes precedence over files in album art files.
- No additional buffers are used, the jpeg is read directly from the audio file.

Flyspray: FS#11216
Author: Yoshihisa Uchida and I

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29259 a1c6a512-1295-4272-9138-f99709370657
2011-02-09 20:13:13 +00:00
Michael Sevakis
0d902c8c54 Buffering should align itself and not rely on buffering_reset parameters when storage alignment matters so that wrapped reads maintain alignment.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29258 a1c6a512-1295-4272-9138-f99709370657
2011-02-09 09:30:09 +00:00
Michael Sevakis
19ea72ff63 buffering: Fix a case that could allow widx to fully wrap to ridx and overflow the ringbuffer.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29257 a1c6a512-1295-4272-9138-f99709370657
2011-02-09 08:44:37 +00:00
Michael Hohmuth
5afd0668e5 Fix red: Do not compile autoresume() function for the database tool.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29252 a1c6a512-1295-4272-9138-f99709370657
2011-02-08 20:50:25 +00:00
Michael Hohmuth
7141ff4513 Add option to resume next track on automatic track change
Move autoresume setting into its own menu.  Add option to customize
which tracks should be resumed on automatic track change.  Tracks can
be selected based on their their file location or genre tag
(comma-separated list of filename / genre substrings).

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29251 a1c6a512-1295-4272-9138-f99709370657
2011-02-08 20:31:35 +00:00
Michael Hohmuth
4844142e16 Do not update resume information and do not log statistics when a
track is interrupted within the first 15 seconds.

Regard a rewind to 0:00 as a track restart (updating resume position /
playback statistics before the rewind and starting the 15 s delay).

This allows skipping forward across an unplayed track without changing
its resume offset.  Also, it is possible to skip backward to the
previous track after rewinding to the current track to 0:00 (pressing
Left twice) without losing the current track's resume position.

Initially contributed by Dave Slusher

Caveats:

* Works only for SWCODEC
* Skipping forward without altering the resume position does not work
  when skip to outro has been turned on.
* The 15-second window in which the resume offset will not be updated
  should start at the initial resume position, not at 0:00.  This
  would allow skipping over partially played tracks without altering
  the resume position.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29250 a1c6a512-1295-4272-9138-f99709370657
2011-02-08 20:31:27 +00:00
Michael Hohmuth
f0ce188681 Make enable-autoresume option more consistent with other settings.
Rename "Enable automatic resume" to "Automatic resume", and make it a
simple Yes/No option.  Offer the user to initialize the database in
case it is not yet ready when enabling autoresume.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29249 a1c6a512-1295-4272-9138-f99709370657
2011-02-08 20:31:22 +00:00
Thomas Jarosch
5f037ac015 Initial maemo platform support
Adds Nokia N900, N810 and N800 support.

Features:
- Introduce maemo specific platform defines
- Play audio in silent mode
- Stop playback on incoming calls
- Battery level readout
- Bluetooth headset support
- Save CPU by disabling screen updates if the display
  is off or the app doesn't have input focus
- N900: GStreamer audio backend

Kudos to kugel for the code review.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29248 a1c6a512-1295-4272-9138-f99709370657
2011-02-08 20:05:25 +00:00
Magnus Holmgren
a91881d755 Update Swedish translation.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29245 a1c6a512-1295-4272-9138-f99709370657
2011-02-07 20:35:10 +00:00
Nils Wallménius
c9038bf9ae Remove incorrectly deprecated LANG_REC_SIZE phrase to not be confusing. Having only the *: none target is the same as deleting the phrase so this does not change the string order further. Put a note in the header in english.lang with some more info on deprecation of strings.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29244 a1c6a512-1295-4272-9138-f99709370657
2011-02-07 20:26:10 +00:00
Jens Arnold
8c38983b22 Fix standalone demac tool build.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29239 a1c6a512-1295-4272-9138-f99709370657
2011-02-06 23:18:30 +00:00
Karl Kurbjun
055cb9af50 M:Robe 500: Clean up warning.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29217 a1c6a512-1295-4272-9138-f99709370657
2011-02-06 19:17:57 +00:00
Karl Kurbjun
243aedec2d M:Robe 500 TSC2100 Debug: Use hex values instead of binary.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29214 a1c6a512-1295-4272-9138-f99709370657
2011-02-06 19:11:29 +00:00
Andree Buschmann
ae019419ff Use the very large IRAM of S5L870x to speed up AAC-HE by ~1-5%.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29212 a1c6a512-1295-4272-9138-f99709370657
2011-02-05 20:22:12 +00:00
Andree Buschmann
8033cb6250 Use MEM_ALIGN_ATTR in libfaad. Remove global array and re-use existing one.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29211 a1c6a512-1295-4272-9138-f99709370657
2011-02-05 19:50:16 +00:00
Andree Buschmann
8b540fa9d9 Speed up AAC-HE SBR by 2% on S5L8701. Use MEM_ALIGN on critical arrays and avoid stalls in asm code.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29209 a1c6a512-1295-4272-9138-f99709370657
2011-02-05 14:29:47 +00:00
Michael Sevakis
62fb090ac4 Fix #11897 - Multiple 'divide by zero' while playing particular APE on Clip+. Problem and solution observed and checked on Gigabeat S by myself. Fix submitted by Mikhail Titov resolves it. range_decode_short was declared as returing 'int short' rather than 'unsigned short' resulting in unwanted sign extension.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29208 a1c6a512-1295-4272-9138-f99709370657
2011-02-05 09:59:36 +00:00
Andree Buschmann
d3934185ac Correct the metronome keymap in the manual. Better describe buttons/actions in metronome help text. Closes FS#11773.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29204 a1c6a512-1295-4272-9138-f99709370657
2011-02-03 21:20:50 +00:00
Andree Buschmann
5a2421a0de Follow up on r29199. Move new codec types to the end of the list.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29203 a1c6a512-1295-4272-9138-f99709370657
2011-02-03 11:43:45 +00:00
Andree Buschmann
7e63bfd2ab Correctly re-initialize wma decoder on next track. This fixes strange observed issues (noise, crashes) which only could be solved through re-entering the wma codec.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29202 a1c6a512-1295-4272-9138-f99709370657
2011-02-03 11:05:33 +00:00
Andree Buschmann
4e74494d57 Changes in m4a parser: The metadata (e.g. sampling rate) for alac and aac must read from their dedicated metadata atom. Otherwise there might be wrong settings used. This patch also adds (commented) code which enables parsing for an alac metadata atom if neccessary. I have several sample files which require such parsing to find the metadata atom. Fixes FS#11719.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29201 a1c6a512-1295-4272-9138-f99709370657
2011-02-03 09:23:04 +00:00
Andree Buschmann
6b476e7bec Roll back unintentionally submitted file.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29200 a1c6a512-1295-4272-9138-f99709370657
2011-02-03 08:36:34 +00:00
Andree Buschmann
7345ac124e Submit FS#11918: Add 2 more codec types to be able to differentiate between AAC / AAC-HE and MPC SV7 / SV8. Additionally handle ATARI soundfiles in get_codec_base_type() as intended.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29199 a1c6a512-1295-4272-9138-f99709370657
2011-02-03 08:28:23 +00:00
Michael Sevakis
1bb3d61ef3 MPEGPlayer: Try out a different frame drop scheme meant to skip in a more uniform way rather than running up late and jumping forward; will often drop more in long term to keep up in short term. Some other obscure fixes included: wait for 2 ref pics before decoding B-pics again after P or I frame drop or seeking (issue with open GOPs); draw the frame the decoder already has when beginning playback after a seek; rename a few vars.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29198 a1c6a512-1295-4272-9138-f99709370657
2011-02-03 03:14:12 +00:00
Thomas Martitz
b22b0dc101 Touchscreen: Fix minor redraw after entering the context menu.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29193 a1c6a512-1295-4272-9138-f99709370657
2011-02-02 18:39:04 +00:00
Thomas Martitz
430ada0864 Redo r29168. Use similar but existing mechanism in the action system which seems to work better.
Don't eat buttons on context change if it was waiting for button release (you did need another release).

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29192 a1c6a512-1295-4272-9138-f99709370657
2011-02-02 18:30:10 +00:00
Thomas Martitz
48016d5e07 Reduce excessive debug output during mp3 parsing.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29191 a1c6a512-1295-4272-9138-f99709370657
2011-02-02 18:27:31 +00:00
Andree Buschmann
5d849a963e Clean up multiple definitions of RAM size. Remove -DMEM (make) and MEM (code), use the already defined MEMORYSIZE instead.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29189 a1c6a512-1295-4272-9138-f99709370657
2011-02-02 17:43:32 +00:00
Andree Buschmann
35bcdef144 Find a more consistent and resilient way to handle SBR upsampled files. The detection is only done in one place (the metadata parser) and takes into account that the m4a header might already report corrected frame/sample sizes.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29188 a1c6a512-1295-4272-9138-f99709370657
2011-02-02 15:12:55 +00:00
Andree Buschmann
4343399473 Recognize AAC-HE SBR with upsampling and correct duration, bitrate, seek and resume behaviour for such files. When SBR upsampling is used the decoder outputs the double amount of samples per frame. As the seek and resume functions do not know about this fact a special handling is introduced. Fixes issues reported in FS#11916.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29186 a1c6a512-1295-4272-9138-f99709370657
2011-02-02 09:38:24 +00:00
Andree Buschmann
0a93396cde Do not parse into 'ilst' atom if size is 0. Fixes playability issue in FS#11916.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29185 a1c6a512-1295-4272-9138-f99709370657
2011-02-02 09:28:48 +00:00
Magnus Holmgren
11b7a4fb26 Add a safety check in the resume seek code, just in case.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29181 a1c6a512-1295-4272-9138-f99709370657
2011-02-01 20:17:42 +00:00
Andree Buschmann
ee6a74e7e3 We seeked one chunk too far when resuming m4a files.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29180 a1c6a512-1295-4272-9138-f99709370657
2011-02-01 19:55:54 +00:00
Thomas Martitz
4888d41b09 Pitchscreen: Small fix for the right touchscreen button.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29179 a1c6a512-1295-4272-9138-f99709370657
2011-02-01 15:01:44 +00:00