Network MIDI Updates and Changes in OSX Yosemite

Apple’s Yosemite has received a lot of attention for the addition of Bluetooth MIDI over Bluetooth LE.  What has gotten less attention are the updates to Network Midi.  Here are a few things I have learned.

Network Midi has been included in Mac OSX since about 2004.  It allows computers to find one another over the LAN via Bonjour and to join each others’ MIDI sessions.  The protocol spoken by Network MIDI is defined in a IETF doc: RFC 6295, which was ratified in 2011.  An earlier version of this document (RFC 4695) was ratified in 2006.  It seems that this protocol standard has had a long and very slow evolution.

Apple’s implementation of Network MIDI has been sometimes criticized as “buggy.”  I myself had been able to isolate a bug in the implementation of the protocol.  I was delighted to find that Yosemite not only fixes that one specific bug, but seems to include a Network MIDI stack with entirely different characteristics from the previous versions.

  • Receive latency is much lower overall.
  • An erroneous delta timestamp format has been fixed (comex algorithm).
  • Realtime commands are sent (active sense, MTC).

I’ll keep this post updated as I learn more.

Real-Time Streaming Data Meetup

On November 21 I was pleased to participate in a meetup entitled Real-Time Streaming Data.  The organizer of this meetup assembles a wide variety of presenters and topics under the umbrella topic of “Large-Scale Production Engineering.” Chris (the organizer) does a remarkable job of keeping a pipeline of interesting talks coming.  I’m particularly interested in the January talk humorously entitled “Whatever happened to IPV6?”

Continue reading Real-Time Streaming Data Meetup

The Democratization of Broadcasting

Audio/Video broadcasting on the internet is widely supported by a number of “free” apps.  These apps shield the end-user from the ultimate cost of audio/video processing and transport.  But in some sense, they are not actually free.  Most of these apps ask you to trade personal information of value for the right to use the service. Types of valuable information include your identity, perhaps your friends’ identity, and most often they require your “attention” … in the form of advertising.  These items of “value” can be converted into real money, and the real money keeps the free service going, and the
virtuous cycle continues.

Broadcasting can require transcoding for each receiver

Broadcasting has many uses.  Some are commercial, but there are other types of one-to-many communications that are possible.  Exemplars for this type of service are the broadcast of a piano recital to members of the family, or the broadcast of an unusual impromptu street performer to a few friends.

This article examines the costs of broadcasting and asks if lowering the costs can result in a new service model: one that is lean, anonymous and speedy.

Continue reading The Democratization of Broadcasting

Microbroadcasting

I’ve recently become interested-in and fascincated-with the idea of “microbroadcasting.”  In the radio world, the term microbroadcast referred to a small radio station, often a pirate radio station. These stations broadcast infrequently, and often you needed to discover its frequency and program schedule through a means other than the radio station.

On the internet, anyone can be a broadcaster using only a smartphone with an app, or a webcam and some software.  There are plenty of “broadcast-it-yourself” applications.  So what is it that makes one a microbroadcaster and not a broadcaster?

Continue reading Microbroadcasting