Commit graph

42 commits

Author SHA1 Message Date
Daniel Stenberg
c16c727e54 killed warning due to comparison signed/unsigned
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9444 a1c6a512-1295-4272-9138-f99709370657
2006-04-02 23:06:20 +00:00
Miika Pekkarinen
93b6a1d12c Prevent two division by zeros and one problem causing a crash in the
mp3 metadata parser.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9438 a1c6a512-1295-4272-9138-f99709370657
2006-04-02 20:19:00 +00:00
Thom Johansen
a1df060a93 Allow bigger delay setting in LAME header.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7730 a1c6a512-1295-4272-9138-f99709370657
2005-11-02 18:05:31 +00:00
Jens Arnold
893669cc10 Rather obvious simplification of the mpeg frametime fraction calculation.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7562 a1c6a512-1295-4272-9138-f99709370657
2005-09-25 19:07:56 +00:00
Jens Arnold
ba966c1761 Archos recording/playback: (1) Xing header creation: * Now estimates the framecount from the recording time if the MAS frame counter saturates, so it always writes a valid Xing header. * Reverted my brainless short-xing-header change. This was only valid for layer 3. (2) Xing/VBRI header evaluation: Fixed possible overflow in bitrate calculation. (3) MPEG thread: Avoid double chunk size limiting for the rare case of 8 MB modded Ondios.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7522 a1c6a512-1295-4272-9138-f99709370657
2005-09-15 05:29:26 +00:00
Jens Arnold
ec9b202a92 Reworked handling of MPEG audio frame & file info: * Fixed frame size calculation for layer 1 (all versions) and layer 2 (V2/V2.5). * Exact frame time (expressed as a fraction) for way more precise playtime calculation at 44100/22050/11025Hz sample frequency. * Exact playtime<->position conversion for CBR also used for resume position. * More compact code, long policy.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7505 a1c6a512-1295-4272-9138-f99709370657
2005-09-10 12:28:16 +00:00
Jens Arnold
9352ac8668 Archos recording: Always prepend ID3V2 and Xing header to a recording file, even with prerecording and file splitting. Adjusted Xing header creation to create smaller headers. Fixed missing break; in the mpeg thread.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7472 a1c6a512-1295-4272-9138-f99709370657
2005-09-04 21:55:15 +00:00
Jens Arnold
d6c054575b Renamed CONFIG_HWCODEC and MASNONE to the more appropriate CONFIG_CODEC and SWCODEC, respectively.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7416 a1c6a512-1295-4272-9138-f99709370657
2005-08-29 21:15:27 +00:00
Jens Arnold
249f86cb34 Some slight size optimisations.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7383 a1c6a512-1295-4272-9138-f99709370657
2005-08-22 00:15:57 +00:00
Magnus Holmgren
501ab1a17f Support the LAME Info header too.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7313 a1c6a512-1295-4272-9138-f99709370657
2005-08-13 08:09:28 +00:00
Miika Pekkarinen
b0e78a4674 Fixed the errors.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7133 a1c6a512-1295-4272-9138-f99709370657
2005-07-13 13:13:10 +00:00
Miika Pekkarinen
5c2c991d14 Applied patch "[ 1232957 ] MP3 metadata fixes for software codec".
Thanks to Magnus Holmgren. Now metadata reading is better with
improved performance for mp3 files.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7030 a1c6a512-1295-4272-9138-f99709370657
2005-07-05 19:55:40 +00:00
Jens Arnold
b0287720b1 Fixed MPEG header validation for layer 1 on iriver, and simplified it for archos.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6746 a1c6a512-1295-4272-9138-f99709370657
2005-06-18 11:26:14 +00:00
Miika Pekkarinen
097444d07c Fixed some mp3 metadata reading performance problem. Next track
switching should be more reliable.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6691 a1c6a512-1295-4272-9138-f99709370657
2005-06-12 15:14:20 +00:00
Thom Johansen
57f0ec1474 Added support for reading LAME header delay and padding fields for proper gapless MP3 support.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6689 a1c6a512-1295-4272-9138-f99709370657
2005-06-12 14:03:31 +00:00
Jens Arnold
509117db90 (1) Bugfix: create_xing_header() now returns 0 in case of an invalid header template, i.e. when mp3headerinfo() returns false. It used to return a random number, causing all sorts of problems. This was the cause for the end of a recording (still in the buffer) occasionally overwriting the beginning. (2) Some code cleanup.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6557 a1c6a512-1295-4272-9138-f99709370657
2005-06-04 09:01:40 +00:00
Linus Nielsen Feltzing
d34865a530 mp3buf renamed to audiobuf
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6252 a1c6a512-1295-4272-9138-f99709370657
2005-04-05 11:33:58 +00:00
Jean-Philippe Bernardy
98a8132155 long policy
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@5712 a1c6a512-1295-4272-9138-f99709370657
2005-01-30 14:11:50 +00:00
Linus Nielsen Feltzing
a0d5bea9ec The debug output now reports the correct mpeg layer
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@5476 a1c6a512-1295-4272-9138-f99709370657
2004-12-01 11:04:39 +00:00
Jens Arnold
35b6dc3ea7 A little more straightforward vbr header checks
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4986 a1c6a512-1295-4272-9138-f99709370657
2004-08-03 21:54:24 +00:00
Linus Nielsen Feltzing
a23303695e MP3 files with VBRI frames were parsed incorrectly, and the VBRI frame was partly fed to the MAS, giving playback glitches
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4560 a1c6a512-1295-4272-9138-f99709370657
2004-04-29 01:18:15 +00:00
Linus Nielsen Feltzing
1936c413a8 Slightly improved VBR fixer, now uses the same template header throughout the entire file
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4225 a1c6a512-1295-4272-9138-f99709370657
2004-01-13 14:06:18 +00:00
Linus Nielsen Feltzing
fb5f458c27 Internal code cleanup - the header template is not taken from the stream if a template header is passed to create_xing_header()
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4180 a1c6a512-1295-4272-9138-f99709370657
2003-12-28 03:40:41 +00:00
Linus Nielsen Feltzing
24a8b6ad09 Frame-accurate file splits when recording. Now the PLAY button closes the current file and opens a new one.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@3998 a1c6a512-1295-4272-9138-f99709370657
2003-11-02 11:24:38 +00:00
Linus Nielsen Feltzing
d28a506e06 Even larger MP3 frame analysis buffer. Fixes bug #747969.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@3721 a1c6a512-1295-4272-9138-f99709370657
2003-06-03 21:50:21 +00:00
Daniel Stenberg
4f0f34b88c this should be using unsigned, to allow a full 4GB file, just in case
everything else does


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@3686 a1c6a512-1295-4272-9138-f99709370657
2003-05-19 14:36:14 +00:00
Daniel Stenberg
24756e1cf7 Stevie Oh's patch #739898 that corrects how vbrfix works on large files.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@3685 a1c6a512-1295-4272-9138-f99709370657
2003-05-19 14:15:21 +00:00
Linus Nielsen Feltzing
20d031f9c7 Configurable dir browser file buffer size. No more 400-file limit. No more whining.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@3661 a1c6a512-1295-4272-9138-f99709370657
2003-05-09 16:01:21 +00:00
Linus Nielsen Feltzing
126a7b3f6d Fixed compiler error on debug builds
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@3573 a1c6a512-1295-4272-9138-f99709370657
2003-04-20 22:09:23 +00:00
Linus Nielsen Feltzing
478da628f0 Xing headers now support mono better, added the 'editable files' option
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@3572 a1c6a512-1295-4272-9138-f99709370657
2003-04-20 22:00:30 +00:00
Linus Nielsen Feltzing
6d522179dc Stupid compiler...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@3570 a1c6a512-1295-4272-9138-f99709370657
2003-04-19 02:24:52 +00:00
Linus Nielsen Feltzing
1b466e0e58 Removed a warning
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@3568 a1c6a512-1295-4272-9138-f99709370657
2003-04-19 02:09:56 +00:00
Linus Nielsen Feltzing
7fdef57d57 Better generation of Xing headers, now they contain the correct MPEG version and sample rate info.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@3567 a1c6a512-1295-4272-9138-f99709370657
2003-04-19 01:59:23 +00:00
Linus Nielsen Feltzing
1c32bd0f48 Increased the buffer size for get_mp3file_info(). This is supposed to fix bugs #722233, #722521 and #723922
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@3566 a1c6a512-1295-4272-9138-f99709370657
2003-04-19 00:27:15 +00:00
Linus Nielsen Feltzing
d5304e5af0 Changed some debug output
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@3547 a1c6a512-1295-4272-9138-f99709370657
2003-04-13 15:05:46 +00:00
Linus Nielsen Feltzing
f8979dae58 The Xing flag word wasn't correctly generated
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@3495 a1c6a512-1295-4272-9138-f99709370657
2003-03-24 12:48:33 +00:00
Linus Nielsen Feltzing
df4cf2edc4 Reverted last change
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@3493 a1c6a512-1295-4272-9138-f99709370657
2003-03-24 11:35:53 +00:00
Björn Stenberg
8ab8d7d8ac Don't fail on bitrate 0. Our own recordings have bitrate 0...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@3492 a1c6a512-1295-4272-9138-f99709370657
2003-03-24 10:31:50 +00:00
Linus Nielsen Feltzing
7105b28bba The frame buffer was too small for 320kbit/s frames
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@3446 a1c6a512-1295-4272-9138-f99709370657
2003-03-15 07:28:12 +00:00
Linus Nielsen Feltzing
2c07e78efc Don't accidentally add Xing headers to CBR files
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@3419 a1c6a512-1295-4272-9138-f99709370657
2003-03-10 18:25:40 +00:00
Linus Nielsen Feltzing
6475aa0c85 Experimental Xing header generation added. Use with caution
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@3418 a1c6a512-1295-4272-9138-f99709370657
2003-03-10 18:05:01 +00:00
Linus Nielsen Feltzing
a039091187 New ID3 and MP3 stream parser, plus not-yet-ready Xing header generation code
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@3410 a1c6a512-1295-4272-9138-f99709370657
2003-03-10 14:55:31 +00:00