#!/bin/bash

isxclient=$( readlink /dev/fd/2 | grep -q 'tty' && [[ -n $DISPLAY ]] ; echo $? )
if [[ ! -t 2  || $isxclient == "0" ]]; then
	DMENU="rofi -dmenu -p"
else
	DMENU="fzf --prompt"
fi

url="$1"

if [ -z "$url" ]; then
	url=$($DMENU 'URL')
fi

code=$( ( youtube-dl "$url" -F; echo "bb        Best of both") | sed -n '/format code/,$ p' | tail -n +2 | $DMENU "Quality " -m | awk '{print $1}')

code="$(echo "$code" | tr '\n' '+' | sed 's/+$//')"

case "$code" in
	"bb") mpv "$url" --ytdl-format="bestvideo+bestaudio" ;;
	*) mpv "$url" --ytdl-format="$code"
esac