A Twitch upload is not live.
The upload button in the Video Producer adds a file to your Videos tab. Viewers watch it on demand, the way they watch a past broadcast. The channel does not go live.
Twitch limits that upload to Affiliates and Partners. A standard account cannot push an external file into the Videos tab.
Uploads also count against a cap. Highlights and uploads share 100 hours per channel, and they do not expire.
Three ways to air a file.
To go live with a recorded file, a stream has to leave an encoder and reach Twitch. Three setups do it, ordered by what they ask of you.
An OBS media source.
Add a Media Source to a scene, pick the file, and tick the loop option if it should repeat. Then start streaming with your Twitch stream key.
It is free and it works. The PC stays on for the whole broadcast, and the stream ends the moment OBS closes.
- Sources, then Add, then Media Source, and pick your file.
- Tick Loop if the file should repeat.
- In Settings, Stream, choose Twitch and paste your stream key.
- Click Start Streaming.
One FFmpeg command.
FFmpeg can push a file to Twitch without OBS. Replace the key with your own.
ffmpeg -re -i video.mp4 -c copy -f flv rtmp://live.twitch.tv/app/<key>
The -re flag reads the file at its natural speed, and -c copy sends it without re-encoding. That works only when the file is already H.264 video and AAC audio with a short keyframe interval. Otherwise the file has to be encoded first.
The stream stops when the file ends. A loop or a playlist needs a script around the command.
A hosted service.
A hosted playout service runs the encoder for you. You upload the file once, and it streams from a server, so your PC can be off.
The trade-offs are the upload itself, a storage cap and a monthly bill. Check that it labels the stream as a rerun.
Which one to pick.
One file, shown once, from a PC that stays on: OBS is enough. A scripted loop on a machine you already run: FFmpeg.
A channel that has to stay on air when you are away: a hosted service, because everything else depends on your PC.
Label it as a rerun.
A file aired live is a rerun like any other, so it takes the same label. Tick the Rerun checkbox, then put “[Rerun]” first in the title and again in the go-live notification. The reruns page has the steps, with Twitch’s wording.
One broadcast lasts 48 hours at most, so a loop has to reconnect before that. The 48-hour limit page explains how.
A file that airs cleanly.
A file with these settings can be sent as it is, without re-encoding. Anything else has to be converted first.
- Video: H.264, 8-bit, 4:2:0.
- Audio: AAC.
- Size: 1080p or lower.
- Frame rate: 60 fps or lower.
- Keyframes: one every 2 seconds.
The same settings in OBS.
In OBS, pick the x264 or NVENC H.264 encoder, AAC audio and a keyframe interval of 2 seconds.
Record with them and the file is ready to air later, with no conversion.
Only what you own.
Your own past broadcasts and recordings are yours to rerun. A film, a series or another creator’s video is not, unless a licence says otherwise.
A tool that streams the file does not change who holds the rights. The person who airs it does.
Old VODs Twitch already deleted.
Once Twitch deletes a past broadcast, nobody can bring it back. A copy you kept can still air.
An OBS local recording, or a VOD you downloaded before it expired, is an ordinary file. The three methods above work on it, if the format fits.