Author Topic: Call song by title and artist  (Read 5688 times)

0 Members and 1 Guest are viewing this topic.

rablack97

  • $upporter
  • Sr. Member
  • *****
  • Posts: 100
  • Karma: 0
    • View Profile
Call song by title and artist
« on: February 26, 2012, 09:38:58 PM »
Hello,

Is there a feature to call a song my title and artist.

For instance - "Play song Power by Kane West"

I'm asking as i have multiple songs with the same name buy performed by different artists.  This would be helpful if you are commanding vox with no computer screen to select the correct song.

I tried to create my own command an I blew up the program, so any help would be cool.


Kalle

  • $upporter
  • Hero Member
  • *****
  • Posts: 2319
  • Karma: 47
    • View Profile
Re: Call song by title and artist
« Reply #1 on: February 26, 2012, 10:02:08 PM »
Hello,

Is there a feature to call a song my title and artist.

For instance - "Play song Power by Kane West"

I'm asking as i have multiple songs with the same name buy performed by different artists.  This would be helpful if you are commanding vox with no computer screen to select the correct song.

I tried to create my own command an I blew up the program, so any help would be cool.


I'm surprised, I think this command has VC integrated into the standard installation for xbmc. "play song by artist"
***********  get excited and make things  **********

Kalle

  • $upporter
  • Hero Member
  • *****
  • Posts: 2319
  • Karma: 47
    • View Profile
Re: Call song by title and artist
« Reply #2 on: February 26, 2012, 10:24:16 PM »
Hello,

Is there a feature to call a song my title and artist.

For instance - "Play song Power by Kane West"

I'm asking as i have multiple songs with the same name buy performed by different artists.  This would be helpful if you are commanding vox with no computer screen to select the correct song.

I tried to create my own command an I blew up the program, so any help would be cool.


If you do not found the command, you can use this one http://voxcommando.com/forum/index.php?topic=488.msg3621#msg3621   ;)

Kalle
***********  get excited and make things  **********

rablack97

  • $upporter
  • Sr. Member
  • *****
  • Posts: 100
  • Karma: 0
    • View Profile
Re: Call song by title and artist
« Reply #3 on: February 26, 2012, 11:06:21 PM »
i used the command in the link and its been sitting in rebuilding mode for about 5 mins now.

James mentioned if it sits in this mode for that long something is wrong.

Ugh, this is what happened when tried to create my own command and i have to re-install vox...

Crap crap crap i just got it up and running....

rablack97

  • $upporter
  • Sr. Member
  • *****
  • Posts: 100
  • Karma: 0
    • View Profile
Re: Call song by title and artist
« Reply #4 on: February 26, 2012, 11:45:19 PM »
NVM, i removed the album part from the command, it loads now and it works

woohoo :yay :clap :yay

jitterjames

  • Administrator
  • Hero Member
  • *****
  • Posts: 7713
  • Karma: 116
    • View Profile
    • VoxCommando
Re: Call song by title and artist
« Reply #5 on: February 27, 2012, 10:13:26 AM »
If you read the post that Kalle linked to you will notice that I say this:

Quote
I recommend you use only one of the 3 possible song commands:
 "play song", "play song by artist", or "play song from album" since these use big grammars.  Otherwise your load times and memory use will go up."

It is important to understand that if you use these commands and you have many thousands of songs in your library.  VC must create hundreds of thousands of possible phrases to trigger them because we use sub phrases.

If you decide that you want to keep both the "play song X" command and the "play song X by artist Y" command then at least put them into different groups.  You will notice in the default configurations that I put "play song" in a group by itself.  This improves reliability and efficiency and reduces load time.

But I recommend you get rid of the regular "play song X" command.  Note that with the "play song X by artist Y" command you can use a wildcard like "anyone" (see attached image of the payload settings).  So you can say "Play the WatchTower by Anyone" and it will play the song "All Along the Watchtower" by bob dylan, and/or any other versions by other artists.
« Last Edit: August 07, 2014, 09:22:51 AM by jitterjames »

rablack97

  • $upporter
  • Sr. Member
  • *****
  • Posts: 100
  • Karma: 0
    • View Profile
Re: Call song by title and artist
« Reply #6 on: February 27, 2012, 03:58:40 PM »
I read and understood, and i figured it would cause a bit of a lag in load times.

Kalle pointed me to 2 types of XML one for artist and one for title by album.  As you stated i have 22,000 songs for it to go through.

I wasn't worried about calling a song title by album, so i removed that command totally.

Once i did that it loads normally and works, i can now call by song and by song by artist.

if i leave the by album by artist command then it sits forever.  So not sure what i did but it works like i want it too with no noticeable delay in load times.

 
« Last Edit: February 27, 2012, 04:17:22 PM by rablack97 »

jitterjames

  • Administrator
  • Hero Member
  • *****
  • Posts: 7713
  • Karma: 116
    • View Profile
    • VoxCommando
Re: Call song by title and artist
« Reply #7 on: February 27, 2012, 06:47:32 PM »
Once it has been cached it should reload pretty quickly, but every time you update your library and do a GenXML it will need to process it again.  Each group gets built in its own thread so if you put large commands like play song in separate groups it will rebuild much faster.

rablack97

  • $upporter
  • Sr. Member
  • *****
  • Posts: 100
  • Karma: 0
    • View Profile
Re: Call song by title and artist
« Reply #8 on: February 27, 2012, 07:07:30 PM »
ok so what do you mean by groups?

play by X is in one folder

play by X by Y is in another folder

they are both as you say in the same tree.....

jitterjames

  • Administrator
  • Hero Member
  • *****
  • Posts: 7713
  • Karma: 116
    • View Profile
    • VoxCommando
Re: Call song by title and artist
« Reply #9 on: February 27, 2012, 09:19:03 PM »
by groups I mean groups.  What you call folders, are, I think, groups.  The icons in the tree are indeed images of file folders.  So it sounds like you don't need to change anything.

rablack97

  • $upporter
  • Sr. Member
  • *****
  • Posts: 100
  • Karma: 0
    • View Profile
Re: Call song by title and artist
« Reply #10 on: February 27, 2012, 09:41:53 PM »
ok cool what the average time it should take to rebuild an extensive library?

it there a time i should assume that its locked up?


jitterjames

  • Administrator
  • Hero Member
  • *****
  • Posts: 7713
  • Karma: 116
    • View Profile
    • VoxCommando
Re: Call song by title and artist
« Reply #11 on: February 27, 2012, 10:11:59 PM »
it's a function of the size of your library and the commands you choose to use in your tree.  Obviously it also depends on the speed of your computer.  You've seen it rebuild on your system so you know how long it takes, right?  If one of your CPU cores is maxed out then it's probably still trying to build.

On my system if I purge the cache and rebuild everything it takes about 15 seconds.
« Last Edit: February 27, 2012, 10:14:11 PM by jitterjames »

rablack97

  • $upporter
  • Sr. Member
  • *****
  • Posts: 100
  • Karma: 0
    • View Profile
Re: Call song by title and artist
« Reply #12 on: February 27, 2012, 10:22:52 PM »
Every time i try to purge cache it says its empty.

Mine just finished, freakin half hour later...

I just did a restart and i'm sitting on about 5 mins so far just to reboot it.

I'm not running a quad core or anything, just an i5 2320 and 6 gb of memory.  Your's must be souped up to rebuild in 15 secs.

jitterjames

  • Administrator
  • Hero Member
  • *****
  • Posts: 7713
  • Karma: 116
    • View Profile
    • VoxCommando
Re: Call song by title and artist
« Reply #13 on: February 27, 2012, 10:35:51 PM »
LOL... It's empty because you purged it.

That i5 is a quad core, and probably faster than my AMD.

rablack97

  • $upporter
  • Sr. Member
  • *****
  • Posts: 100
  • Karma: 0
    • View Profile
Re: Call song by title and artist
« Reply #14 on: February 27, 2012, 10:58:27 PM »
well i guess i have no idea what i'm talking about :bonk....all i know is that its taking massive mins, not secs to rebuild.....

oh well just have to deal with it

Kalle

  • $upporter
  • Hero Member
  • *****
  • Posts: 2319
  • Karma: 47
    • View Profile
Re: Call song by title and artist
« Reply #15 on: February 28, 2012, 03:44:42 AM »
well i guess i have no idea what i'm talking about :bonk....all i know is that its taking massive mins, not secs to rebuild.....

oh well just have to deal with it
rablack97 question: Your 22.000 songs are on a external USB drive or NAS-Drive? Then it would me not surprise that it takes as long as.
Create a folder and put 100 or 500 songs init (harddrive on your PC), and try again. So you can see where the problem is, if you have a 1 or 2TB-harddrive and it is fragmented then it would not surprise me.

Kalle
***********  get excited and make things  **********

jitterjames

  • Administrator
  • Hero Member
  • *****
  • Posts: 7713
  • Karma: 116
    • View Profile
    • VoxCommando
Re: Call song by title and artist
« Reply #16 on: February 28, 2012, 07:48:50 AM »
the time Vox spends on this is all just in analysing the payload xml files and creating all the possible sub-phrases and then binding them to the data needed to trigger the command with the correct payload.  It does not matter where the songs are or if the disk is fragmented.  Actually, as long as the xml file can be read by VC, the audio files don't even need to exist.

22 thousand songs is beginning to push the practical limits, and you are using two commands that each create giant commands from all these songs.  The play song X by artist Y is particularly taxing because we can end up with some extremely long phrases and then hundreds of possible sub-phrases for each song.

My advice to you is to get rid of the "play song by artist" command completely.  For my own purposes I rarely ask for a song by name to begin with.  I mostly ask for playlists, artists, or albums, or genres.  If you ask for a song and it plays the wrong artist, you can always just advance to the next song and then the next until you get the right one.

That said, there are other ways to optimize.  First of all, if you want you can get rid of the subphrases completely, but then you will need to ask for the song by asking for the whole name of the song, which can often be difficult to remember.

Or if you want to keep subphrases you can go into advanced settings (VC options) and increase the minimum sub phrase length from 4 to something like 10.  This is the minimum length of a subphrases in characters so if you set it to 5 you won't be able to ask for a song by just saying "love" (4 characters) unless that is the complete name of the song.

You can also reduce the maximum subphrase length.

You should probably also make sure that you songs are cleanly tagged.  Most people, especially the ones with 22 thousand songs, actually have very messy libraries with poor tagging and  sometimes very long song and artist tags.  the longer the tag, the more strain it puts on VC.

And finally, if you can somehow filter out all the extra stuff that you know you are never going to ask for by name (classical music perhaps) this can also help.  There are tools to do this with XBMC and MediaMonkey but not JRiver.

Another option is to use dictation payloads instead of payloadXML.  This will load almost instantly, but since it isn't aware of your library it will not be able to match intelligently to what you've got.

rablack97

  • $upporter
  • Sr. Member
  • *****
  • Posts: 100
  • Karma: 0
    • View Profile
Re: Call song by title and artist
« Reply #17 on: February 28, 2012, 05:07:44 PM »
Yeah it's more like 63,000 songs.

It finally finished and is working ok....

I'm going to take what you recommended and do some clean-up of the tags and get rid of a few commands as suggested.

Also, once XBMC updates the library doesn't vox just acess a source within xbmc to create the xml's it doesnt source back the the location of the files does it?

Regardless, the files are on a server, but I would think that's why James states to have XBMC running when doing a GENXML as this is where vox gets the data.

I'll updated once i get it all cleaned up and do some testing with the subphrases and the tag cleanup

jitterjames

  • Administrator
  • Hero Member
  • *****
  • Posts: 7713
  • Karma: 116
    • View Profile
    • VoxCommando
Re: Call song by title and artist
« Reply #18 on: February 28, 2012, 05:37:15 PM »
No wonder.  I would say that is too many songs really, especially for the "play song by artist" commands.

I'm confused.  Are you using JRiver or XBMC?  If you are trying to load all your songs for both then it is going to make it even worse.

I would be curious to know what kind of memory consumption you've got going on.

rablack97

  • $upporter
  • Sr. Member
  • *****
  • Posts: 100
  • Karma: 0
    • View Profile
Re: Call song by title and artist
« Reply #19 on: February 28, 2012, 07:33:23 PM »
XBMC for now as it's interface is easier to use than Jriver.

I deleted my jriv library and pushed everything over to xbmc.  My full library in jriv looked a mess.

When i was testing I only imported 50 songs into Jriv.  So this wasnt an issue.

I can tell you that when it was comipling the library under processes, vox fluctuated between 80k-100K for memory usage.