Unoffical empeg BBS

Quick Links: Empeg FAQ | RioCar.Org | Hijack | BigDisk Builder | jEmplode | emphatic
Repairs: Repairs

Topic Options
#239674 - 01/11/2004 15:08 lrctool for the empeg?
zexpe
journeyman

Registered: 21/08/2002
Posts: 63
Loc: Edinburgh, UK
I'm keen to start tagging my mp3s with song lyrics but... it would be a major time consuming hassle to have to download and re-upload each individual mp3 to and from the empeg. Also surely it's going to affect my database - e.g. song ratings, play counts, database<->id3 tag transfer issues. What I'd really like to do is ftp the lrc files to my empeg and then tag the files directly within the empeg over telnet. Has anyone compiled a version lrctool or lrc2sylt for the empeg, and is this even possible?

Also, what's the Tony Selections option in the new jEmplode version all about?

I've been away from the empeg world for the past six months so forgive my ignorance, but I can't find answers to these questions having searched the empeg bbs.

Thanks,
Ross

Top
#239675 - 01/11/2004 15:58 Re: lrctool for the empeg? [Re: zexpe]
tonyc
carpal tunnel

Registered: 27/06/1999
Posts: 7058
Loc: Pittsburgh, PA
Quote:
Has anyone compiled a version lrctool or lrc2sylt for the empeg, and is this even possible?

What you're asking for, a version of lrctool that runs on the empeg, shouldn't be hard to build. However, I think there are missing pieces of the puzzle that won't get you where you want to be. I won't walk through every possible scenario, because everyone's interpretation of this problem is slightly different, and the path changes depending on whether you're starting with lyrics you grabbed off lrcDB, lyrics from some other source, or are tagging your own files using the SYLT plugin or XMMS-SingIt.

There was a thread about the idea of doing the tagging on the empeg, where many people made suggestions on how it might work, but none of the suggestions were really complete, and I wasn't able to fill in the missing pieces of exactly how the process would work from top to bottom. I can't seem to find the thread at the moment, though.

Basically, the problem I see with your approach is that all you have is LRC files, which may or may not have [artist], [title] and [album] tags, and somehow you're expecting to be able to tell which LRC file matches with one of the thousands of FID files stored in /drive[01]/fids. How do you plan on handling that? Writing a script that pulls out the text attributes from the LRC and looking for those attributes in each text FID on your system could take a very long time, and that only works if the text tags in the LRC exactly match what you tagged your MP3s with. Loading the player database first and trying to search that would speed up the process, but wouldn't help with tags that don't exactly match, and I don't think anyone (other than the empeg guys) written any C code to parse the player's database file, so I'd have to port the database stuff from jEmplode. In the older thread on this topic, I didn't see any solutions to these problems. There are other problems that come into play depending on which other plumbing pieces you're using, but for your scenario, this seems to be the biggest problem. How did you plan to solve this?

If all you want is a version of lrctool that compiles and runs on the empeg, I can probably get that to you at some point. But I'd first like you to demonstrate to me exactly how you plan on using it to tag your files.
_________________________
- Tony C
my empeg stuff

Top
#239676 - 01/11/2004 16:28 Re: lrctool for the empeg? [Re: zexpe]
tfabris
carpal tunnel

Registered: 20/12/1999
Posts: 31565
Loc: Seattle, WA
Quote:
Also, what's the Tony Selections option in the new jEmplode version all about?

It was there a few versions ago, then he took it out because someone complained, then he put it back in with an option checkbox because I complained.

Here's the deal...

When you're editing the tags of a bunch of songs in an album, and you've already group-selected and set the artist/album/year fields, and now you're just going through and editing the individual song titles one at a time.

With this feature turned on, then each title is automatically fully highlighted each time you press Alt+Enter on a tune. So it's a much easiser set of keystrokes for each song: Alt+Enter, type the title, Enter. With Tony Selections off, you need an extra set of keystrokes to select the entire song title before typing the new one in place.

He could probably rename it in the options panel to something like "Automatically select song title when editing".
_________________________
Tony Fabris

Top
#239677 - 01/11/2004 17:19 Re: lrctool for the empeg? [Re: tonyc]
wfaulk
carpal tunnel

Registered: 25/12/2000
Posts: 16706
Loc: Raleigh, NC US
Quote:
I don't think anyone (other than the empeg guys) written any C code to parse the player's database file, so I'd have to port the database stuff from jEmplode

IIRC, Mike ported that code to Java for jEmplode from the Linux emptool code, which is in either C or C++.
_________________________
Bitt Faulk

Top
#239678 - 01/11/2004 17:20 Re: lrctool for the empeg? [Re: wfaulk]
tonyc
carpal tunnel

Registered: 27/06/1999
Posts: 7058
Loc: Pittsburgh, PA
I wasn't aware there was an emptool release of recent vintage that supports the "database3" format. If there is, that solves one of the problems, assuming I can easily search that database within the empeg's memory constraints.
_________________________
- Tony C
my empeg stuff

Top
#239679 - 01/11/2004 17:21 Re: lrctool for the empeg? [Re: tonyc]
wfaulk
carpal tunnel

Registered: 25/12/2000
Posts: 16706
Loc: Raleigh, NC US
Ah. Database3. I hadn't considered that. There may not be.
_________________________
Bitt Faulk

Top
#239680 - 01/11/2004 18:41 Re: lrctool for the empeg? [Re: zexpe]
image
old hand

Registered: 28/04/2002
Posts: 770
Loc: Los Angeles, CA
if you use jemplode, and switch on the "update tags of duplicates" in the options menu, then all you have to do is drag the file. it will say the track is a dupe, but will update the changes you have made to the tag. easy stuff.

Top
#239681 - 01/11/2004 19:35 Re: lrctool for the empeg? [Re: image]
tonyc
carpal tunnel

Registered: 27/06/1999
Posts: 7058
Loc: Pittsburgh, PA
Er... Does that apply to ID3v2 lyric tags as well? And is track metadata (play counts, ratings, etc.) preserved?
_________________________
- Tony C
my empeg stuff

Top
#239682 - 01/11/2004 22:07 Re: lrctool for the empeg? [Re: tonyc]
mcomb
pooh-bah

Registered: 31/08/1999
Posts: 1649
Loc: San Carlos, CA
Quote:
But I'd first like you to demonstrate to me exactly how you plan on using it to tag your files.


You know what I would like to see at some point (and I'll concede that it isn't trivial to implement) is the option to download all available lyrics as text files from the lyricdb site and upload them to a directory on the empeg. Then on each track change emphatic pulls the artist, album, and song from /proc/notify (to avoid parsing the mp3 and wasting cpu and ram) and attempts to normalize them (convert to lowercase get rid of "the", etc) and look for a matching lyrics text file. If the file exists then use it, if not (based on a config option) then fall back to the current method of parsing the mp3 or do nothing.

So what if you only get a 50% hit rate due to differences in how people tag tracks? That still means that half your songs (for which there is a lyricdb entry) automatically have lyrics shown without having to go through all this tag and re-upload nastiness. For the other tracks, if you care, you can always tag them by hand.

-Mike
_________________________
EmpMenuX - ext3 filesystem - Empeg iTunes integration

Top
#239683 - 02/11/2004 02:40 Re: lrctool for the empeg? [Re: mcomb]
tonyc
carpal tunnel

Registered: 27/06/1999
Posts: 7058
Loc: Pittsburgh, PA
Quote:
option to download all available lyrics as text files from the lyricdb site and upload them to a directory on the empeg.

Download all available? You crazy? Right now there's only a few thousand, but as it grows, that'll get ridiculous with bandwidth usage.
_________________________
- Tony C
my empeg stuff

Top
#239684 - 02/11/2004 04:12 Re: lrctool for the empeg? [Re: tonyc]
mcomb
pooh-bah

Registered: 31/08/1999
Posts: 1649
Loc: San Carlos, CA
Quote:
Download all available? You crazy? Right now there's only a few thousand, but as it grows, that'll get ridiculous with bandwidth usage.

Bah, their text files. Make gzipped tarballs by genre/decade and your good to go. Plus there are only a few hundred people in this community at most that would actually use it.

-Mike
_________________________
EmpMenuX - ext3 filesystem - Empeg iTunes integration

Top
#239685 - 02/11/2004 04:45 Re: lrctool for the empeg? [Re: mcomb]
tonyc
carpal tunnel

Registered: 27/06/1999
Posts: 7058
Loc: Pittsburgh, PA
Quote:
Plus there are only a few hundred people in this community at most that would actually use it.

Further down the road, my intention is to open up lrcDB to a non-empeg audience. I've already had some trickling in from elsewhere, Google and the like. As the database grows, having a "download my entire site" option is a very bad idea, as people will just be lazy and leech the whole site. Since I'm getting the hosting for free right now, it's not my bandwidth to waste, and I wouldn't have the funds to run the site if the bandwidth got out of control. So, no, I won't be doing that.

Anyway, CPU/RAM usage while reading the MP3 is rather light, the problem is we're doing it at the same time as the player is trying to prime its cache, so it appears that emphatic is slow on track changes. CPU usage is mostly a function of how complex the display mode is.

Furthermore, your LRC file strategy is, as you said, error prone, where embedding the lyrics in the MP3 is very straightforward.

Can you tell I'm not in love with your idea? I really do appreciate the input, but unless I hear from a lot of other people who really want this, I'm going to stick with my original design, where the lyrics are in the MP3.
_________________________
- Tony C
my empeg stuff

Top
#239686 - 02/11/2004 16:16 Re: lrctool for the empeg? [Re: tonyc]
zexpe
journeyman

Registered: 21/08/2002
Posts: 63
Loc: Edinburgh, UK
Quote:

If all you want is a version of lrctool that compiles and runs on the empeg, I can probably get that to you at some point. But I'd first like you to demonstrate to me exactly how you plan on using it to tag your files.


Ok, so I hadn't thought through every scenario. In the case of creating your own lyric files with XMMS-SingIt or whatever, you need to have the mp3 file on your PC anyway, so you might as well tag the lyrics onto the mp3 on the PC.

What I wanted to do though wasn't anything as grand as some automated system that would take all the lyrics and match them up with all of the fids on the empeg (though I do like the sound of that!). All I wanted to do was manually ftp every .lrc file to the empeg that I've manually downloaded from the lrcdb website, and then through telnet manually use lrctool on the empeg to tag each .lrc file to the relevant fid file. I would find out the fid numbers, again manually, by searching the database with jEmplode.

Personally I think for say, a hundred lyric files, this will still be much quicker than the other alternative of manually downloading each of the mp3 files off the empeg through jEmplode and tagging them on the PC before re-uploading them to the empeg using the "Replace Tune" option (which unless I'm mistaken, doesn't read in the id3 tags to alter the database attributes, it just replaces the mp3 file, hence alleviating my earlier concerns!).

Ross

Top
#239687 - 02/11/2004 16:29 Re: lrctool for the empeg? [Re: tonyc]
mcomb
pooh-bah

Registered: 31/08/1999
Posts: 1649
Loc: San Carlos, CA
Quote:
Can you tell I'm not in love with your idea?


Hey, whatever makes you happy. Its your software. I just think my way would greatly simplify the process, get more people to use the software, and get rid of the audio skips I get when the player and emphatic try to read an mp3 at the same time.

I'll even chip in another idea that you may not like. Write a small piece of software that runs on the empeg (using hijack's menu_exec), iterates through the database fids (the text based ones, not the mp3s), and queries lyrcdb for each. Again, do a fuzzy match and if you find a match download the text file to a directory on the empeg. Emphatic then optionally reads from these text files instead of the mp3s. Solves all the same problems, but without downloading all lyric files.

-Mike
_________________________
EmpMenuX - ext3 filesystem - Empeg iTunes integration

Top
#239688 - 02/11/2004 16:51 Re: lrctool for the empeg? [Re: mcomb]
tfabris
carpal tunnel

Registered: 20/12/1999
Posts: 31565
Loc: Seattle, WA
It seems to me that almost all of these ideas could be implemented externally to the empeg and external to emphatic, using a tool that runs on the PC and leverages the Hijack FTP engine and/or the Empeg protocol. It could grab the contents of lrcdb, open the empeg's list of tunes, do comparisons and tagging, then upload the tunes back to the empeg.

Hm. Who here is most qualified to write a program that works with the empeg protocol? Calling Mike S!
_________________________
Tony Fabris

Top
#239689 - 02/11/2004 17:05 Re: lrctool for the empeg? [Re: tfabris]
cushman
veteran

Registered: 21/01/2002
Posts: 1380
Loc: Erie, CO
Not to volunteer, but this could (probably) be done with a jEmplode plugin.
_________________________
Mark Cushman

Top
#239690 - 02/11/2004 17:26 Re: lrctool for the empeg? [Re: tfabris]
mcomb
pooh-bah

Registered: 31/08/1999
Posts: 1649
Loc: San Carlos, CA
Quote:
It could grab the contents of lrcdb, open the empeg's list of tunes, do comparisons and tagging, then upload the tunes back to the empeg.


Doesn't solve two of the problems I mentioned. It requires all tunes to be copied off and back onto the empeg and doesn't fix the issue with emphatic and the player reading tunes at the same time.

-Mike
_________________________
EmpMenuX - ext3 filesystem - Empeg iTunes integration

Top
#239691 - 02/11/2004 17:30 Re: lrctool for the empeg? [Re: cushman]
mcomb
pooh-bah

Registered: 31/08/1999
Posts: 1649
Loc: San Carlos, CA
Quote:
Not to volunteer, but this could (probably) be done with a jEmplode plugin.


Thats a good point. I might even take a shot at it if emphatic supported reading lyrics from something besides the actual mp3s. A jEmplode plugin that ran through the database and queried lyricdb for tunes and dumped the text files to the empeg over ftp shouldn't be that hard to write.

-Mike
_________________________
EmpMenuX - ext3 filesystem - Empeg iTunes integration

Top
#239692 - 02/11/2004 18:28 Re: lrctool for the empeg? [Re: mcomb]
tfabris
carpal tunnel

Registered: 20/12/1999
Posts: 31565
Loc: Seattle, WA
Quote:
It requires all tunes to be copied off and back onto the empeg


Only the ones that are getting edited. And since you only have to the "big" one once, it probably wouldn't be a big deal. Just something you run for a couple hours or overnight. Similar to loading your tunes in the first place.

Quote:
doesn't fix the issue with emphatic and the player reading tunes at the same time.


But it would make the tunes work with the current emphatic with no changes.
_________________________
Tony Fabris

Top
#239693 - 03/11/2004 06:13 Re: lrctool for the empeg? [Re: tonyc]
image
old hand

Registered: 28/04/2002
Posts: 770
Loc: Los Angeles, CA
i'm not sure. check by loading up jemplode and looking at a tagged track's properties. if its there, then cool. but if you just read it from the file directly (as opposed to the empeg database where everything is stored), then i would suggest using the "replace track tool" in jemplode, or bug mike to implement a "replace all changed files but has the same hash" tool. that would keep your plays, etc.

Top