Posts: 2
Threads: 1
Joined: Jun 2020
Reputation:
0
I have not used MobileSheets except for a few minutes with the trial. I am interested in purchasing it but only under certain conditions.
1. I would like a hands and foot free solution. Basically it functions by having the pages change automatically as the music is playing, synced to the performance. This way I can simply play along without having to worry about getting the correct page. This is rather easy function to implement by just allowing a page transition setting. I've actually written my own windows software that does this but I don't want to spend the time to add all the features that are nice that moblesheets already has but it is a deal breaker if mobilesheets does not have it as I already basically can do everything except a few extra things and I do not have android version).
I believe Mobilesheets does not have this feature. If not, how difficult and long would it take it add? It is a simple feature request in that it could be added in a day or two of coding. (Simply have a way to setup page changes, a simple time line editor that lets one set which page is set at which time, doesn't have to be fancy but could be such as half page transitions, scrolling, etc).
Ability for volume envelopes and EQ would be nice too. This helps in some cases but not a deal breaker. For example, if I'm playing along with bass I might need to EQ the song so the bass is easier heard.
Pedal Page switching would still need to work. I use an FCB1010 to do page switching since I have far more buttons to use for various things(play, pause, skip bars, etc... I have 100 buttons at my disposal and I can customize my software to do whatever I need. I can even do a volume control with the volume pedals)... clearly the software won't work with it but it would be nice. To do this would require sending midi through wifi. With touchosc I can send midi over it(using reaper and osc) so something similar could be done. This does require a windows computer. I've not messed with midi interfaces for android so not sure if it would work but would still require mobilesheets to work with it.
2. Licensing issues. I purchase the software I expect to "own it" in the sense that I do not want to be hassled with licensing issues or if the company goes south for whatever reason then the software stops working. Generally these programs that "phone home" end up always having problems later on. It's bad enough that I would have to purchase two just to use it on windows and android. At home I have a windows setup and android. I would only need the android tablet for going out but generally I would use windows because of a larger screen and no worrying about charging batteries.
If I could be confident that these things would all work out I wouldn't have a problem purchasing it... otherwise I would just stick to my software and videos since I already have all that done. I'm looking to upgrade but only if it really is an upgrade.
Posts: 13,392
Threads: 302
Joined: Apr 2012
Reputation:
238
Hello Stretti,
Adding support for timed page turns is certainly on my list of things to do. I'm currently working on finishing the new design of the annotations functionality and the upcoming iOS version. After those are finished, then I will be switching gears to working on new features such as this, chord grids, song versioning, etc. It's going to take me a bit to get through everything though, so if you need something in the short term, that's not going to be possible. It's not simple for me to sneak in new UIs to both Android and Windows (and potentially the companion application), update the database to have new fields to store all this, get translations for 15 languages, provide easy ways to cancel/restart the paged time transitions (will it start automatically, with pedal actions, touch actions or MIDI actions, etc) and ensure this works properly when using all supported features such as the "Connect Tablets" feature. While it's simple enough to have a basic UI that accepts a list of times for each page, anything fancier (such as a horizontal list with thumbnails for pages with the assigned time below each), would take more time and planning. If this feature needs to support partial page turns, needs to support triggering link points, or any other more complex mode of navigation through the song, this would obviously take a lot more time than just triggering a simple whole page turn.
I certainly want to provide support for EQ, but I haven't had time to implement the UI for this (I was thinking of a simple 3-band or 5-band eq). Volume envelopes would require a more complex UI where you can assign the volume amount over the period of the entire track. If I wanted to show a preview of the waveforms over the entire duration of the track, I would need to add code for that too.
I currently support up to 6 pedal actions which are nothing more than key bindings. I plan on supporting any number of key bindings in the future on a separate settings screen. I don't currently support MIDI over WiFi as there are no open source libraries available to handle this for Android and Windows (C# UWP). If you know of any libraries that are open source for commercial use, or any that are sold with a fixed price license, please let me know. I may try to implement my own library to handle MIDI over WiFi in the future, but this is not a terribly high priority. There are devices that can convert MIDI over WiFi to USB such as the mioXM. If you can get the MIDI messages into MobileSheets, you can map MIDI messages to actions under Settings->MIDI Settings->MIDI Actions.
As far as licensing goes, your choices are to purchase through an app store such as the Google Play Store or the Microsoft Store. I highly doubt either of those companies will go south. If you purchase through my FastSpring store, it uses a license key and contacts my licensing server for the initial few license checks. There is no offline licensing option. I need to protect my app from piracy (which is a major problem on Android), but I don't believe my implementation is very demanding. If you want more details, contact me directly at mike@zubersoft.com.
Mike
Posts: 2
Threads: 1
Joined: Jun 2020
Reputation:
0
07-01-2020, 11:46 AM
(This post was last modified: 07-01-2020, 12:25 PM by Zubersoft.)
(06-30-2020, 05:22 PM)Zubersoft Wrote: Hello Stretti,
Adding support for timed page turns is certainly on my list of things to do. I'm currently working on finishing the new design of the annotations functionality and the upcoming iOS version. After those are finished, then I will be switching gears to working on new features such as this, chord grids, song versioning, etc. It's going to take me a bit to get through everything though, so if you need something in the short term, that's not going to be possible. It's not simple for me to sneak in new UIs to both Android and Windows (and potentially the companion application), update the database to have new fields to store all this, get translations for 15 languages, provide easy ways to cancel/restart the paged time transitions (will it start automatically, with pedal actions, touch actions or MIDI actions, etc) and ensure this works properly when using all supported features such as the "Connect Tablets" feature. While it's simple enough to have a basic UI that accepts a list of times for each page, anything fancier (such as a horizontal list with thumbnails for pages with the assigned time below each), would take more time and planning. If this feature needs to support partial page turns, needs to support triggering link points, or any other more complex mode of navigation through the song, this would obviously take a lot more time than just triggering a simple whole page turn.
I certainly want to provide support for EQ, but I haven't had time to implement the UI for this (I was thinking of a simple 3-band or 5-band eq). Volume envelopes would require a more complex UI where you can assign the volume amount over the period of the entire track. If I wanted to show a preview of the waveforms over the entire duration of the track, I would need to add code for that too.
I currently support up to 6 pedal actions which are nothing more than key bindings. I plan on supporting any number of key bindings in the future on a separate settings screen. I don't currently support MIDI over WiFi as there are no open source libraries available to handle this for Android and Windows (C# UWP). If you know of any libraries that are open source for commercial use, or any that are sold with a fixed price license, please let me know. I may try to implement my own library to handle MIDI over WiFi in the future, but this is not a terribly high priority. There are devices that can convert MIDI over WiFi to USB such as the mioXM. If you can get the MIDI messages into MobileSheets, you can map MIDI messages to actions under Settings->MIDI Settings->MIDI Actions.
As far as licensing goes, your choices are to purchase through an app store such as the Google Play Store or the Microsoft Store. I highly doubt either of those companies will go south. If you purchase through my FastSpring store, it uses a license key and contacts my licensing server for the initial few license checks. There is no offline licensing option. I need to protect my app from piracy (which is a major problem on Android), but I don't believe my implementation is very demanding. If you want more details, contact me directly at mike@zubersoft.com.
Mike
----
Thanks,
Could you give me a rough estimate when you will get to adding an automated page turning feature? E.g., 6months or 4 years. I don't mind waiting a few months or so but years would be a problem.
Maybe you could rig up something, when you get the time of course, where you simply start a "page turn record mode" when playing back an audio file that records the page turns from a foot switch(or possibly swipe). This would be very minimal code(I'll explain it just to get your juices going if you haven't thought about it):
A record button, an enable button, and a remove all button(so if mistakes are made one can start over).
When record is enabled and playing, simply store the page turns with the page number and time in to the song. Might need to remove any burst of changes within some short time such as a few seconds(for mistakes, just keep last one).
Then when enabled, as the song is playing one just polls(or queues up) the page changes(not sure how well this would work on android, in my software I do it in the audio buffer loop so it is quite accurate).
The remove/clear just deletes all the page turns for the song so just a few lines of code.
Such a method would be minimal implementation and function well. Of course it would be nice to be able to edit the timings, pages, etc but it it is not necessary for a simple implementation.
From there you can then expand on it later on.
It's really minimal code, in your code that hands the page turns:
if (RecordPageTurnsEnabled)
{
RecordedPageTurns ~= new RecordedPageTurn(playbackTime, Page);
}
and in your playback thread
if (RecordPageTurnsEnabled)
{
foreach(r; RecordedPageTurns)
if (r.playbackTime ~= time)
changePage(r.Page);
}
or whatever. Probably easily less than 100 lines of code even with some checks and balances.
As far as the wifi stuff, osc could work well, it's just http stuff:
http://opensoundcontrol.org/
This would also let one to control the software using other means easily such as touch osc, reaper, etc. This would get one method
https://www.tobias-erichsen.de/software/rtpmidi.html
https://en.wikipedia.org/wiki/RTP-MIDI
https://en.wikipedia.org/wiki/Bonjour_(software)
https://www.midi.org/articles-old/rtp-mi...r-networks
https://archive.codeplex.com/?p=winrtpmidi
https://dev.to/atsushieno/managed-midi-t...i-api-56hk
I haven't messed with that stuff much lately. I use reaper for most of these things and it automatically has this stuff built in. Once I got it to work I stopped dealing with it. I use touchOsc to control my windows computer and have everything else interfacing through some custom software and reaper. It's mainly hacked together just so I can play back the audio files(using reaper). I also have some self-contained software that does was suppose to be effectively like your software where I have all the bells and whistles but I used the D language and it has just become a pain to maintain after I took a break to do other things. I ultimately just want to do music not write software(although the software is probably 70% done the D language becomes a serious pain because of the bit rot and how often they depreciate or regress and lack of standardized libraries for such work(gui, audio, etc)).
You could write a simple windows utility to do it. Just handle the standard midi port then translate that message in to a wifi message(or even osc) and send it to the ip of the android device and then handle it on android. On your side you just have to capture the messages so it's not that big of a deal. There are no timing issues except for lag which you can't fix anyways. I think osc would be the way to go as it just works and should be quite simple. You are just responding to uri requests. The client side does all the other work which you don't have to mess with unless you want to somehow setup the ability, say to sync multiple MobileSheets Apps(say have everyone's pages change at the same time(e.g., for an orchestra ). Even then, it is just sending a "uri request".
As far as the license, I only worry about if your server goes down... but if if the verification is checked by google on their side then I guess it wouldn't be a big problem.
Thanks for responding.
|