3 PROCESS_COUNT="$(pgrep fvlc | wc -l)"
4 if [[ $PROCESS_COUNT > 2 ]]
9 SOURCE_DOMAIN="${1:?error: missing source argument}"
10 DESTINATION_FILE="${2:?error: missing destination argument}.flv"
12 # This loop is a hacky workaround
13 # When tcpdump is given the -c1 argument,
14 # it refuses to output the packet contents
18 while [ -z "$URLHEAD" ]
20 LOCALHOST_IP=$(ifconfig wlan0 | grep 'inet ' | awk '{print $2}')
21 sudo tcpdump -vvvA -iwlan0 -s 500 \
22 "tcp port 80 and src $LOCALHOST_IP" >$TEMPFILE 2>/dev/null &
24 URLHEAD=$(grep 'GET /api/player' $TEMPFILE | awk '{print $2}')
29 QUERYURL="$SOURCE_DOMAIN$URLHEAD"
30 VIDEO_URL=$(curl $QUERYURL)
31 VIDEO_URL=${VIDEO_URL%\&title=*}
32 VIDEO_URL=${VIDEO_URL#url=}
34 mplayer $VIDEO_URL -dumpstream -dumpfile "$DESTINATION_FILE" 2>&1 >/dev/null & disown
35 notify-send -i .config/film.png "Buffering video "
37 vlc "$DESTINATION_FILE"