Created
January 8, 2018 21:57
-
-
Save antlis/8cfa4fe8b8f5d5014c4c0493e44c5d28 to your computer and use it in GitHub Desktop.
Twitch streaming via ffmpeg
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# https://wiki.archlinux.org/index.php/Streaming_to_twitch.tv | |
streaming() { | |
INRES="1920x1080" # input resolution | |
OUTRES="1920x1080" # output resolution | |
FPS="15" # target FPS | |
GOP="30" # i-frame interval, should be double of FPS, | |
GOPMIN="15" # min i-frame interval, should be equal to fps, | |
THREADS="2" # max 6 | |
CBR="1000k" # constant bitrate (should be between 1000k - 3000k) | |
QUALITY="ultrafast" # one of the many FFMPEG preset | |
AUDIO_RATE="44100" | |
STREAM_KEY="$1" # use the terminal command Streaming streamkeyhere to stream your video to twitch or justin | |
SERVER="live-fra" # twitch server in frankfurt, see http://bashtech.net/twitch/ingest.php for list | |
ffmpeg -f x11grab -s "$INRES" -r "$FPS" -i :0.0 -f alsa -i pulse -f flv -ac 2 -ar $AUDIO_RATE \ | |
-vcodec libx264 -g $GOP -keyint_min $GOPMIN -b:v $CBR -minrate $CBR -maxrate $CBR -pix_fmt yuv420p\ | |
-s $OUTRES -preset $QUALITY -tune film -acodec libmp3lame -threads $THREADS -strict normal \ | |
-bufsize $CBR "rtmp://$SERVER.twitch.tv/app/$STREAM_KEY" | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment