Category Archives: vlc-android

Run Multiple copies of VLC

To my surprise, one of VLC Remote’s users showed me how you actually can run multiple copies of VLC and remote control them with VLC Remote. (thank you Calvin!)

He is using them to stream to 4 zones in his house, but there are plenty of other reasons you might want to do this.

The trick is simply to run VLC from the command line and specify a different http-port value for each.

For Mac os, I used:

/Applications/VLC.app/Contents/MacOS/VLC --http-port 8090
/Applications/VLC.app/Contents/MacOS/VLC --http-port 8091

for Windows, the equivalent would be:

c:\Program Files (X86)\VideoLAN\VLC\VLC -VVV --http-port 8090
c:\Program Files (X86)\VideoLAN\VLC\VLC -VVV --http-port 8091

You’ll then need to add computers manually in VLC remote using the IP address of your computer and port 8090 (or whatever port you use).

If you’re doing this regularly, you’ll probably want to set up a batch file to start up your multiple instances. Calvin was able to set up his batch script so it pointed to individual audio devices in his streaming setup.

cd "c:\Program Files (X86)\VideoLAN\VLC\"


rem VLC session 1 with gigaport1 audio, port 8310, and russound1$

start cmd.exe /k "VLC -VVV --http-port 8310 --directx-audio-device={32776569-ABD9-4C9D-89B1-11E47A93EDEF} --directx-audio-speaker=Stereo \\atomic\russound1$"


rem VLc session 2 with gigaport2 audio, port 8320, and russound2$

start cmd.exe /k "VLC -VVV --http-port 8320 --directx-audio-device={39E33C1B-A451-4185-B470-2CBAEB769018} --directx-audio-speaker=Stereo \\atomic\russound2$"


rem VLC session 3 with  gigaport3 audio, port 8330, and russound3$

start cmd.exe /k "VLC -VVV --http-port 8330 --directx-audio-device={CF04DBB5-952D-4AEE-80F6-AEC2AFDAF671} --direct x-audio-speaker=Stereo \\atomic\russound3$


rem vlc session 4 with gigaport4 audio, port 8340, and russound4$

start cmd.exe /k "VLC -VVV --http-port 8340 --directx-audio-device={EEF16A7C-842C-4DA3-BA65-E8F24C0A0266} --direct x-audio-speaker=Stereo \\atomic\russound4$

Multi Monitor Wallpaper 2

Dynamic Wallpapers – Multiple Monitors

Multi Monitor Wallpaper just got its biggest update ever.

App Store Link

It isn’t just the best way to do wallpapers with multiple monitors – it’s great even if you only have one monitor!

  • Dynamic Wallpaper Support
  • AutoChanger (change wallpaper daily, hourly, on wake, etc)
  • Unsplash Browser
  • Multiple Space support (change wallpapers across multiple spaces)

Try Multi Monitor Wallpaper for Free

And I’m trying something new. Multi Monitor Wallpaper is still a paid app ($4.99) – but you can now download it and try it for 3 days completely free.

App Store Link

Multi Monitor Wallpaper 2 – Free Beta

  • Auto Change Wallpapers
  • Unsplash.com integration
  • Dynamic Wallpaper Support
  • New Simpler interface

(Note – this is a Mac OS app)

Please join in the free Beta test to let me know what you think, and help me put the final polish on the new app.

Download from the beta-testing forum post

Groundhog Day: Google Play keeps removing apps for the same false reasons.

Google requires that apps send sensitive information over https, and it also requires that you prominently disclose what you’re doing with user data.

This ‘a good thing’. I fully support these requirements.

Unfortunately, Google keeps removing my apps from the store for breaking these rules when I 100% definitively do not.

All my Android apps offer you an option to get setup instructions sent to you by email. This is the process:

1) I offer to send you instructions. You click on the orange button ‘Yes Send me details’

2) I open up a new page where you enter your email address and click the orange button ‘Send’

You won’t be surprised that this sends your email address to my server where I use it to send you instructions.

Naturally – that data is sent over https.

Here is where it gets frustrating:

First Removal

17th May:Message from Google Play:

After review, VLC Remote, com.hobbyistsoftware.android.vlcremote_us, has been removed from Google Play because it violates our personal and sensitive information policy.

…must handle the user data securely,… (for example, over HTTPS)….Your app is not currently handling user data securely.

I wrote back to explain that yes – my app is using https. They respond to say that ‘If, after making changes, you think your app is in compliance, please submit your app for another review.’

I clarify that I’m not making any changes – because none are required and resubmit.

25th May: They respond to say

Good news – I see your app, VLC Remote (com.hobbyistsoftware.android.vlcremote_us), was resubmitted earlier and has been approved.

Second Removal

29th May: A Very Similar Message

After review, VLC Remote, … has been removed from Google Play because it violates our personal and sensitive information policy … This app won’t be available to users until you submit a compliant update.

We go through the same dance. I explain that it isn’t violating their policy. It does send the user’s email to my server, but only when explicitly asked to – and over https.

They approve the resubmission.

Seriously – Again???

6th June:

After review, VLC Remote, com.hobbyistsoftware.android.vlcremote_us (Version Code: 47963), has been removed from Google Play because it violates our personal and sensitive information policy

The focus now is on ‘Prior to the collection and transmission, it must prominently highlight how the user data will be used, describe the type of data being collected and have the user provide affirmative consent for such use.’

I’m lost for words here. Supposedly, someone has reviewed the app. And they have looked setup help process. They clicked on ‘yes send me details’ then entered their email address, clicked ‘Send’ and they consider that I haven’t been clear about what is going on.

Incidentally – I had the exact same process with VLC Streamer on 20th March.

And of course my app is off the store – and not making any sales

I’ll build again, submit again and see what happens. This is getting very boring though…

Removed again – despite already being removed, and not having resubmitted yet!

13th June:

After review, VLC Remote, … has been removed from Google Play because it violates our personal and sensitive information policy

Your app is uploading users’ email information to … without posting a privacy policy in both the designated field in the Play Developer Console and from within the Play distributed app itself. Your app must also handle user data securely, … (for example, over HTTPS).

I’m guessing that my ‘this is ridiculous’ email triggered a review.

This time, the primary objection is that the app must have ‘a privacy policy in both the designated field in the Play Developer Console and from within the Play distributed app itself’

Of course – I do.

I know this because on the 29th May, VLC Remote was removed for exactly that reason.
On the 29th of May – it was correct. I did have a privacy policy linked in the store – but it wasn’t within the app itself. This app has been up for years, and I don’t know when the requirement came in to have the privacy policy within the app.

Anyway – after the email of the 29th of May, I sent in an update which added the privacy policy into the app within the settings page. I resubmitted and was approved.

At the time, I thought it was ridiculous that Google would remove the app from the store immediately over a violation like this. They could easily have sent me an email and given me (say) 7 days to put things right.

It was more ridiculous than removing me for the same reason _after_ I have fixed the problem.

btw; In the Apple store, when you submit an app for review, there is a ‘reviewer notes’ field. You can use this to let the reviewer know anything you think is important.

For example you might let them know where the privacy policy was shown (in the settings) – or that you always upload sensitive data over https. Google has nothing like this, and clearly doesn’t keep notes on review decisions / appeals.

I’m going to respond to the latest email with a link to this blog post. We’ll see what happens.

Update 18th June

I submitted yet another appeal. This time with a google doc to explain what was going on.

The response looked like the old rejections – but in the reviewer did helpfully highlight the version number.

It turns out this is an old build uploaded in 2016 which targets users on API level 14. There are 20 active installs.

I disabled all the old versions of the app, resubmitted, and (so far) everything is live.

(Hopefully) Final Thoughts

The Apple review process can be infuriating. Apple have some rules that seem ridiculous to me, and they’re seldom flexible about applying them. However, they communicate clearly – as real people. When there is a minor issue, they’ll ask you to fix it rather than just booting you out of the store. They also seem able to keep notes about previous discussions and if they have resolved one issue – they won’t come back to it again.

By contrast – Google make it seem like you’re dealing with a badly programmed Eliza-Bot.

There is no context in their replies – they just bang out the same template letters with no acknowledgement of any points, requests or comments you have made.

I’m wondering if they are forbidden from sending out personalised emails – and have to resort to highlighting as the only marginally personal communication method available to them.

I never got any acknowledgement that the first four removal reasons were completely without merit. But my app spent weeks out of the store because of them.

The final rejection felt like they were scraping the barrel to justify the removal – and although it was probably true (I haven’t checked) – the particular version was only used by 20 devices, and had been in place since 2016, so they could have either disabled that one version, or approved the app and asked me to do that within (say) 7 days.

This whole process was deeply frustrating – and in the end, no changes have been made to the builds which triggered the first bunch of rejections.

New App for Mac: AV Rules

When I connect my projector, I want my mac to switch to 1080p.

When I connect my TV, I want it to run at 720p

When hdmi audio output is available, I want my mac to use that (and to use all the channels too!)

Previously, my Mac mini didn’t do a great job of switching, so I wrote AV Rules to take charge.

rules


Buy Now

New Design – please tell us what you think

We have published the new design. I hope you like it!

However, this isn’t the end; We’re keen to get your feedback on what you like, and what you don’t. We’ll be working on tweaking and fixing things over the next couple of weeks.

You can email me directly through the ‘send feedback’ option in the settings.
Below is the list of things we know we need to work on…

thank you!

  • Fix some crashes
  • ‘Only show media’ not working
  • Remote is sometimes unresponsive
  • Bring back the stop button
  • Bring back the control ‘dials’
  • Hardware volume controls not working
  • Sort folders above files
  • Fix Favourites
  • Remember browsing position for remote
  • Bring back ‘Delete whole playlist’
  • Sort saved remotes alphabetically
  • Make the ‘play folder’ button much bigger
  • Volume up/down buttons should auto-repeat

VLC Remote – Auto resume.

Towards the end of 2014, I added a feature in VLC Remote to auto-save your position in a movie, and restart at the same place if you re-loaded that movie.

Since then, VLC have built the same feature into VLC itself.

It doesn’t make sense for the remote to be battling VLC – so I’ll be removing the ‘save playback positions’ feature from the remote and letting you set your preference in VLC.

This is how to do that:

Windows

0) Open the preferences (Menu/Tools/Preferences)
1) Select ‘All’ in the bottom right ‘Show Settings’ option
2) In the left pane, select ‘Interface / Main interfaces / QT’
3) In the right pane, scroll down until you find ‘Continue playback?’ and select ‘Always’
4) Click ‘Save’ in the bottom right.

VLC Windows resume prefs

Mac OS

0) Open the preferences (Menu/VLC/Preferences)
1) Click ‘Show All’ in the bottom right button (this will show more preferences)
2) In the left pane, select ‘Interface / Main interfaces / macosx’
3) In the right pane, scroll down until you find ‘Continue playback?’ and select ‘Always’
4) Click ‘Save’ in the bottom right.

VLC Mac resume prefs

That’s all!

Windows 10 updates…

We have a handful of updates to address some minor problems with Windows 10.

VLC Streamer is now updated to 5.07, and Watchover is now at 1.20.

Windows 10 is now available for public beta – so if you’re using it, do let us know of any other issues or problems you come across. We’d love to have the kinks worked out before the official Windows 10 release.

VLC 2.2 crash when browsing drives (fixed in VLC 2.2.1)

Update – the VLC team have fixed this bug in VLC 2.2.1.

You can get the latest VLC from http://videolan.org

There is a bug in VLC 2.2 which causes a crash in some circumstances when you try to browse the drives list on a Windows machine. This causes vlc itself to crash.

The vlc team have identified a fix, but I don’t know when they will release it.

In the meantime the easiest workaround is to download the previous version of VLC from the videolan.org website.

Alternatively, if you’re feeling brave, you could try one of their nightly builds which should have the fix – but which may have other bugs!

 

Right Click Booster – The hardest App Store approval I ever had!

My new app ‘Right Click Booster‘ is now available on the Mac App Store.

Like many of my favourite apps – this one springs out of an annoyance that I wanted to fix.

If you have used windows, then you may well have used one of the many right click commands in the finder. Some of these are built in, and some are added by third party apps.

Two that I particularly miss are

  • ‘Make untitled.txt here’
  • and ‘Open this directory in the terminal’

Mac OS has had the ability to use custom scripts as services – but they’re too far from the right click to be useful (right click, scroll down hover over services, skip right, find the command you need).

Finally – with the advent of Yosemite and finder extensions, Mac OS has an approved way for me to fix this.Right Click Booster actions.

Enter the Sandbox…

The app sandbox is designed to make sure that apps you download from the App Store can only interact with a limited selection of files (mostly within your own app sandbox).

The app I wanted to build lets you add, open or update files anywhere in the system.

If you want your app to be in the App Store – then it has to use the sandbox!

There is a (clunky) solution

Right click booster is a developer tool, and I wanted developers to be able to integrate their own scripts.

There is actually a way that Apple lets you do this.

Scripts can be run from the User Script Directory (every app has it’s own user script directory).

This seems like a great solution, but the app isn’t allowed to put scripts in that directory.

In my first submission, the app asks the user to open the directory – thus giving permission to the app to read and write files there. Apple didn’t like that.

In my next submission, I included the scripts in a .dmg file. My app can include the .dmg, open it and let the user drag scripts to the symbolic link to the user scripts file. Apple didn’t like that either.

In my final submission – the app takes you to my website where you can download the default scripts (as a dmg). Open that dmg, and install the scripts yourself.

There were many other issues along the way – but finally, Apple have allowed this solution.

Now you can run scripts with a right click

I use my app all the time!

The ones I use the most are Pod Update, and Update version (this runs ‘avgtool next-version -all’ which bumps the version number for all my targets in an xcode project)

My other favourites are the two I built the app for. ‘Open this directory in the terminal’ and ‘Create untitled.txt’ here.

Of course, other users will have other scripts and other ideas.

If they’re generally applicable, then I’ll add them to the default script list – so please do share them at the forum!

You can get Right Click Booster (currently free!) at the Appstore.