Jump to content

SnagLyrics (Beta)


FuryCell
 Share

Recommended Posts

SnagLyrics is a simple app to import lyrics into iTunes for viewing on the ipod. It uses 2 different databases (LyrDB and LyricsPlugin.com) and MusicBrainz fingerprinting to achieve a high success rate. It also uses my MTAudio library I posted earlier. Cheers.

Posted Image

Download

Edited by FuryCell
HKTunes:Softpedia | GoogleCodeLyricToy:Softpedia | GoogleCodeRCTunes:Softpedia | GoogleCodeMichtaToolsProgrammer n. - An ingenious device that turns caffeine into code.
Link to comment
Share on other sites

Looks professional. Thanks.

If it had an iTune-ish gui then it'd look a lot better.

Glad you like the app. IMHO the iTunes GUI is ugly though. I use iTunes becauase of its stellar ipod support and COM interface not its GUI.

HKTunes:Softpedia | GoogleCodeLyricToy:Softpedia | GoogleCodeRCTunes:Softpedia | GoogleCodeMichtaToolsProgrammer n. - An ingenious device that turns caffeine into code.
Link to comment
Share on other sites

It keeps telling me I don't have internet, when I know I do. Could you possibly add a small ping in there to make sure or possibly give an option to not prompt me, as this would be great to leave running for a few hours while I add lyrics to my 80gb set of music...

A few other minor things:

* Make the edit not scroll horizontally automatically (take out the $ES_AUTOHSCROLL style)

* Option to not report skipped songs?

* Have a better counter system, e.g. Done: ###, skipped: ###, failed: ###, total: ### / ####

* Is this what you intended with the progress?

Posted Image

Link to comment
Share on other sites

It keeps telling me I don't have internet, when I know I do. Could you possibly add a small ping in there to make sure or possibly give an option to not prompt me, as this would be great to leave running for a few hours while I add lyrics to my 80gb set of music...

I'll take a look and see whats wrong with the code for checking the internet. I'm also going to change the prompt for no internet to a simple message in t the edit box so it can continue right after it goes back up.

A few other minor things:

1 Make the edit not scroll horizontally automatically (take out the $ES_AUTOHSCROLL style)

2 Option to not report skipped songs?

3 Have a better counter system, e.g. Done: ###, skipped: ###, failed: ###, total: ### / ####

4 Is this what you intended with the progress?

1.Thanks. Will do.

2.Sounds like a good idea. on the TODO after the other things are fixed.

3. Also on the todo list.

4. There should be a function in there to redraw the status bar when the window is minimized. That happened to me until I added the code. Maybe it got lost or is flawed. I'll take a look.

All in all, Thank you very much Mat for the useful feedback. and AC/DC rules btw (Wheres whole lotta rosie?) =P

Edited by FuryCell
HKTunes:Softpedia | GoogleCodeLyricToy:Softpedia | GoogleCodeRCTunes:Softpedia | GoogleCodeMichtaToolsProgrammer n. - An ingenious device that turns caffeine into code.
Link to comment
Share on other sites

no whole lotta rosie :idea:

Hells Bells

Shoot To Thrill

What Do You Do For Money Honey

Given The Dog A Bone

Let Me Put My Love Into You

Back In Black

You Shook Me All Night Long

Have A Drink On Me

Shake A Leg

Rock And Roll Ain't Noise Pollution

Rock 'N Roll Train

Skies On Fire

Big Jack

Anything Goes

War Machine

Smash 'N Grab

Spoilin' For A Fight

Wheels

Decibel

Stormy May Day

She Likes Rock 'N Roll

Money Made

Rock 'N Roll Dream

Rocking All The Way

Black Ice

Highway To Hell

Girls Got Rhythm

Walk All Over You

Touch Too Much

Beating Around The Bush

Shot Down In Flames

Get It Hot

If You Want Blood (You've G...

Love Hungry Man

Night Prowler

Thunderstruck

Fire Your Guns

Moneytalks

The Razors Edge

Mistress For Christmas

Rock Your Heart Out

Are You Ready

few other bits:

1. Option to export failures (and optionally skipped) as a text file (or csv maybe), a playlist is a good idea though.

2. Resizing for the GUI (should be simple to implement)

Good work though, it works very well.

Mat

Edit: Not sure how much control over this you have, but " ' " shows as ’ in the lyrics.

Edited by Mat
Link to comment
Share on other sites

no whole lotta rosie :idea:

Hells Bells

Shoot To Thrill

What Do You Do For Money Honey

Given The Dog A Bone

Let Me Put My Love Into You

Back In Black

You Shook Me All Night Long

Have A Drink On Me

Shake A Leg

Rock And Roll Ain't Noise Pollution

Rock 'N Roll Train

Skies On Fire

Big Jack

Anything Goes

War Machine

Smash 'N Grab

Spoilin' For A Fight

Wheels

Decibel

Stormy May Day

She Likes Rock 'N Roll

Money Made

Rock 'N Roll Dream

Rocking All The Way

Black Ice

Highway To Hell

Girls Got Rhythm

Walk All Over You

Touch Too Much

Beating Around The Bush

Shot Down In Flames

Get It Hot

If You Want Blood (You've G...

Love Hungry Man

Night Prowler

Thunderstruck

Fire Your Guns

Moneytalks

The Razors Edge

Mistress For Christmas

Rock Your Heart Out

Are You Ready

few other bits:

1. Option to export failures (and optionally skipped) as a text file (or csv maybe), a playlist is a good idea though.

2. Resizing for the GUI (should be simple to implement)

Good work though, it works very well.

Mat

Edit: Not sure how much control over this you have, but " ' " shows as ’ in the lyrics.

The export option sounds good.

Resizing is a definite.

That quote thing should be a simple stringreplace. =)

Edit:Clarity

Edited by FuryCell
HKTunes:Softpedia | GoogleCodeLyricToy:Softpedia | GoogleCodeRCTunes:Softpedia | GoogleCodeMichtaToolsProgrammer n. - An ingenious device that turns caffeine into code.
Link to comment
Share on other sites

Feeling generous.

#region ::Create and display GUI
$GUI = GUICreate("SnagLyrics V" & $VerInfo, 363, 367, -1, -1, BitOR($GUI_SS_DEFAULT_GUI, $WS_MAXIMIZEBOX, $WS_SIZEBOX))
GUICtrlCreateGroup("", 0, 0, 361, 121)
GUICtrlSetResizing(-1, $GUI_DOCKMENUBAR)
GUICtrlCreateGroup("Playlist", 8, 16, 281, 49)
GUICtrlSetResizing(-1, $GUI_DOCKMENUBAR)
$ComboPL = GUICtrlCreateCombo("", 24, 32, 257, 25, BitOR($CBS_DROPDOWNLIST, $CBS_AUTOHSCROLL))
GUICtrlSetResizing(-1, $GUI_DOCKMENUBAR)
GUICtrlCreateGroup("", -99, -99, 1, 1)
$CheckboxSkip = GUICtrlCreateCheckbox("Skip tracks with existing lyrics", 128, 72, 169, 20)
GUICtrlSetResizing(-1, $GUI_DOCKMENUBAR)
$CheckboxAdvanced = GUICtrlCreateCheckbox("Use advanced lookup (slower)", 128, 89, 169, 20)
GUICtrlSetResizing(-1, $GUI_DOCKMENUBAR)
If $GenPUIDExists = 0 Then GUICtrlSetState($CheckboxAdvanced, $GUI_DISABLE)
GUICtrlCreateGroup("Mode", 8, 66, 113, 49)
GUICtrlSetResizing(-1, $GUI_DOCKMENUBAR)
$ComboMode = GUICtrlCreateCombo("", 24, 82, 89, 25, BitOR($CBS_DROPDOWNLIST, $CBS_AUTOHSCROLL))
GUICtrlSetResizing(-1, $GUI_DOCKMENUBAR)
GUICtrlSetData(-1, "Add|Remove", "Add")
GUICtrlCreateGroup("", -99, -99, 1, 1)
$ButtonGo = GUICtrlCreateButton("", 296, 16, 50, 50, $BS_ICON)
GUICtrlSetResizing(-1, $GUI_DOCKMENUBAR)
GUICtrlSetImage($ButtonGo, @AutoItExe, -5)
GUICtrlCreateGroup("", -99, -99, 1, 1)
$EditLog = GUICtrlCreateEdit("", 0, 121, 365, 220, $ES_READONLY + $WS_VSCROLL + $WS_HSCROLL)
GUICtrlSetResizing(-1, $GUI_DOCKBORDERS)

$StatusBar = _GUICtrlStatusBar_Create($GUI)
_GUICtrlStatusBar_SetMinHeight($StatusBar, 20)
Dim $StatusBar_PartsWidth[2] = [60, -1]
_GUICtrlStatusBar_SetParts($StatusBar, $StatusBar_PartsWidth)
_GUICtrlStatusBar_SetText($StatusBar, "Ready", 0)
$Progress = GUICtrlCreateProgress(0, 0, -1, -1)
$hProgress = GUICtrlGetHandle($Progress)
_GUICtrlStatusBar_EmbedControl($StatusBar, 1, $hProgress)
GUISetState(@SW_SHOW)
GUIRegisterMsg($WM_SIZE, "WM_SIZE")

Func WM_SIZE($hWnd, $iMsg, $iwParam, $ilParam)
    _GUICtrlStatusBar_Resize ($StatusBar)
    Return $GUI_RUNDEFMSG
EndFunc   ;==>WM_SIZE
#endregion ::Create and display GUI
Link to comment
Share on other sites

Thanks I will integrate your changes into the current version I am working on. I changed a lot of things the biggest of which is having the importing engine in a separate process to easily avoid any lockup issues and make maintaining the code easier. This also means anyone with basic programming skills could write a custom interface in their programming language of choice. A download should be available in the coming days.

Edit:Spelling

Edited by FuryCell
HKTunes:Softpedia | GoogleCodeLyricToy:Softpedia | GoogleCodeRCTunes:Softpedia | GoogleCodeMichtaToolsProgrammer n. - An ingenious device that turns caffeine into code.
Link to comment
Share on other sites

Updated to V0.6B

Now has the importing engine in a separate command line process to make things a lot more stable among other things.

Still to be implemented:

-GUI Resizing (using mat's very generous offer of code)

-Check for internet connectivity

-Log files

Get it above and please report if you find any bugs.

Cheers.

Edit:There is a small bug with the button icon not changing back after a job is done. It will be fixed in the next release

Edited by FuryCell
HKTunes:Softpedia | GoogleCodeLyricToy:Softpedia | GoogleCodeRCTunes:Softpedia | GoogleCodeMichtaToolsProgrammer n. - An ingenious device that turns caffeine into code.
Link to comment
Share on other sites

Updated to V0.6B

Now has the importing engine in a separate command line process to make things a lot more stable among other things.

Still to be implemented:

-GUI Resizing (using mat's very generous offer of code)

-Check for internet connectivity

-Log files

Get it above and please report if you find any bugs.

Cheers.

Edit:There is a small bug with the button icon not changing back after a job is done. It will be fixed in the next release

Any status bar fixes?

Edited by Mat
Link to comment
Share on other sites

Any status bar fixes?

The status bar should work as intended now. It seemed when the internet went down the code would hang and the progress bar would get corrupt. The main code being in a separate process fixed the status bar problem as far as I can tell.

HKTunes:Softpedia | GoogleCodeLyricToy:Softpedia | GoogleCodeRCTunes:Softpedia | GoogleCodeMichtaToolsProgrammer n. - An ingenious device that turns caffeine into code.
Link to comment
Share on other sites

The status bar should work as intended now. It seemed when the internet went down the code would hang and the progress bar would get corrupt. The main code being in a separate process fixed the status bar problem as far as I can tell.

I found it was going wrong when I resized the GUI using the code I gave you... I'll do some more testing later today.

Link to comment
Share on other sites

I found it was going wrong when I resized the GUI using the code I gave you... I'll do some more testing later today.

Thanks. =)

Anything else you noticed? The gui feels a lot smoother to me which is a big plus.

HKTunes:Softpedia | GoogleCodeLyricToy:Softpedia | GoogleCodeRCTunes:Softpedia | GoogleCodeMichtaToolsProgrammer n. - An ingenious device that turns caffeine into code.
Link to comment
Share on other sites

Updated to 0.6.1 Beta

  • Fixed a bug with button icon not changing back after job is done
  • Modified Syntax of SLCore.exe and included a text file showing it's syntax so it can be used by others

Download from the link in first post.

Please note. Using SLCore.exe you can import lyrics from the command line or even write your own GUI. =)

Edited by FuryCell
HKTunes:Softpedia | GoogleCodeLyricToy:Softpedia | GoogleCodeRCTunes:Softpedia | GoogleCodeMichtaToolsProgrammer n. - An ingenious device that turns caffeine into code.
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...