Porthole update v1.4.0

July 2013

The latest update for Porthole adds a brand new feature. A feature that’s been requested quite a few times. Are you ready? This update, adds the option to use your Mac’s speakers while streaming via AirPlay! This means that your tunes will come out of your AirPlay speakers and your Mac. All in beautiful sync.

Instead of switching between local playback and AirPlay, now everybody has at least two sets of speakers!

Use all the speakers!

If you emailed me about this feature in the past, you’ll know that I held off on implementing this. Not because it was technically hard, but because it would require extra interface elements. Porthole has always been about being easy to use and elegant. Too much noise in the interface would compromise this. Hopefully you’ll agree that with version 1.4.0 I’ve found a middle ground that works.

Porthole v1.4.0

Porthole v1.4.0 with added options for enabling local playback.

As you can see the AirPlay Receivers and computer speaker are both located in separate sections. Porthole still primarily controls your AirPlay output and you’ll mainly use the top section of the menu. Everything is there to: switch between speakers, connect to all and stop streaming all together.

Select AirPlay speakers

Toggle AirPlay speakers.

Enable Mac speakers

Control your Mac’s output.

The bottom section allows you to toggle the computer speaker. By default it’s off. Click the menu item to turn it on, even while Porthole’s already active. The setting is saved and the next time you start streaming it’ll output according to your stored preferences. Click the menu item a second time to turn it off again.

The volume slider allows you to adjust the volume of the computer speaker, separately from the AirPlay volume. Remember that it directly influences the volume of the computer speaker. When you stop streaming, that’s how loud it’ll be.

Excited to try this on your setup? You can get the update via the ‘Check for Updates’-button, located in the Preferences window. Or just download the latest version from the website.

Porthole update v1.3.2

May 2013

I’m happy to have released two updates for Porthole this month, version 1.3.0 and 1.3.1. Why don’t I walk you through some of the things that were updated and improved.

Retina Graphics

For version 1.3.0 I focussed on cleaning up a lot of the interface. I never got around to adding Retina-compatible graphics to Porthole and this update takes care of about 90% of that. New in-app icons, setup wizard imagery etc. The AirPlay speaker icons were actually updated again in version 1.3.1 after I was told that graying out the music note when the speaker isn’t connected seemed to suggest the option was unavailable, instead of just inactive.

Porthole v1.2.2

Porthole v1.2.2

Porthole v1.3.0

Porthole v1.3.0, notice the much sharper menu bar icon

Porthole v1.3.1

Porthole v1.3.1, the speaker icon changes when it’s connected

Setup Wizard

The setup wizard was next to receive a little overhaul. Instead of going with the named progress indicator along the top of the wizard I wanted to do something that is a little easier to maintain and localize. I ended up using BFPageControl, which is actually a page control, but doubles easily as a low key progress indicator.

It’s also a little shorter and the image on the first step has a more obvious indicator of what Porthole looks like, in the menu bar.

Porthole v1.2.2

Porthole v1.2.2

Porthole v1.3.1

Porthole v1.3.1

Embedded Store

Next thing on the list is the option to purchase a license for Porthole from within the app. It’s entirely optional, but it provides a nice flow that takes out the license-key-copy-pasting that’s normally involved. The store window opens a secure WebView connection to FastSpring, with a theme that works well within an app.

It’s actually a component that’s provided and maintained by FastSpring themselves. You can get it here, on GitHub.

Porthole Purchase Window Porthole Purchase Window

Soundflower’s Volume

Porthole uses Soundflower to capture all the System Audio and transfer it to AirPlay speakers. I noticed that quite a few people encountered a bug where the output volume would be so low, the sound was practically inaudible. Upon further inspection I noticed that while Soundflower’s master volume was working fine, the left and right channel volume would be turned all the way down. Porthole only manipulates the mast volume and thus would not be able to fix it on its own.

My previous way of handling this issue was to instruct people to manually turn up the volume using Audio MIDI Setup.app. Which works, but is cumbersome and only works for people who look up the solution in the FAQ or email me for help. I finally decided to add an automatic fix in version 1.3.0, but not without the option to turn it off for people who require the left and right volume to be set to separate values.

Soundflower Volume Muted Soundflower Volume Fix

Password Protected AirPlay Speakers

This has been on my list for quite a while. It wasn’t a feature that was often requested, but it would enable everyone in more public spaces to password protect their speakers and still enjoy Porthole. Using passwords in OS X is tightly connected to Keychain, which stores passwords for all apps and even allows you to share passwords between them. I want Porthole to be able to use AirPlay passwords stored by iTunes, for example. The API for implementing this changed quite a bit between OS X 10.6 and 10.7+, but by wrapping MCSMKeychainItem and sskeychain this wasn’t too much of a problem.

You can now easily connect to all password protected speakers, use passwords stored in Keychain, or add new passwords straight from Porthole. Awesome!

Password Protected AirPlay Speakers

Other Minor Fixes

That’s about it for the manjor changes, fixes and updates. Apart from those I also made sure windows that are open (Preferences, License Window, Embedded Store) are pulled to the front when the menu bar icon is clicked, making it easier to see where they are.

The text on the buttons and menu items is more consistent, and the ellipsis make more sense now.

Stay tuned to see what’s up for the next update, follow me on Twitter and Facebook.

You can read more about Porthole on http://getporthole.com.

Broadcast your web project to Safari

April 2013

If you work on web projects in a team, you’re probably familiar with the situation where you want to quickly show your design or progress to a colleague, or test it on another computer. Usually this involves calling the person over or writing down/copying/emailing your IP address of the day.

Or you can use coucou + Safari and be done in a few seconds.

Safari has a special feature called “Bonjour bookmarks” that allows you to list all local web services your bookmarks bar, given that they are broadcasted using Bonjour. Coucou can help you with that last part. The broadcast menu in coucou lets you fire up custom services, like your Rails/MAMP/whatever project.

Start your web project

Start your web project

Start your web project

Like I said above, this will work with any type of local web server. Replace Rails with MAMP, Django or whatever you like, just remember to alter the port accordingly in the following step.

Broadcast your local web server

Launch coucou, enable the Broadcast option in the preferences and create a new service.

Add a new service

Choose the correct preset, or enter “_http._tcp.” and the port manually

Enable Bonjour bookmarks

Launch Safari and enable Bonjour bookmarks; they’re disabled per default.

Enable Bonjour bookmarks

You can enable Bonjour bookmarks on the Bookmarks tab

Show bookmarks bar

Don’t forget to display the bookmarks bar

Select your service from the menu

And that’s it. Click the menu item and it’ll load your website without copy-pasting, emailing or writing down your IP address!

Select your service

Your web service should show up in the list


Curious about what else coucou can do? Check out this post about using coucou to discover network services.

Available on the Mac App Store

Coucou is now available

April 2013


A little tool that helps us do our jobs more easily. No need to remember/copy-paste ip addresses, just use coucou to connect to your network services.

Are you a web developer? Check out this post about using coucou to streamline local web development.

Available on the Mac App Store

Coucou for web developers

March 2013

If you’re a web developer you probably recognize that moment where you’re running a local development evironment with MAMP/XAMPP, Rails or Node.js and need to see your site on another computer, or show someone else what you’re working on. Maybe to do a cross-browser check, maybe just to show how awesome this latest design looks.

This usually involves copy-pasting of ip addresses, emailing and other such nonsense. With coucou this can be done in just a few simple clicks. Let me walk you through it.

First we need to enable broadcasting in the preferences pane.

Enable broadcasting

Enable broadcasting

Now follow these steps:

  • click the menu bar icon;
  • select Broadcast and click New Service…;
  • select one of the presets in the window that pops-up or create a service manually;
  • click publish and you’re set!

Add a new service

Add a new service

Find a custom service

Your service is now visible for anyone using coucou, or any other Bonjour compatible app

You can unpublish the service by clicking the corresponding entry in the Broadcast menu.

Available on the Mac App Store