tbrtv-generate-playlist.sh - bitreich-tv - meme tv encoding and streaming | |
git clone git://src.adamsgaard.dk/bitreich-tv | |
Log | |
Files | |
Refs | |
LICENSE | |
--- | |
tbrtv-generate-playlist.sh (922B) | |
--- | |
1 #!/bin/sh | |
2 # supply hashtags.txt as stdin | |
3 # output is a plaintext playlist with urls to memes and title slides | |
4 # titles and image memes are served on a separate host ($title_image_hos… | |
5 | |
6 | |
7 ### CONFIGURATION START | |
8 | |
9 # other host to serve titles and images converted to videos | |
10 title_image_host="gopher://bitreich.org" | |
11 title_dir="tv/title" | |
12 img2vid_dir="tv/img2vid" | |
13 video_ext="webm" | |
14 | |
15 ### CONFIGURATION END | |
16 | |
17 | |
18 regeximatch() { | |
19 printf '%s' "$1" | grep -iEq "$2" | |
20 } | |
21 | |
22 add_title() { | |
23 printf '%s/9/%s/%s\n' "$title_image_host" "$title_dir" "${1#\#}.… | |
24 } | |
25 | |
26 while read -r tag url; do | |
27 | |
28 if regeximatch "$url" '\.(mkv|webm|mp4)$'; then | |
29 add_title "$tag" | |
30 printf '%s\n' "$url" | |
31 elif regeximatch "$url" '\.(jpg|jpeg|png|gif)$'; then | |
32 add_title "$tag" | |
33 printf '%s/9/%s/%s\n' "$title_image_host" "$img2vid_dir"… | |
34 else | |
35 # skip mpv-incompatible formats that are not converted t… | |
36 continue | |
37 fi | |
38 done |