
//
// Nagraudio  V0.5 
// Decodificador de sonido de nagravision para linux.
// http://asterix.uc3m.es/nagraudio
//

Instalacion:

Para compilar   -> "make" 
Para instalarlo -> "make install"
Para quitarlo   -> "make uninstall"

El directorio por defecto es el /usr/local, si quereis
otro editar el Makefile y poned el que os plazca.


Ejecucion:

Escribe nagraudio para empezar a oir cosillas :-).
Para ver los parametros disponibles teclea nagraudio -h o --help.

Opciones:

-8

  No uses esto a no ser que te quede otro remedio!!! XD.
  Bajo linux no hay (por ahora) soporte full-duplex de
  16 bits para tarjetas tipo SB16, asi que la decodificacion
  a 8 bits es la unica salida. Es muy pobre y se oye fatal
  pero no hay otra cosa.... :(

-i

  Esta opcion hace que el programa ignore el fichero de 
  configuracion y que arranque solo con los parametros
  de la linea de comandos. (Ver "Fichero de configuracion"
  mas abajo).

-a

  Esta opcion activa la autodecodificacion, es decir, que
  solo decodifica la seal si esta esta codificada. 
  Si te gusta cambiar mucho de canal usala, funciona bien
  (a mi por lo menos) y esta muy chula.

-d dispositivo

  Esto cambia el dispositivo por defecto de la decodificacion,
  que es /dev/dsp por cualquier otro (por si tienes mas de 
  una tarjeta de sonido)

-nogui

  Desabilita la gui en ncurses. No se podran hacer variaciones
  de la profundidad de los filtros ni grabar ficheros.

-g

  Este parametro sirve para compensar la perdida de seal
  debida a la decodificacion. Un valor de 1 multiplicara
  la seal por 2, con 2 se multiplicara por 4 y con 3
  se multiplicara por 8.

-pre n 

  Este parametro indica el nivel del filtro "pre modulacion".
  Este filtro sirve para eliminar el pitido que algunos 
  sintonizadores meten en la seal.

-post n

  Con este otro indicamos la profundidad del filtro "post
  modulacion". Este filtro se encarga de eliminar ruido
  innecesario en la seal.

AVISO: Desde la version 0.5 el significado de la profundidad
de los filtros ha cambiado. Una profundidad de 4 en las nuevas
versiones es equivalente a una de 7 en las antiguas!.  


Fichero de configuracion:

Con los fuentes adjunto un fichero de ejemplo. Creo que las
variables son auto-explicativas, aunque he aadido unos
comentarios por si acaso (aunque en ingles, "sorry").

El fichero de configuracion puede tener 2 ubicaciones:

1) Puede ponerse como "/etc/nagraudiorc", de forma que todos los
   usuarios leerian esa configuracion al arrancar el programa.
2) Para conseguir una configuracion personalizada se debe copiar
   como ".nagraudiorc" y ponerlo en el raiz de la cuenta
   (P. ej: "/home/galtor/.nagraudiorc").

Las preferencias personales sobreescriben a las generales, y la linea
de comandos sobreescribe a las preferencias personales. 


Gui:

La interfaz es muy sencilla y casi autoexplicativa. Me limitare a
explicar las teclas a usar:

d - Activa/desactiva la decodificacion 
a - Activa/desactiva la autodecodificacion
p - Cambia la profundidad del prefiltro.
o - Cambia la profundidad del postfiltro.
g - Cambia la ganancia de la salida.
r - Graba un fichero de sonido .raw
w - Graba un fichero de sonido .wav

Los ficheros de sonido se graban (por ahora) en "/tmp" y su nombre
sera del tipo "nagraudio???.raw" o "nagraudio???.wav". El programa
puede grabar un maximo de 999 ficheros del mismo tipo sin
sobreescribirlos, buscara un nombre libre para evitarlo.


Comentarios:

Yo poseo una SB-PCI64, y parece ser que con Sb16 y compatibles
no hay full-duplex a 16 bits, para estas tarjetas usar la 
opcion -8 o instalaros los drivers ALSA y recompilar el 
nagraudio con soporte para los mismos.

Ademas de esto solo los kernels > 2.1.120 tienen soporte de
full duplex asi que a actualizarse tocan :-).

Para los usuarios de una tarjeta como la mia (PCI64 o PCI128)
recordar que teneis que usar el truco del mixer de poner
en la entrada de linea el balance a la izquierda y en la 
salida el balance a la derecha para no oir el sonido
codificado y decodificado a la vez.


Agradecimientos:

Gracias a Ajo por publicar los fuentes de su decoder,
los cuales me ayudaron al principio. 

Gracias mil tambien a Vigata por su ayuda en todo lo tecnico
(sobre todo en los filtros). 

Gracias tambien a Zipher por la traduccion de este rollo al
idioma de "Chespir" (aunque seguramente con bastantes errores :),
que por supuesto me gustaria conocer ).

Dudas?, Sugerencias?, Insultos? :-)

Escribeme: galtor@gsyc.inf.uc3m.es 
