Quantcast
lotrointerface.com
Search Downloads


Go Back   LoTROInterface > LotRO Stand-Alone Plugins > RolePlay & Music


Post A Reply
Author Comments Comment Options
Unread 09-04-2012, 10:58 AM  
Chiran
The Undying
Interface Author - Click to view interfaces

Forum posts: 27
File comments: 301
Uploads: 2
Quote:
Anyway, I now have finished v1.0 of my "WAN Songbook Filler" (works on LAN, too, of course ). You can download it from http://lotro.hanft.de/wansongbookfiller/ (there's also some explanation on that web site). I don't know exactly how fault-tolerant it is, but it works with our own 5,000+ music files.
Very nice work, thanks!

-Chiran
Chiran is offline Report comment to moderator   Reply With Quote Reply With Quote
Unread 08-30-2012, 06:15 AM  
Arnhor
The Wary

Forum posts: 0
File comments: 11
Uploads: 0
Quote:
I noticed that parsing the .abc files can get tricky since the markup definition is so loose. There's also files around that break the already loose structure .
Oh yes, I can tell you a thing or two about it (we don't have big problems here because we created 99% of our ABC files ourselves, using LOTRO Midi Player, and afterwards editing the ABC files by hand, for example, correct some single notes, change the volume of some tracks, or enter a valid track title, and more).

Anyway, I now have finished v1.0 of my "WAN Songbook Filler" (works on LAN, too, of course ). You can download it from http://lotro.hanft.de/wansongbookfiller/ (there's also some explanation on that web site). I don't know exactly how fault-tolerant it is, but it works with our own 5,000+ music files.

While it was utterly needed by our own band, I hope it may help some other LOTRO musicians, too.

-Arnhor
Arnhor is offline Report comment to moderator   Reply With Quote Reply With Quote
Unread 08-29-2012, 11:28 AM  
Chiran
The Undying
Interface Author - Click to view interfaces

Forum posts: 27
File comments: 301
Uploads: 2
Quote:
Will post my results here when it's finished (and provide some download URL if you want to give it a try).
Sounds good. It also might help some people who are having problems with the .hta version. Btw, personally I noticed that parsing the .abc files can get tricky since the markup definition is so loose. There's also files around that break the already loose structure .

-Chiran
Chiran is offline Report comment to moderator   Reply With Quote Reply With Quote
Unread 08-28-2012, 12:36 PM  
Arnhor
The Wary

Forum posts: 0
File comments: 11
Uploads: 0
Thank you for your quick reply. I don't dare using /playlist without args any more - the game freezes for at least a minute, even when scanning only local files (I'm just using something like /playlist rootbeer* - this still works somewhat reasonably).

Meanwhile, I have already started a Delphi stand-alone application because I'm a good and fast Delphi programmer, but would need weeks or months with VBA The idea is:
  • scan the directories (including remote directories!) just once,
  • read the (new) "local database" just once, too
  • look for new or changed files, comparing file date/time and size - should be fast because it's only in-memory operations
  • read only new/changed files and fill the local database with the new data
  • write out the local database as LUA plugin data.
What I finished already:
  • Local scanning (without reading) of 5,219 files (date/time and size) - lasts less than 1 second!
  • Writing out the LUA plugin data file (currently only file names, no tracks yet) - in no time, too
Seems that scanning (and getting file date/time and size) is fast, reading (open/read/close) is slow... but when my application is finished, reading is only necessary for new/changed files (this works on local files, too - and thus even local updates should be faster). So it looks pretty good at the moment...

Will post my results here when it's finished (and provide some download URL if you want to give it a try).

-Arnhor
Arnhor is offline Report comment to moderator   Reply With Quote Reply With Quote
Unread 08-28-2012, 12:02 PM  
Chiran
The Undying
Interface Author - Click to view interfaces

Forum posts: 27
File comments: 301
Uploads: 2
Re: Thoughts about reading only changed files

Quote:
What do you think about all that? Do you think it's possible at all to remember file date/times and just read newer ABC files? I guess you'll be not very keen on programming such extension yourself when only one single user has a request for it; but I think my own Basic knowledge is good enough to get it right (at least, after some weeks or months of part-time programming, and many try-and-errors) to extend the HTA script. Of course, I would publish the such "extended" HTA script here, and maybe you'd find the idea good enough to include it in Songbook at all... or, the other way: Since I'm a Delphi programmer, I guess it would be easier (and much faster!) for me to create a stand-alone "Songbook filler" application (which I discovered to exist already, but for sure not considering file date/times as well) - is there more to it than write the file "SongbookData.plugindata" in LUA format?
I see your problem there. Yes, it would require that the file dates are stored locally somehow in a database or a file. The hta and the plugin are quite separate and there's no reason to write anything to plugindata, but any local storage will do of course. I had another solution for this, namely relying only on the in-game /playlist command. It wasn't as simple as I had hoped, so I'm not sure when I have the time and the energy to have a stab at it. How fast is that command for you?

However, by all means if you want to give your fix a try as well .

-Chiran
Chiran is offline Report comment to moderator   Reply With Quote Reply With Quote
Unread 08-28-2012, 04:19 AM  
Arnhor
The Wary

Forum posts: 0
File comments: 11
Uploads: 0
Thoughts about reading only changed files

Hello,

our band "Die Meisterbarden von Bree" is performing every Friday night at the Auction House of Bree on server Vanyar. We're 6-10 people, some of them gratefully using Songbook.

Since distributing (and "syncing") our many music files to so many people has become pretty complicated, we have installed a shared WebDav server and linked its directory below the "Music" folder and are now playing our music directly from that folder ("/play mb/lalala 21 sync" where directory "mb" is somewhere far away in the Internet - and always identical to all players).

Well, this works perfectly for playing, but the songbook.hta update script now lasts about half an hour (for about 5,000 ABC files) because it reads each and every ABC file - even those it does already know.

While this doesn't matter on a local disk (I would have programmed it that way, too), it's somewhat boring (and actually unnecessary with already-known files) when, at every update, every file is fetched by a GET from a web server over again.

I already had a look at the Songbook data files, and I came up with the idea of storing the file date/time along with the file data, and GET (=re-read) only those files which are newer than the file date/time already stored with that file (which would, of course, speed up local updates, too). I don't know Basic classes/records by heart yet, but I think, while reading fileItems in oDir.Files, there must be something like fileItem.DateTime, too, which could be stored locally, either in the PluginData itself (as additional LUA array component ["FileDateTIme"] or something like that), or within an additional "Basic-owned" mini-database (which may be easier to be re-read by the HTA script than the LUA arrays - on the other hand, with "CreateObject" in Basic, you could even store that information on an SQL server as well as long as there are some SQL client objects installed).

What do you think about all that? Do you think it's possible at all to remember file date/times and just read newer ABC files? I guess you'll be not very keen on programming such extension yourself when only one single user has a request for it; but I think my own Basic knowledge is good enough to get it right (at least, after some weeks or months of part-time programming, and many try-and-errors) to extend the HTA script. Of course, I would publish the such "extended" HTA script here, and maybe you'd find the idea good enough to include it in Songbook at all... or, the other way: Since I'm a Delphi programmer, I guess it would be easier (and much faster!) for me to create a stand-alone "Songbook filler" application (which I discovered to exist already, but for sure not considering file date/times as well) - is there more to it than write the file "SongbookData.plugindata" in LUA format?

Any tips, suggestions, thoughts, comments on this?

-Arnhor

Last edited by Arnhor : 08-28-2012 at 04:32 AM.
Arnhor is offline Report comment to moderator   Reply With Quote Reply With Quote
Unread 07-29-2012, 03:27 AM  
Chiran
The Undying
Interface Author - Click to view interfaces

Forum posts: 27
File comments: 301
Uploads: 2
Quote:
Great plugin, really enjoying it. However I have one suggestion and or question. The player button to show the window is practicly transparent. Any chance you could make it opaque or make a setting to set its transparency. I refer you to the lotropad that you also created the button for that was good nice and clear. Would like songbook button to be the same if at possible. Other wise this is a wonderful application
Ah yes, I'll keep that in mind. For now you can fix it by opening ToggleWindow.kua with a text editor and changing line 17 to your liking:

self:SetOpacity(0.25);

to

self:SetOpacity(1.0);

if you want it fully opaque.

Hope it helps .

-Chiran
Chiran is offline Report comment to moderator   Reply With Quote Reply With Quote
Unread 07-25-2012, 07:28 AM  
Honoun
The Wary
 
Honoun's Avatar

Forum posts: 0
File comments: 2
Uploads: 0
Great plugin, really enjoying it. However I have one suggestion and or question. The player button to show the window is practicly transparent. Any chance you could make it opaque or make a setting to set its transparency. I refer you to the lotropad that you also created the button for that was good nice and clear. Would like songbook button to be the same if at possible. Other wise this is a wonderful application
Honoun is offline Report comment to moderator   Reply With Quote Reply With Quote
Unread 07-19-2012, 06:01 AM  
Chiran
The Undying
Interface Author - Click to view interfaces

Forum posts: 27
File comments: 301
Uploads: 2
Re: Error

Quote:
...ginData/TRUELIKEtheRIVER/Arkenstone/Eromares/SongbookSettings.plugindata:1: unexpected symbol

...gs Online\Plugins\Chiran\Songbook\SongbookWindow.lua: 44: Unable to parse file!

are my 2 errors. it works on my newest toon but it doesnt work on my person named eromares and all my other toons

please help! it woukd me me very grateful
Hm there seems to be an error on the character-specific settings. Those errors are probably related. You can try the following:
1. unload all plugins or exit the game
2. find and delete the file that the first error refers to (SongbookSettings.plugindata with the exact same directory as in the error message)
3. load plugins or start the game

Hope it helps.

-Chiran
Chiran is offline Report comment to moderator   Reply With Quote Reply With Quote
Unread 07-18-2012, 09:21 PM  
TRUELIKEtheRIVER
The Wary

Forum posts: 0
File comments: 2
Uploads: 0
Exclamation Error

...ginData/TRUELIKEtheRIVER/Arkenstone/Eromares/SongbookSettings.plugindata:1: unexpected symbol

...gs Online\Plugins\Chiran\Songbook\SongbookWindow.lua: 44: Unable to parse file!

are my 2 errors. it works on my newest toon but it doesnt work on my person named eromares and all my other toons

please help! it woukd me me very grateful
TRUELIKEtheRIVER is offline Report comment to moderator   Reply With Quote Reply With Quote
Unread 06-20-2012, 03:32 PM  
Chiran
The Undying
Interface Author - Click to view interfaces

Forum posts: 27
File comments: 301
Uploads: 2
Quote:
Would you mind if I look into this problem on my own? (I would submit any possible modification to you of course)
Sure if you like, and that feature would probably be good for displaying ready checks as well.

-Chiran
Chiran is offline Report comment to moderator   Reply With Quote Reply With Quote
Unread 06-20-2012, 07:55 AM  
Mierin
The Wary

Forum posts: 0
File comments: 3
Uploads: 0
Quote:
Plugins on different computers cannot really communicate with each other except by more or less manually using, for example, the party chat channel to transmit information.
I understand that and I was more thinking on listing the messages "Player is now playing xxx" which are displayed in the chat window.

Would you mind if I look into this problem on my own? (I would submit any possible modification to you of course)

Mierin
Mierin is offline Report comment to moderator   Reply With Quote Reply With Quote
Unread 06-20-2012, 07:51 AM  
Mierin
The Wary

Forum posts: 0
File comments: 3
Uploads: 0
Double post

Last edited by Mierin : 06-20-2012 at 08:35 AM.
Mierin is offline Report comment to moderator   Reply With Quote Reply With Quote
Unread 06-20-2012, 04:43 AM  
Chiran
The Undying
Interface Author - Click to view interfaces

Forum posts: 27
File comments: 301
Uploads: 2
Quote:
Thanks for this plugin!
I was wondering if you could add the following feature for large bands.
The goal is to get the information in the chat log about who is choosing each part of the song and show it in the songbook window.
Thanks for the feature suggestion! That does indeed sound useful but although not impossible, it's not as straightforward as that with the current plugin system. Plugins on different computers cannot really communicate with each other except by more or less manually using, for example, the party chat channel to transmit information. So it would be a bit clunky . However, I'll certainly keep this in mind and see what could be done with it.

-Chiran
Chiran is offline Report comment to moderator   Reply With Quote Reply With Quote
Unread 06-19-2012, 11:43 AM  
Mierin
The Wary

Forum posts: 0
File comments: 3
Uploads: 0
Hello Chiran,

Thanks for this plugin!
I was wondering if you could add the following feature for large bands.
The goal is to get the information in the chat log about who is choosing each part of the song and show it in the songbook window.

For example : if there are 4 instruments for a song, the four are displayed in the part list. When a player selects one, his name is linked in the list to the correct part. The other players can then see which parts are already taken or not.
It would be great to manage large bands.

I hope you understand what I mean

Mierin
Mierin is offline Report comment to moderator   Reply With Quote Reply With Quote
Post A Reply

 
Category Jump:
Search this Category:
 

All times are GMT -5. The time now is 12:19 PM.


Our Network
EQInterface | EQ2Interface | Minion | WoWInterface | ESOUI | LoTROInterface | MMOUI | Swtorui