I've got it working using the http
streaming option. You can also do this via a terminal command like this:
/Applications/VLC.app/Contents/MacOS/VLC [YOUR_VIDEO_FILE] --sout '#transcode{acodec=mpga,vcodec=mpeg}:std{access=http,mux=ts,dst=[YOUR_IP]:[PORT],user=[USER],pwd=[PWD]}'
Replace [YOUR_IP] with the IP of your streaming host, choose any free port like 8038, a user name and a password. Finally open the following network stream on VLC for iOS or Android:
http//[USER]:[PWD]@[YOUR_IP]:[PORT]
You can also conveniently stream the system audio output using Soundflower (this is currently the only working version for El Capitan, if you read this answer at a much later point in time, this information will likely be outdated). You also need sox
(for grabbing the audio device and piping it to VLC) and stdbuf
, which you can obtain via brew install sox stdbuf
(stdbuf
will reduce delays by disabling the terminal line buffer). Set both the system audio input and output to "Soundflower (2ch)" and then run this command:
stdbuf -i0 -o0 -e0 rec -t s16 -L -r 44100 -c 2 - | \
stdbuf -i0 -o0 -e0 /Applications/VLC.app/Contents/MacOS/VLC - \
--intf dummy --demux rawaud --rawaud-fourcc='s16l' \
--rawaud-samplerate=44100 --rawaud-channels=2 \
--sout '#transcode{acodec=mpga}:std{access=http,mux=ts,dst=[YOUR_IP]:[PORT],user=[USER],pwd=[PWD]}'
You can also use this to call someone on the local network. Set the system audio input/output back to speaker/microphone on both machines, open the http stream of the other machine and you are done. Just be careful that this connection is not encrypted. VLC also offers a https
option, but I haven't looked into it yet. The delay will also be pretty bad via http
. That can perhaps be improved by opusenc
instead of vlc
.
The HTTP option worked for me. – Lenar Hoyt – 2015-11-05T20:22:40.893
I DLed VLC for IOS as well, but havent set it up. Air Playit is what Im using now and see not need to replace it. http://www.airplayit.com/
– Keltari – 2013-07-28T21:08:25.130