Rockbox mail archiveSubject: Lyrics
From: David Bleakley <cool2bdave_at_yahoo.com>
Date: Tue, 7 Feb 2006 11:25:42 +0000 (GMT)
I have managed to get LYRICS displayed from an id3 tag. Unsynchronised Lyrics: http://www.rockbox.org/docs/id3v2.3.0.html#sec4.9
Basically I find the tag (using id3.c) I then copy the text to .rockbox/lyrics.txt and then call the viewer plug-in to open it. Very simple and the viewer is great for it. (Took me ages to work out though)
I have updated the menus on play now has 'Show lyrics'. I will try to work out diff -u and how to upload the patch tonight.
Before I do I have a few questions
Calling the text viewer to open .rockbox/lyrics.txt brings up a warning about an implicit call.
[Q1] Is there a way I can do it without the warning?
I initially loaded the text into the ram using the local buffer: char id3v2buf in id3.h It was part of the taglist structure in id3.c
The problem was when I increased the buffer size to fit the text, there was a conflict somewhere; as mp3s with large tags returned an error instead of playing and menus started dissapearing.
My plan is to create a 2 dimensional array (as part of the tag structure would be nice) I would include time from synchronised lyrics, or fill it with mp3length/number_of_lines in one column and a line of lyrics in the 2nd. WPS could then display lyrics.
[Q2] How can I create a 2D array of variable size which does not have the memory conflicts?
[Q3] Should I use id3v2buf?
[Q4a] Should I try to load the whole lyrics tag at once to the array as it takes up memory?
[Q4b] If not is there a way of determining at what mp3 play time the disk is going to spin up? Lyrics reading could then be synchronised with Mpeg reading
Win a BlackBerry device from O2 with Yahoo!. Enter now.
Received on 2006-02-07