Convert label to cue sheet, and cue sheet to label

I have created a web tool to:

– convert labels to cue sheets
– convert cue sheets to labels

See the Wiki at http://wiki.audacityteam.org/wiki/Cue_sheets#webtool

Nice work grimblefritz.
It may be worth noting somewhere in your documentation that for Audacity 1.3 label tracks, if region labels are used, then only the start point of the region label is used for generating the cue sheet.

Apologies if I am being stupid, but if I paste contents of a simple Audacity 1.3.13 Beta labels file thus:

2.232558	2.232558	a
10.534884	10.534884	b

into http://grimblefritz.com/audacity/lbl2cue.php (“Convert Audacity labels to CUE sheet”) then press “Convert”, there is no output or error message in the screen that appears.

Tested in Firefox 5 and IE8 on Win XP.

For a possible enhancement, how about letting users select a text file from the computer for conversion?



Gale

Unfortunately it appears to be no longer functional.

Sorry, everyone. I took on a project that my old web host couldn’t handle, so I had to change hosting companies. In moving things over, I missed a configuration setting in these tools.

Everything should be working again.

I had considered adding file upload, but there haven’t been that many users. It’s on the list, but to be honest it’s not high on the list.

Also, I thought I had subscribed to this topic, but that’s what I get for doing my own thinking!

NOW I’m subscribed to it, so I should be quicker getting back to folks on comments here.

Thanks for fixing it.


Gale

Came upon this tool, very helpful for my situation!
I’m creating DJ mixes (with Pioneer Rekordbox 6), to master the recording I edit in in Audacity.

Unfortunately there seems to be a problem when there are also hours in the cue sheet.

An example cue sheet I get:

REM DATE 2021-08-14 04:27 PM
REM RECORDED_BY "rekordbox-dj"
TITLE "My Mix"
PERFORMER "DJ Me"
FILE "My Mixfile.wav" WAVE
	TRACK 01 AUDIO
		TITLE "Song One"
		PERFORMER "Artist One"
		FILE "c:/path/to/artist1-song1.mp3" WAVE
		INDEX 01 00:00:00:00
	TRACK 02 AUDIO
		TITLE "Song Two"
		PERFORMER "Artist Two"
		FILE "c:/path/to/artist2-song2.mp3" WAVE		
		INDEX 01 00:22:41:00
	TRACK 03 AUDIO
		TITLE "Song Three"
		PERFORMER "Artist Three"
		FILE "c:/path/to/artist3-song3.mp3" WAVE
		INDEX 01 01:08:15

I read the order of the tags should be: FILE, TITLE and INDEX
So I changed the cuesheet to:

REM DATE 2021-08-14 04:27 PM
REM RECORDED_BY "rekordbox-dj"
TITLE "My Mix"
PERFORMER "DJ Me"
FILE "My Mixfile.wav" WAVE
	TRACK 01 AUDIO
		FILE "c:/path/to/artist1-song1.mp3" WAVE
		TITLE "Song One"
		PERFORMER "Artist One"
		INDEX 01 00:00:00:00
	TRACK 02 AUDIO
		FILE "c:/path/to/artist2-song2.mp3" WAVE
		TITLE "Song Two"
		PERFORMER "Artist Two"
		INDEX 01 00:22:41:00
	TRACK 03 AUDIO
		FILE "c:/path/to/artist3-song3.mp3" WAVE
		TITLE "Song Three"
		PERFORMER "Artist Three"
		INDEX 01 01:08:15

When I convert this in the tool I get:

0.000000	0.000000	Song One
22.546667	22.546667	Song Two
68.200000	68.200000	Song Three

Now look at Song Two: according to the result this starts at the 22nd SECOND. This should be the 22nd MINUTE though.
When I remove the leading string “00:” from the cue sheet it does work correctly.

Can this be fixed?
OR can I find the source PHP somewhere, so I can try to fix (and host) it myself?

According to this page: Cue sheet (computing) - Wikipedia the time index should be written as
mm:ss:ff (minute-second-frame) format.

Thanks. Appears indeed Rekordbox doesn’t follow the standard :frowning:.
Anyway, unfortunately the output of Rekordbox is hard to alter. (The code of) this tool is probably more within reach :slight_smile:. If there is a source file of the converter I can rewrite it to a “Rekordbox Cuesheet to Audacity Label Converter” (credits included of course).

or maybe not. The code is on grimblefritz’s website (not an Audacity website), but grimblefritz hasn’t logged in here since 2011.

At least, not as grimblefritz :slight_smile:

So… I had to go look. This WAS over a decade ago and I couldn’t remember AT ALL what I did.

If I recall correctly, I had hundreds, maybe thousands, of audio files to process. And cue files saved me a TON of manual work.

I wrote the first go in awk. That got wrapped in bash with some options. And that got a PHP front end stuck on it.

And then, I finished my project that spawned lbl2cue & cue2lbl … and have never needed them again.

Who would like to take over this functional and yet horribly dysfunctional bit of code? I had (I call it “an episode”) in 2015 and subsequently I can’t remember details of stuff like this, and I struggle to absorb and grasp new stuff, so it needs to move on to someone with a brain that still functions correctly and has a need and the interest. Oh, and skills if you insist :slight_smile:

:astonished:
Hi there Grimblefritz. I guess the “subscribe to topic” works :smiley:

Was your tool based on these bash scripts: Missing features - Audacity Support

I also figured it was a very old topic and was also hoping the topic notification would do its magic. Glad it did! :smiley:

Sounds complicated! I assumed it would only be some PHP (and JS), but you apparently had a primary goal via shell…

I’m afraid I don’t fit the bill. I can tweak existing PHP / JS (CSS/HTML) to my needs (with some assistance from Google), but that’s about it…

This page isn’t working for me: http://grimblefritz.com/audacity/cue2lbl.php

No, that’s the first I’ve seen that. I started on mine in late 2009 and didn’t put it online until 2011. It’s overlapping work (in time) but definitely not derivative.

I’m sure it could be rewritten in just about anything. PHP. Python. Rust. Whatever :slight_smile:

It just happens that my first need was from the console and awk worked great. And then it was a natural evolution to front-end that with bash.

Then, sometime later, the idea hit me that I could make it available online as a service. So in true Unix fashion (which I started with back in 1982, after several years with a plethora of lesser-knowns) I used HTML+PHP to call an existing tool and parsed the return. So, basically, it’s a pipe, just on the net.

Anyway, not terribly complex, just obscure these days – except maybe to some old-school sysadmins.

Blame my fat fingers. While looking at the code to try and remember what I wrote, I fixed a typo that was spewing a warning message to the logs for the last ten years.

And then didn’t test my fix since I was supposed to be out the door… and of course fat-fingered in an actual fatal.

Fixed, and fingers duly punished.