CocoaSplit uses libavformat along with either the OSX VideoToolbox hardware h264 encoder or x264 to stream to anything libavformat can handle.

Multiple outputs are supported, so you can save to a local file while streaming to something like

Audio codec is limited to AAC.


A variety of sources to choose from, including:
  • Webcams
  • Blackmagic video capture devices
  • USB video capture dongles
  • Text files
  • Desktop
  • Timers, countdowns, current date/time etc
  • Application windows
  • Shapes
  • Images
  • System audio devices, and audio files
  • Syphon, with integrated SyphonInject support


Output your video layout(s) to a variety of sources. Multiple simultaneous outputs are supported, including the ability to stop and start new outputs while live. Multiple input layouts are also supported. This allows you to serve different content to different outputs. The only limits are your available CPU and bandwidth.

Send your video to popular sites such as, Youtube or Smashcast. Your favorite site not one of the predefined output types? The RTMP output type should have you covered.

Local file output is also supported, including quick recording of the recent past, and dedicated high quality recording of any layout you desire


Need to do something a bit more complicated?
  • Write new sources, outputs or utilities in either Python, Objective-c or Swift
  • Define new shape sources via Javascript
  • Animate your layouts via Javascript