Skip to content

VDR NG EM_0.5

bittor7x0 edited this page Apr 5, 2021 · 2 revisions

VDR-NG-EM 0.5 (30 Junio 2009)

A punto de empezar el apagón analógico y después de 5 meses de desarrollo tenemos disponible la nueva VDR-NG-EM 0.5 revisión 598.
Como suele ser habitual con cada nueva versión, es más rápida, más estable y con más funcionalidades.

Todo el VDR es más rápido (arranque, cambiar de canal, EPG, programaciones, grabaciones, SVDRP, etc.), el mando a distancia responde más ligero en todo momento, se ha optimizado notablemente el manejo de los discos duros, el interfaz web se ha mejorado y la velocidad del tráfico UDP por la red es mayor.

Incluye un kernel de alto rendimiento de baja latencia y con un planificador de procesos en tiempo real, lo que se traduce en un mayor rendimiento de la CPU, la memoria y el sistema de archivos.
También se han disminuido las latencias de los discos duros (tiempo medio que tarda la aguja en situarse en el sector deseado), aumentando por tanto sus RPM (revoluciones por minuto) proporcionando una mayor velocidad de transferencia.
Además, el kernel 2.4.21 de Siemens ha sido optimizado y se han corregido muchos fallos.

Podríamos decir que este firmware overclockea el hardware del M7x0 por software, pero a parte de ejecutar los programas más rápido, el planificador de procesos en tiempo real permite que el equipo funcione suavemente incluso teniendo altos consumos de CPU, algo que no se consigue con un overclocking normal, por lo que es un overclocking mejorado sin olvidarnos del aumento de rendimiento de los discos duros.

Hay que tener en cuenta que se ha modificado la codificación por defecto de los nombres de las grabaciones (que era compatible con sistemas de archivos FAT) por otro más rápido (para ext2/3), aunque también se puede usar la codificación antigua (leer apartado de novedades FAT).

Novedades de la versión VDR-NG-EM 0.5 revisión 598 (es la revisión del SVN)

Errores corregidos

  • Bug en el comando ejecutar del plugin FileBrowser.
  • Error al borrar automáticamente una grabación Timeshift si estaba grabando otra cosa a la vez.
  • Fallos en el plugin rssreader con el encoding y al convertir los caracteres a ISO (afectaba a algunos títulos de barrapunto).
  • En información del sistema (del menú Órdenes) no se detectaban los sistemas de archivos ext3 como particiones montadas.
  • El script cmd-io-test no hacía el test de rendimiento en sistemas FAT y NFS.

General

  • Actualizados los programas del ToolChain binutils 2.19.1, gcc 4.3.3 y uClibc 0.9.30.1.
  • Actualizados los programas incluidos en el firmware e2fsprogs 1.41.4 y busybox 1.13.3.
  • Añadido soporte para el M750T EPG (si el archivo "/etc/systemtype" contiene m750t se respetará el flash_content de este equipo).
  • Cuando hay un corte de luz o un apagado de la corriente se restaurará la fecha y hora de la última vez que se apagó correctamente hasta que se sincronice la hora por antena o por red.
  • Se han añadido más archivos de configuración al archivo de backup generado desde el menú Órdenes y se ha mejorado la carga del mismo para evitar errores con parámetros incompatibles entre firmwares.
  • Añadido el programa irexec que es un cliente de lircd y permite ejecutar comandos en función de pulsaciones de teclas.
    Por defecto está desactivado y si se quiere usar hay que activarlo en Configuración -> Configuración Firmware -> Configuración general -> Iniciar botones de rescate.
    Los botones predefinidos son (pueden cambiarse en /etc/lircrc):
    HELP + EXIT - Reinicia el Gigaset
    HELP + PIP - Reinicia/arranca el proceso VDR

FAT
Los usuarios del firmware Lemmi pueden omitir este apartado porque este firmware siempre usará el método FAT para codificar el nombre de sus grabaciones.

Esta versión de VDR ha cambiado la codificación de los nombres de las grabaciones por defecto por otro más eficiente para sistemas de archivos Linux como ext2/3 y es incompatible con FAT.

Hasta ahora las grabaciones se hacían con unos caracteres compatibles con FAT pero al VDR le lleva un coste extra codificar y descodificar los nombres de las grabaciones y como nadie o casi nadie que use VDR tendrá FAT en su disco para grabar ya no se hace ese esfuerzo extra de filtrar caracteres no válidos y por eso no veremos correctamente los acentos, eñes, etc. en los nombres de las grabaciones antiguas, porque ya no se hace ese filtrado extra pero es más rápido.

Antes el soporte FAT estaba en el binario VDR y sólo se podía desactivar a la hora de compilarlo y ahora está en tiempo de ejecución para que sea el usuario el que decida si quiere ese filtrado extra.

Hay dos opciones para corregir los nombres de las grabaciones:

  1. Renombrar manualmente las que estén mal con el botón ocho (estando encima de la grabación) o con el interfaz web.
  2. Añadir ** --vfat** (hay un espacio antes de los -- para no interferir con el parámetro ya establecido) en el parámetro vdr_options del archivo /etc/rc.local.conf (también está accesible a través del OSD en Configuración -> Configurar Firmware -> Configuración general -> Opciones del VDR) para que haga ese filtrado extra y usaremos el método de codificación usado hasta ahora pero más lento.

Aunque cueste un poco de esfuerzo es más óptimo el primero, pero si se usa un disco FAT para grabar se tiene que hacer obligatoriamente el segundo.

Las nuevas grabaciones ya no tendrán ese "problema" porque ya estarán codificadas con este nuevo método.

Kernel

  • Corregidos muchos fallos como fugas de memoria (memory leaks), bloqueos mutuos (deadlocks) o condiciones de carrera (race conditions) y otro tipo de errores encontrados en el código fuente.
  • Kernel de baja latencia que disminuye los tiempos de respuesta del sistema para ejecutar una orden dada y por lo tanto mejora sustancialmente la interacción de los procesos con el usuario.
  • Baja latencia también para los discos duros que aumentan su rendimiento.
  • Nuevo planificador de procesos en tiempo real que minimiza las latencias (del planificador) y asegura la ejecución de los procesos en un tiempo determinado (teóricamente en tiempo real con la limitación del hardware) permitiendo que el sistema responda suavemente con altas cargas de CPU.
  • Cuando el kernel detecta un nuevo disco duro ejecuta directamente el usbautomounter para montarlo, ya sea al iniciar el sistema o en caliente y descartará cualquier otro dispositivo, así se evitan llamadas innecesarias a /sbin/hotplug el cual ya no existe.
  • La caché de las estructuras dentry (entradas de directorio) consumen menos RAM.
  • No se actualizan los tiempos de acceso en los inodos cuando se usa Direct-IO (en las grabaciones) y en los demás casos sólo si es necesario (si son distintos a los que ya tienen guardados), así las escrituras en el disco duro son ligeramente más rápidas.
  • Mejorado el rendimiento UDP eliminando todo el código que guardaba la caché entre peers y de paso se reduce el tamaño del kernel.
  • Se ha desactivado el debug en el OOM (Out of Memory) killer para reducir un poco el tamaño del kernel.
  • Los nuevos procesos y threads obtienen el número de pid más rápido.

VDR

  • Más y mejores traducciones del VDR.
  • Algunas actualizaciones y correcciones obtenidas del VDR 1.7.8.
  • Si hay un fallo de corriente se inicia en el canal configurado para obtener la hora aunque no esté configurado como canal inicial.
  • Permitir el arranque de VDR sin directorios de grabación disponibles (útil para discos duros que tardan mucho en montarse).
  • Acelerar un poco el arranque eliminando el cálculo para saber si el inicio es manual o automático (no hace falta en nuestra versión).
  • Se elimina el parámetro "NextWakeupTime" del setup.conf, así ya no se tiene que cargar su valor al iniciar ni guardarlo al cerrar el VDR, pero si se restaura la configuración de un firmware anterior en el log advertirá que no reconoce el parámetro "NextWakeupTime", si queremos quitar esa advertencia simplemente hay que editar el archivo /etc/vdr/setup.conf y borrar manualmente la línea que contenga "NextWakeupTime".
  • Cuando estamos renombrando textos (p.e.: el nombre de una grabación con el botón ocho o una programación) podemos pasar a mayúsculas y minúsculas caracteres españoles como acentos, eñes, etc.
  • Establecer el modo VCR en apagado rápido.
  • Desactivada la salida digital de audio en apagado rápido.
  • Si hemos desactivado el volumen (mute), se mantiene en silencio al bajar el volumen.
  • Limpiar los eventos antes de cerrar el log.
  • Ajustar códigos de salida del VDR, permitir el cierre ordenado del VDR y eliminar autobloqueos.
  • Las grabaciones editadas no generarán el archivo marks.vdr.
  • Nueva opción en commands.conf para obtener datos de la EPG y actualizar programaciones del EPGSearch.
  • No se reinsertan los eventos pasados de la EPG porque algunos canales de TV envían datos pasados y se reinsertaban al escanear la EPG en busca de nuevos datos.
  • Nuevo parámetro en Configuración VDR -> Opciones de grabación -> Función del botón Pausa para definir lo que ocurre cuando pulsamos este botón durante una emisión en directo.
  • Mejorado el registro de cambios de hora del sistema para evitar problemas en sistemas lentos cuando hay una alta carga.
  • El thread para eliminar las grabaciones borradas se ejecuta en baja prioridad para evitar que interfiera con la reproducción (si se está reproduciendo algo).
  • Optimizadas algunas funciones como numdigits(), isnumber(), strreplace() y skipspace() que se usan por todo el código del VDR (menú, EPG, nombres de canales, programaciones, grabaciones, SVDRP, cargar XPM, etc.).
  • Ahora el comando LSTC de SVDRP puede listar los canales con separadores de grupo si se pasa la opción ':groups'.
  • Mejorado el rendimiento de los comandos LSTC y CHAN del SVDRP cuando se usan con un nombre de canal.
  • El comando PUTE de SVDRP soporta leer los datos de la EPG de un archivo dado.
  • Se ha desactivado el Direct-IO al reproductor para intentar que no haya cortes al reproducir mientras se hacen varias grabaciones simultáneamente incluso en discos muy llenos y/o fragmentados con un bajo rendimiento. La desventaja de usar el Buffer-IO es que se consume más CPU y RAM y en alguna ocasión puede demorarse la acción realizada unos muy pocos segundos con la reproducción hasta que se llena el buffer, pero en general va ligeramente mejor ya que incluso permite editar y ver algo a la vez sin problemas.

Facilidad de uso

  • Por semejanza a los firmwares oficiales se aumenta la velocidad para avanzar y rebobinar una grabación a x9.
  • Nuevo parámetro en Configuración VDR -> Varios -> Tiempo introducción canal (ms) que es el tiempo de espera (entre números) para introducir un canal de varios números (por defecto es 1 segundo = 1000 ms) o para considerar que ya hemos introducido el canal completamente.
    Por ejemplo si queremos poner el canal 20, pulsaríamos el 2 y tenemos 1 segundo para pulsar el 0, pero modificando este parámetro podemos ampliar o disminuir este valor a nuestro gusto.
    Estableciendo este parámetro a 0 desactiva el cambio automático de canal y el usuario tiene que confirmar la entrada de un canal pulsando el botón OK.
  • En Configuración VDR -> Varios se puede establecer si queremos cambiar entre grupos de canales y rebobinar/avanzar con los botones izquierda y derecha y si lo queremos hacer siempre o cuando sale la barra de info/reproducción o que siempre sean los botones del volumen (establecido así por defecto de cara a los nuevos usuarios).