Transport modes

There are three different modes of transporting the stream to the player.

Name Description
Standard input pipe This is the default behaviour when there are no other options specified.
Named pipe (FIFO) Use the --player-fifo option to enable.
HTTP Use the --player-http or --player-continuous-http options to enable.

Player compatibility

This is a list of video players and their compatibility with the transport modes.

Name Stdin Pipe Named Pipe HTTP
Daum Pot Player No No Yes [1]
MPC-HC Yes [2] No Yes [1]
MPlayer Yes Yes Yes
MPlayer2 Yes Yes Yes
mpv Yes Yes Yes
QuickTime No No No
VLC media player Yes [3] Yes Yes
OMXPlayer No Yes Yes [4]
[1](1, 2) --player-continuous-http must be used. Using HTTP with players that rely on Windows’ codecs to access HTTP streams may have a long startup time since Windows tend to do multiple HTTP requests and Streamlink will attempt to open the stream for each request.
[2]Stdin requires MPC-HC 1.7 or newer.

Some versions of VLC might be unable to use the stdin pipe and prints the error message

VLC is unable to open the MRL ‘fd://0’

Use one of the other transport methods instead to work around this.

[4]--player-continuous-http has been reported to work for HLS streams when also using the timeout option for omxplayer (see When using OMXPlayer the stream stops unexpectedly.) Other stream types may not work as expected, it is recommended that --player-fifo be used.

Known issues and workarounds

MPC-HC reports “File not found”

Upgrading to version 1.7 or newer will solve this issue since reading data from standard input is not supported in version 1.6.x of MPC-HC.

MPC-HC only plays sound on Twitch streams

Twitch sometimes returns badly muxed streams which may confuse players. The following workaround was contributed by MPC-HC developer @kasper93:

To fix this problem go to options -> internal filters -> open splitter settings and increase “Stream Analysis Duration” this will let ffmpeg to properly detect all streams.

Using --player-passthrough hls has also been reported to work.

MPlayer tries to play Twitch streams at the wrong FPS

This is a bug in MPlayer, using the MPlayer fork mpv instead is recommended.

VLC hangs when buffering and no playback starts

Some versions of 64-bit VLC seem to be unable to read the stream created by rtmpdump. Using the 32-bit version of VLC might help.

Youtube Live does not work with VLC

The stable version of VLC cannot play Youtube Live streams. This a known bug that is fixed in VLC 3, which is still in development. You can also try using a different player.

When using OMXPlayer the stream stops unexpectedly

When reading from a fifo pipe OMXPlayer will quit when there is no data, to fix this you can supply the timeout option to OMXPlayer using --player "omxplayer --timeout 20".