Skip to content

Running Telly: FFMpeg

Chaz Larson edited this page Jun 29, 2019 · 10 revisions

You may have noticed this in your config file:

# FFMpeg = true             # if this is uncommented, streams are buffered through ffmpeg; 
                            # ffmpeg must be installed and on your $PATH
                            # if you want to use this with Docker, be sure you use the correct docker image

What's FFMpeg?

FFMpeg.org

"A complete, cross-platform solution to record, convert and stream audio and video."

Why would I turn it on?

Normally, Telly just redirects Plex to the provider stream. If this stream is incompatible with Plex, or if network problems occur, Plex can give you that dreaded "Failure to tune" error.

With FFMpeg enabled, Telly will retrieve the stream and run it through FFMpeg on the way to Plex to convert it into a format known compatible with Plex. It can also smooth out network hiccups by providing a small buffer.

What do I have to do to turn FFMpeg on?

There are two steps:

Step 1: ensure it's installed

Using docker?

If you are using docker, choose the tellytv/telly:dev-ffmpeg docker image. FFMpeg is installed in that container.

Choosing a Docker Image

Go to Step 2.

Running telly as a standalone app?

Install ffmpeg.

First, install FFMpeg and ensure it is in your system path.

On Ubuntu linux, just open a terminal and type:

sudo apt install ffmpeg

On a Mac with Homebrew installed:

brew install ffmpeg

For other systems:

Download FFMpeg

On Windows, install it in a directory with no spaces [i.e. C:\ffmpeg rather than C:\Program Files\FFMpeg]. As I write this, I cannot recall exactly why, just that it took a couple hours of troubleshooting to figure out that one user's problems were caused by this. Spaces in paths are the work of the devil. Avoid them.

Add ffmpeg to your system path

If your path is correctly configured, you will be able to open a terminal or command window and type "ffmpeg" to run it, without changing into any particular directory first.

apt and brew will take care of that for you. On windows, you'll need to add the ffmpeg bin directory to your path. By that I mean the directory where ffmpeg.exe in located. If you download one of the standard Windows ZIP files from ffmpeg.org and uncompress it, that's the bin directory underneath the main directory.

Here's a detailed walkthrough on installing ffmpeg in Windows. It covers downloading, uncompressing, and setting up the path.

Step 2: Enable ffmpeg in the config

Then, in your config, uncomment the FFMpeg line:

FFMpeg = true             # if this is uncommented, streams are buffered through ffmpeg; 
                            # ffmpeg must be installed and on your $PATH
                            # if you want to use this with Docker, be sure you use the correct docker image

Enjoy living that ffmpeg life

That's all you need do. Restart telly [or its docker container] to get it to read the config file again and telly will send all streams through ffmpeg on the way to Plex.

You can verify that telly is using ffmpeg by watching its logs. There are examples of what the telly log looks like while playing a channel with and without ffmpeg in the Troubleshooting section of the wiki.

Clone this wiki locally