Commit graph

102 commits

Author SHA1 Message Date
Magnus Holmgren
988ea2cffc Added support for ID3V2 ReplayGain tags (as written by Foobar). Generalized the replaygain tag parsing a bit, to cut down the code size (APE tags should use this as well, but as it requires larger changes, it will have to wait for another commit). Also fixed a bug in the ID3V2 parser; ISO-8859-1 strings could confuse the main parsing loop (causing bufferpos to come out of sync).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7243 a1c6a512-1295-4272-9138-f99709370657
2005-07-27 11:54:33 +00:00
Miika Pekkarinen
2e9ce4ee47 Now codec names are in sync.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7032 a1c6a512-1295-4272-9138-f99709370657
2005-07-05 20:35:43 +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
Jonas Häggqvist
e021e1f42c Patch 1163135 by Bryan Vandyke: Remove trailing spaces for ID3v2 tags
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6885 a1c6a512-1295-4272-9138-f99709370657
2005-06-26 22:43:57 +00:00
Miika Pekkarinen
0a81bb344e Don't initialize id3 structure with zeros on software codec platforms
(buffering system will do this).


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6764 a1c6a512-1295-4272-9138-f99709370657
2005-06-19 08:29:23 +00:00
Dave Chapman
961c9a3e41 Added %fc WPS tag to display codec type - moved codectype from track_info struct into mp3info struct, initialise it on MAS platforms, and add it to the WPS.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6748 a1c6a512-1295-4272-9138-f99709370657
2005-06-18 16:24:27 +00:00
Linus Nielsen Feltzing
5058f7de05 ID3 parser bug fix by Ray Lambert
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6716 a1c6a512-1295-4272-9138-f99709370657
2005-06-15 08:46:13 +00:00
Jean-Philippe Bernardy
0f6b3796d6 long policy
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@5863 a1c6a512-1295-4272-9138-f99709370657
2005-02-09 10:56:54 +00:00
Jens Arnold
c76c568b35 Const policed pointer arguments to functions, part 1
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4995 a1c6a512-1295-4272-9138-f99709370657
2004-08-16 23:37:23 +00:00
Jens Arnold
9478cc6f8a More const policeing step 4
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4983 a1c6a512-1295-4272-9138-f99709370657
2004-08-03 19:22:56 +00:00
Linus Nielsen Feltzing
f4f4111536 Added possibility to select the priority of the ID3 tags
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4962 a1c6a512-1295-4272-9138-f99709370657
2004-07-27 14:10:48 +00:00
Linus Nielsen Feltzing
559e515229 Now looks for TCOM and TCON before TCO
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4836 a1c6a512-1295-4272-9138-f99709370657
2004-07-05 22:28:02 +00:00
Daniel Stenberg
7ba7ffd843 remove extra ';'
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4754 a1c6a512-1295-4272-9138-f99709370657
2004-06-16 11:30:28 +00:00
Linus Nielsen Feltzing
743f23415b Stray semicolon removed
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4752 a1c6a512-1295-4272-9138-f99709370657
2004-06-16 11:26:18 +00:00
Björn Stenberg
bdaf5884ca Moved genre list and access function to id3.c
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4692 a1c6a512-1295-4272-9138-f99709370657
2004-05-22 01:38:41 +00:00
Linus Nielsen Feltzing
2cc373eb99 The ID3 parser accidentally allowed a data length indicator flag on 2.3 tags, and the grouping identity bit is not the same on 2.3 and 2.4 (sigh).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4455 a1c6a512-1295-4272-9138-f99709370657
2004-03-30 13:57:06 +00:00
Linus Nielsen Feltzing
e701808b2e The ID3V2 TCON frame is now parsed in a little more forgiving manner
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4437 a1c6a512-1295-4272-9138-f99709370657
2004-03-25 06:58:25 +00:00
Linus Nielsen Feltzing
a85a525893 Skipping unknown ID3V2 frames didn't work as expected with global unsynch. This fixes bug report #887332.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4379 a1c6a512-1295-4272-9138-f99709370657
2004-03-13 22:55:47 +00:00
Linus Nielsen Feltzing
2f4a5616c0 The Unicode parser now handles unterminated strings, plus it tries to guess the byte order when the BOM is missing (a violation of the spec, btw)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4215 a1c6a512-1295-4272-9138-f99709370657
2004-01-09 00:47:26 +00:00
Linus Nielsen Feltzing
187b8ed9df Got rid of the reset parameter to xxx_unsynched()
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4189 a1c6a512-1295-4272-9138-f99709370657
2004-01-04 00:45:16 +00:00
Linus Nielsen Feltzing
219d52a86f ID3v2.3 treats the global unsynch flag in a silly way, so we have to unsynch the whole tag before we can parse the individual frames.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4188 a1c6a512-1295-4272-9138-f99709370657
2004-01-04 00:37:30 +00:00
Magnus Holmgren
f11d07c61f Correct genre parsing by making code match comment (and specification) :)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@3987 a1c6a512-1295-4272-9138-f99709370657
2003-10-26 12:53:21 +00:00
Linus Nielsen Feltzing
eee3720ebe Genre parsing in id3v2.3 was still wrong. Also, the last frame in the tag could sometimes be ignored. This fixes the strange 1-digit track number bug.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@3984 a1c6a512-1295-4272-9138-f99709370657
2003-10-22 21:11:38 +00:00
Linus Nielsen Feltzing
5557fe3259 Added unsynchronization
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@3983 a1c6a512-1295-4272-9138-f99709370657
2003-10-22 13:06:31 +00:00
Linus Nielsen Feltzing
d9ae29a691 An attempt to fix the ID3V2 genre tag parsing
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@3981 a1c6a512-1295-4272-9138-f99709370657
2003-10-21 10:44:34 +00:00
Linus Nielsen Feltzing
0bce9580a1 Added tag resolvers for TYE, TAL and TRK
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@3980 a1c6a512-1295-4272-9138-f99709370657
2003-10-20 10:22:41 +00:00
Björn Stenberg
92b1d85b48 Fix for incorrect genre default value, by Benjamin Metzler
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@3810 a1c6a512-1295-4272-9138-f99709370657
2003-07-04 08:23:39 +00:00
Daniel Stenberg
75fdb2aab3 bug 749951, ooops. We made the number function too generic and forgot to
make the year tags work... Thanks to Jeremy Zoss for finding and reporting.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@3737 a1c6a512-1295-4272-9138-f99709370657
2003-06-06 07:54:50 +00:00
Björn Stenberg
7add54f0f8 Fixed silly typo
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@3729 a1c6a512-1295-4272-9138-f99709370657
2003-06-05 08:01:38 +00:00
Björn Stenberg
8498a48496 Generalized id3v2 parsing code. Added support for the composer frame and free-form genre and tracknum frames. (Patch #706111 by Thomas Paul Diffenbach)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@3727 a1c6a512-1295-4272-9138-f99709370657
2003-06-04 15:09:35 +00:00
Linus Nielsen Feltzing
6b6f97ddda Tidied up the ID3V2 parser a little
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@3475 a1c6a512-1295-4272-9138-f99709370657
2003-03-18 01:31:35 +00:00
Linus Nielsen Feltzing
372ad33d35 Faster ID3 parsing with the new filesize() function
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@3474 a1c6a512-1295-4272-9138-f99709370657
2003-03-18 00:45:27 +00:00
Björn Stenberg
b551e36fb0 Bug fixes: Artist was skipped sometimes. Frequency, mpeg version & layer was never copied.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@3441 a1c6a512-1295-4272-9138-f99709370657
2003-03-13 19:12:05 +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
Björn Stenberg
fac3bc581a Ignore duplicate id3v2 tags or frames. Patch by Bill Napier.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@3413 a1c6a512-1295-4272-9138-f99709370657
2003-03-10 15:43:16 +00:00
Linus Nielsen Feltzing
a1598b5836 I hate it when rippers don't follow the ID3V2 specs
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@3412 a1c6a512-1295-4272-9138-f99709370657
2003-03-10 15:32:59 +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
Björn Stenberg
5b1644336c Initialize genre to 0xff since 0 is a valid value.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@3233 a1c6a512-1295-4272-9138-f99709370657
2003-02-11 15:00:56 +00:00
Mats Lidell
74cc9e41fa Remove use of rockbox-mode.el in local variables list.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@3157 a1c6a512-1295-4272-9138-f99709370657
2003-01-24 10:56:06 +00:00
Björn Stenberg
a2e98c1cd9 Merged Uwe Freese's bidirectional scrolling patch. Added configurable scroll step size and scroll start delay.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@2974 a1c6a512-1295-4272-9138-f99709370657
2002-12-12 15:20:37 +00:00
Björn Stenberg
cf1317c336 Added id3 version wps tag: %iv. Fixed id3v1 parsing bug.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@2967 a1c6a512-1295-4272-9138-f99709370657
2002-12-09 15:01:37 +00:00
Björn Stenberg
a5587d0298 Added ID3 tag 'genre': %ig
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@2950 a1c6a512-1295-4272-9138-f99709370657
2002-12-05 15:21:18 +00:00
Björn Stenberg
345f7c62ba Added ID3 tag 'year': %iy
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@2949 a1c6a512-1295-4272-9138-f99709370657
2002-12-05 14:55:14 +00:00
Björn Stenberg
d1f8001984 Don't waste time loading v1 tag if a v2 tag was found.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@2916 a1c6a512-1295-4272-9138-f99709370657
2002-12-03 15:38:39 +00:00
Linus Nielsen Feltzing
84c6fd96a6 Fixed broken unicode_munge()
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@2840 a1c6a512-1295-4272-9138-f99709370657
2002-11-12 22:35:32 +00:00
Linus Nielsen Feltzing
fd3d50a4db Better handling of large frames in V2 tags
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@2771 a1c6a512-1295-4272-9138-f99709370657
2002-10-29 10:29:57 +00:00
Linus Nielsen Feltzing
be8ae1c0e2 Now reads the tags frame by frame, to avoid missing frames when there are large blobs in the tag. This fixes bug #623510.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@2768 a1c6a512-1295-4272-9138-f99709370657
2002-10-28 23:00:57 +00:00
Linus Nielsen Feltzing
c41322c591 Better skipping of leading garbage. Fixes bug #625868.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@2752 a1c6a512-1295-4272-9138-f99709370657
2002-10-27 23:07:26 +00:00
Daniel Stenberg
6b342e4e8d modify the data these point to, these operators are right-to-left...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@2470 a1c6a512-1295-4272-9138-f99709370657
2002-10-01 14:36:37 +00:00
Linus Nielsen Feltzing
c09c4afb23 Made the Unicode kludge even kludgier, but non-crashing
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@2469 a1c6a512-1295-4272-9138-f99709370657
2002-10-01 13:20:23 +00:00