aboutsummaryrefslogtreecommitdiff
path: root/scripts/youtube-hls-stream.sh
diff options
context:
space:
mode:
authordec05eba <dec05eba@protonmail.com>2022-09-19 16:19:41 +0200
committerdec05eba <dec05eba@protonmail.com>2022-09-19 16:19:41 +0200
commit85cd5a9d113de506c0722acaada68af56c9f9642 (patch)
treec9d3d78b1c4c335c0c48144a1d39c7ef1ae8ce1a /scripts/youtube-hls-stream.sh
parent59b730a806c92acbf999a7fa35b8ece9fb7c3203 (diff)
Move scripts to script dir, add youtube-hls-stream script, fix twitch stream script
Diffstat (limited to 'scripts/youtube-hls-stream.sh')
-rwxr-xr-xscripts/youtube-hls-stream.sh11
1 files changed, 11 insertions, 0 deletions
diff --git a/scripts/youtube-hls-stream.sh b/scripts/youtube-hls-stream.sh
new file mode 100755
index 0000000..21619af
--- /dev/null
+++ b/scripts/youtube-hls-stream.sh
@@ -0,0 +1,11 @@
+#!/bin/sh
+
+[ "$#" -ne 3 ] && echo "usage: youtube-hls-stream.sh <window_id> <fps> <livestream_key>" && exit 1
+mkdir "youtube_stream"
+cd "youtube_stream"
+active_sink="$(pactl get-default-sink).monitor"
+gpu-screen-recorder -w "$1" -c mpegts -f "$2" -a "$active_sink" | ffmpeg -i pipe:0 -c copy -f hls \
+ -hls_time 2 -hls_flags independent_segments -hls_flags delete_segments -hls_segment_type mpegts -hls_segment_filename stream%02d.ts -master_pl_name stream.m3u8 out1 &
+echo "Waiting until stream segments are created..."
+sleep 10
+ffmpeg -i stream.m3u8 -c copy -- "https://a.upload.youtube.com/http_upload_hls?cid=$3&copy=0&file=stream.m3u8"