Introduction
Introduction Statistics Contact Development Disclaimer Help
tRemove brtv script which belongs in a different repository - bitreich-memestat…
git clone git://src.adamsgaard.dk/bitreich-memestats
Log
Files
Refs
LICENSE
---
commit 9093a18858fbbc08bc3423e258eba8a87e94f7cd
parent 7503a598bf5ee73165e4deedf8b85c5a633de49e
Author: Anders Damsgaard <[email protected]>
Date: Tue, 11 Aug 2020 16:49:20 +0200
Remove brtv script which belongs in a different repository
Diffstat:
D brtv-start.sh | 142 -----------------------------…
1 file changed, 0 insertions(+), 142 deletions(-)
---
diff --git a/brtv-start.sh b/brtv-start.sh
t@@ -1,142 +0,0 @@
-#!/bin/sh
-# generate title animations and start streaming server
-
-pass="$(cat icecastpass)"
-
-if [ $# -ne 1 ]; then
- printf 'usage: %s <memecache_path>\n' "$0" >&2
- exit
-fi
-
-### CONFIGURATION START
-
-# streaming server executable
-#bin=vlc
-
-# intermediate playlist file
-playlist="playlist"
-
-# memecache source dir
-memecache="$1"
-
-# converted memecache dir
-memecache_conv="memecache"
-
-# title animations dir
-title="title"
-
-# ffmpeg codec flags for generated animations
-ffmpeg_codec="-acodec libopus -b:a 96K -vcodec libvpx -f webm -vf scale=1280:-…
-
-# target video resolution
-video_resolution=1280x720
-
-# slide style
-bgcolor=magenta
-fcolor=white
-
-# show image memes for this duration, must be two digits [s]
-image_display_time=10
-
-# show title slides for this duration, must be two digits [s]
-title_display_time=05
-
-### CONFIGURATION END
-
-
-fit_img_16_9() {
- convert -resize "$video_resolution"\> -size "$video_resolution" "$1" \
- xc:"$bgcolor" +swap -gravity center -composite "$2"
-}
-
-video_from_img() {
- ffmpeg -y \
- -f lavfi \
- -i anullsrc=r=48000 \
- -i "$1" \
- -t "00:00:${image_display_time}" \
- $ffmpeg_codec \
- "$2";
-}
-
-title_slide() {
- img="$(basename "${1%.*}".png)"
- convert -size "$video_resolution" "xc:${bgcolor}" \
- -pointsize 48 -fill "$fgcolor" \
- -gravity center -draw "text 0,0 '#${img%.*}'" "$img"
- ffmpeg -y \
- -f lavfi \
- -i anullsrc=r=48000 \
- -i "$img" \
- -t "00:00:${title_display_time}" \
- $ffmpec_codec \
- "$2" && rm "$img"
-}
-
-video_conv() {
- ffmpeg -y -i "$1" $ffmpeg_codec -max_muxing_queue_size 1024 "$2"
-}
-
-mkdir -p "$title"
-mkdir -p "$memecache_conv"
-
-# generate video from each image
-for f in "$memecache"/*.jpg "$memecache"/*.JPG "$memecache"/*.png "$memecache"…
- out="${memecache_conv}/$(basename "${f%.*}.webm")"
- if [ -e "$f" ] && [ ! -e "$out" ]; then
- printf 'in: %s, out: %s\n' "$f" "$out"
- fit_img_16_9 "$f" "${out%.*}.jpg"
- video_from_img "${out%.webm}.jpg" "${out}"
- fi
-done
-
-# make animation for fallback stream
-if [ ! -f bitreich-tv.webm ]; then
- title_slide bitreich-tv bitreich-tv.webm
-fi
-
-
-# make title slides for video and converted images and encode to common codec
-for f in "$memecache"/*.mkv \
- "$memecache"/*.mp4 \
- "$memecache"/*.webm \
- "$memecache_conv"/*.webm; do
-
- title_path="${title}/$(basename "${f%.*}.webm")"
- [ ! -e "$title_path" ] && title_slide "$f" "$title_path"
-
- out="${memecache_conv}/$(basename "${f%.*}.webm")"
- [ ! -e "$out" ] && video_conv "$f" "$out"
-done
-
-# generate random playlist from converted memes and add title slides
-find "$memecache_conv" -maxdepth 1 -name "*.webm" -type f | \
- sort -R | \
- awk -v memecachedir="$memecache" -v titledir="$title" '
- function add_title(s) {
- sub(/memecache/, "title", s);
- return s
- }
- {line=$0;
- print "file \""add_title($line)"\"";
- print "file \""$0"\""}' | sed "s/\"/'/g" > "$playlist"
- #print "file \""$0"\""}' | sed "s/\"/'/g" |grep -v title> "$playlist"
-
-printf '\nstarting fallback stream\n'
-ffmpeg -loglevel quiet \
- -stream_loop -1 -i bitreich-tv.webm
- -f webm -codec copy
- icecast://source:${pass}@localhost:8000/brtvfallback
-
-exit 0
-
-sleep 5
-
-printf '\nstarting stream\n'
-
-ffmpeg -f concat -safe 0 -stream_loop -1 -i "$playlist" \
- -f webm -cluster_size_limit 2M -cluster_time_limit 5100 -content_type …
- -analyzeduration 2M -probesize 2M \
- -codec copy \
- -deadline realtime -threads 8 \
- icecast://source:${pass}@localhost:8000/brtv
You are viewing proxied material from mx1.adamsgaard.dk. The copyright of proxied material belongs to its original authors. Any comments or complaints in relation to proxied material should be directed to the original authors of the content concerned. Please see the disclaimer for more details.