Stream/record your desktop/webcam to twitch/owned etc.
Find a file
Zakk 0058c741f4 Some changes for effect chains.
AVAudioEngine may not be a suitable replacement for the previous audio engine....god damnit apple
2020-02-18 04:06:08 -05:00
CapturePlugins Update TPCircularBuffer to get rid of deprecation warnings 2020-02-03 03:24:09 -05:00
CocoaSplit Some changes for effect chains. 2020-02-18 04:06:08 -05:00
CocoaSplit.xcodeproj Initial work on moving audio to AVAudioEngine. Things are a mess right now, but audio does flow from input to output with mixers in between 2020-02-16 13:51:53 -05:00
CocoaSplitCmd Remove some NSLogs 2019-06-22 04:46:21 -04:00
CocoaSplitTests Added files back 2012-10-21 23:53:17 -04:00
CSFFMpegCapturePlugin Removed 'force format' from global output settings; individual plugins are responsible for specifying output formats and allowing users to change them. 2019-10-30 04:30:36 -04:00
CSNDICapturePlugin Use non-versioned NDI call for the 'finder' object to prevent crash with newer NDI lib 2019-07-10 04:19:40 -04:00
ExtraPlugins Add a 'shouldLoad' class method to plugins. If this returns NO the plugin is skipped. 2019-09-17 05:07:58 -04:00
ImageUnitPlugins Update settings files for localization changes Xcode was complaining about. 2019-06-06 05:54:15 -04:00
QTCaptureHelper Removed a bunch of NSLogs 2017-12-09 09:02:32 -05:00
Sparkle.framework Update sparkle for notarization 2020-01-20 18:15:20 -05:00
StreamServicePlugins Update TPCircularBuffer to get rid of deprecation warnings 2020-02-03 03:24:09 -05:00
.gitignore Merge pull request #81 from MaddTheSane/gitignore 2017-07-02 03:00:43 -04:00
.gitmodules Update to latest syphon framework 2018-10-02 17:12:24 -04:00
CapturedFrameProtocol.h Rewrite QTCapture to use C based XPC API. This allows me to pass the IOSurface with the proper XPC call rather than some dumb semaphore hack. 2013-11-24 23:34:35 -05:00
CommandLine.md Various changes to support the command line version. Added Profile selection to AppleVTCompressor 2013-07-07 16:03:59 -04:00
CSNotifications.m Outputs now have an audio output selector/deleting. 2019-03-06 12:45:15 -05:00
InputPopupControllerViewController.h Add configuration of CALayer magnification and minification filters 2018-12-05 01:23:52 -05:00
InputPopupControllerViewController.m Fix a bunch of deprecations that came along with deploy target 10.12 2019-12-07 22:26:28 -05:00
QTHelperProtocol.h Added XPC based helper process to handle 32-bit Quicktime based sources. Should allow lots of capture cards/cams AND Camtwist to work 2012-11-13 05:39:54 -05:00
README.md Update README.md 2013-09-07 12:31:04 -04:00

CocoaSplit

BINARIES HERE: http://krylon.rsdio.com/zakk/cocoasplit/

CocoaSplit uses libavformat and the OSX VideoToolbox hardware h264 encoder to stream to anything libavformat can handle.

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

Audio codec is limited to AAC; this is done through AVFoundation's AVCaptureOutput, which means it does not support MP3. Sorry, maybe later.

Video input support: Webcam (Uses AVFoundation) Desktop (Uses CGDisplayStream) 32-bit QuickTime Inputs (QTCapture) - Camtwist and various webcam/capture cards should show up here.

Audio input support: AVFoundation audio (things like SoundFlower or Jack should work fine)

How to use

Setup your video and audio inputs.

Video: The resolution is the final output resolution; inputs are scaled to this resolution. No cropping is done. Output: Choose between local file or RTMP stream and click 'Add'. Remove entries by selecting them and clicking 'Remove'.

Click 'Stream!'

Click Stop when you are done.

All settings are saved.

TODO Some sort of status output while streaming is active. Use twitch and own3d API to get user's streamkey. Syphon input. Allow the option of using libavcodec's x264 encoder for those that don't have a hardware encoder.

Supported Platforms

So far only tested on a Retina MacbookPro running Mountain Lion (10.8)