Posts Tagged ‘TVerminal’

TVerminal-GUI (Una interfaz gráfica simple)

Saturday, April 25th, 2009

Siendo que algunos se les complico con tanta, tanta terminal aqui va una pequeña interfaz realizada con Zenity para TVerminal

[falta imagen]

Zenity es un programa muy simple que permite elaborar interfaces en streaming, o sea en tiempo real con una tubería de BASH.

[falta imagen]

#!/bin/bash
#
# Si encuentra una error no dude en enviarlo a info@elelefantemoteado.com.ar
#
# zenity http://library.gnome.org/users/zenity/stable/
# cut
# grep
# TVerminal - http://elelefantemoteado.com.ar/txt/?p=19

# Elige entre Radio o TV
tipo=$(zenity --list --column "Elige" "radios" "canales"  2> /dev/null);
echo $tipo
numero=1
while [ $numero ]
do

	# Construye la lista de canales o radios
	numero=$(TVerminal $tipo lista | grep  "..*" |  grep  -v "@" |  zenity --list --height 500 --width 400 --column  $tipo --column Descripcion 2> /dev/null | cut -d'.' -f 1);
	echo $numero

	# Reproduce el canal
	TVerminal $tipo $numero "-cache 1024"

done

Enlace

PD: recuerde que al bajar los script ponerlos con permiso de ejecucion. (Chmod 777 TVerminal-GUI)

TVerminal – Television y radios en tu terminal

Monday, April 20th, 2009

NOTA: actualmente este script no anda, estoy buscando colaboradores para hacer lista de medios libres y/o no libres en la web, ver post gnu-tv

Hace tiempo que miro televisión y escucho radios desde diferentes paginas, por eso me hice un script para unirlas a todas, pero en cuanto pasaba el tiempo me di cuenta que lo mejor seria tenerlas en la web, para usar la lista de modo dinámico, por eso las subí a este sitio…

El script es muy simple, pero esta muy compacto, lo retoque bastante, empezó con una serie de script que enlazaban entre si y termino siendo 1 con funciones, y varias excepciones combinadas…

#!/bin/bash
# Si este script falla solicitar la ayuda variacion '-h', si continuan los errores, seguramente, es por que requieres los siguientes programas de shell, recuerde cambiar el reproductor por uno instalado en su maquina, si encuentra una error no dude en enviarlo a info@elelefantemoteado.com.ar a si como nuevos canales.
#
# awk
# wget
# sed
# sort, Si no lo tenes instalador tan solo buscalo en el programa y borra '| sort', este pone las estaciones de radio y television en orgen alfabetico.

# ---------------------------variables de usuario------------------------------
# Elegir el reproductor de audio y video, que desee, que el programa utilice

	REPRODUCTOR_VIDEO="mplayer"
	REPRODUCTOR_AUDIO="mplayer"

# repetir si, se quiere, el mismo reproductor para los dos casos

# ---------------------------Ayuda-----------------------------

if [ $# -lt 1 ]; then
	ayuda=1
fi
if [ $1 ]; then

	if [ $1 == "-h" ]; then
		ayuda=1
	fi
	if [ $1 == "--help" ]; then
		ayuda=1
	fi
fi
	if [ $ayuda ]; then
		echo "Uso:"
		echo
		echo " radios		Usar radio estaciones."
		echo " canales	Usar canales de television."
		echo "  lista		Lista de canales o radio estaciones"
		echo "  [1-N]		Numero de canal o radio estación que se desea escuchar o ver."
		echo " sugerencia	Enviar una radio estaciones o canal para sumar a la lista."
		echo " eliminar	Solicitud para la eliminar un 'canal' (solo, si no funciona)."
		echo " -h		Esta ayuda"
		echo " core		Ejecuta la version 'Core'"
		exit
	fi

tvoradio=1
lista=0

# ----------------------------funciones------------------------------

function lista_medios () {

	i=0

		for y in $RESULTADOS; do
			let i++
			y=`echo "${y}" | sed 's/\_/ /g'` # remplazar por 'tr'
			nombre=`echo "${y}" | awk -F"|" '{print $1}'`
			url=`echo "${y}" | awk -F"|" '{print $2}'`
			descripcion=`echo "${y}" | awk -F"|" '{print $3}'`

			if [ $eleccion ]; then
				if [ "$eleccion" == "$i" ]; then
					echo
					break 1
				fi
			else
				echo "${i}. ${nombre}"
				echo "	$descripcion"
				echo

			fi

		done

}

#---------------------------CORE---------------------------------------

function  core_funcion () {

	#-----------------------------GUI: radio o tv----------------------------------------

	echo -e "Seleccionar:\n\t0 - Salir\n\t1 - Televisora\n\t2 - Estancion de Radio"
	read tvoradio

	if [ $tvoradio == 2 ]; then
		tipo="radios"
	fi

	while [ $tvoradio -gt 0 ]
	do

		echo $tipo

		wget -q -O sintonias.txt "http://elelefantemoteado.com.ar/medios/$tipo.php"
		RESULTADOS=`cat sintonias.txt | sed 's/\ /_/g' | sort`

		echo "------------------"
		lista_medios

		#---------------GUI: Seleccion de canal------------
		echo "Elegir un canal y presionar  o <0> para salir"
		read eleccion

		if [ $eleccion ]; then
			lista_medios #elige que canal va a usar
			$REPRODUCTOR "$url" &> /dev/null &
			echo "Reproducciendo $nombre - Presione  para elegir otra estación o <0> para salir"
			read tvoradio
			kill %1 # matar el proceso mplayer, tengo el script en la mac
			sleep .5
		else
			tvoradio=$eleccion #salida indirecta
		fi
	done

	echo "GPL V3 - elelefantemoteado.com.ar"
	echo "Canales sacados principalmente de www.wwitv.com y contribucion de usuarios"

}

# ----------------------------programa------------------------------

workdir=$(mktemp -d) #temporal puede no ser nuevo
cd $workdir #va al directorio correspondiente

# Por defecto sirve para ver television
REPRODUCTOR=$REPRODUCTOR_VIDEO
tipo="canales" 

	if [ $1 == "core" ]; then
		 core_funcion #requiere que este en el PATH
		 exit
	fi

#---------------nuevo canal----------------

if [ $1 == "sugerir" ]; then 

	echo "Sugiriendo una:"
	radiootv
	read tipo
	echo "Escriba el nombre de la estacion"
	read nombre
	echo "Dirección (No pagina web, solo streaming)"
	read url
	echo "Descripcion breve"
	read descripcion

mail -s "Nuevo canal" -F "info@elelefantemoteado.com.ar" << EOF
	tipo: $tipo
	Nombre: $nombre
	Url: $url
	Descripcion: $descripcion
EOF
	echo "Muchisimas gracias, por colaborar :D "
	exit

fi

#---------------eliminar canal----------------

if [ $1 == "eliminar" ]; then 

	echo "Desea eliminar una:"
	radiootv
	read tipo
	echo "Escriba el nombre de la estacion"
	read nombre
	echo "Motivo"
	read motivo

mail -s "Nuevo canal" -F "info@elelefantemoteado.com.ar" << EOF
	tipo: $tipo
	Nombre: $nombre
	Motivo: $motivo
EOF
	echo "Muchisimas gracias, por colaborar :D "
	exit

fi

#------------------variavion radios-------------------

if [ "$1" == "radios" ]; then
	#verifica si pediste ver radios
	tipo="radios"
	REPRODUCTOR=$REPRODUCTOR_AUDIO
fi

#------------------lista de medios-------------------

wget -q -O sintonias.txt "http://elelefantemoteado.com.ar/medios/$tipo.php"
RESULTADOS=`cat sintonias.txt | sed 's/\ /_/g' | sort`

	#-------------------lista visible--------------------
	if [ $2 == 'lista' ]; then
		lista_medios
		echo "Hay $i ${tipo} disponibles - enviar nuevos a info@elelefantemoteado.com.ar"
		exit 1
	fi

	if [ $2 ]; then

		#-------------------escuchar--------------------
		eleccion=$2
		lista_medios #elige que canal va a usar
		$REPRODUCTOR "$url" $3
		echo

	fi

#-------------------Licencia--------------------

echo "Licencia GPL V3 - www.elelefantemoteado.com.ar"
echo "Canales sacados principalmente de wwitv.com y contribución de usuarios"

Algunas funciones básicas para utilizarlo:

Ejecución rápida, esta es una ejecución dinámica:

Usuario > TVerminal core

Los que prefieren los parámetros, pueden volcarlos simplemente así...

Ayuda:

Usuario > TVerminal -h

Lista de canales:

Usuario > TVerminal canales lista

Ver el canal número 3:

Usuario > TVerminal canales 3

Sugerencia un nuevo canal o radio estación

Usuario > TVerminal sugerencia

sugerencia eliminar un canal o radio estación

Usuario > TVerminal sugerencia

Para utilizarlo con interfaz gráfica ver este articulo

Descargar

Por Hacer:

  • Actualmente no anda bien.
  • Hacer que se puedan ver peliculas a elección.
  • Hacer que se puedan escuchar canciones a elección