

Vamos a tratar el dual transconding en receptores enigma2 que son compatibles.
Streaming
Streaming es la capacidad que tienen los receptores enigma2 de poder emitir un canal del receptor en otro dispositivo, es decir poder compartirlo, en streaming normal el video y audio se comparte en la misma resolución que emite nuestro receptor enigma2.
- Por defecto el streaming se realiza a traves del puerto 8001
Transcodificacion
Cuando el streaming lo queremos emitir a dispositivos tipo movil o tablet, y por lo tanto queremos reducir el ancho de banda de red, pues algunos dispositivos tienen la capacidad mediante hardware de poder realizar la emisión en mas baja calidad, sobre todo si el canal a emitir es HD, de esta manera reducimos considerablemente el ancho de banda.
- Por defecto Transcodificacion se realiza a traves del puerto 8002
Una manera estandar de saber si nuestro receptor es compatible con la transcodificacion es simplemente si al acceder a openwebif nos aparece el icono tipo movil marcado en verde:

Dual Transcodificacion
ls /proc/stb/encoder
Si observamos como en este ejemplo que nos aparece encoder 0 y 1 pues nuestro receptor si es compatible con el dual transcoding, es decir poder emitir dos canales transcodificados a la vez.
- Ademas de ser compatible el hardware el receptor debe tener los drivers para poder realizar esta accion.
Realizar dual Transcodificacion
Si nuestro receptor es compatible como hemos visto con dos encoder, tenemos la posibilidad de realizar dos transcodificaciones, pudiendo configurar cada encoder de manera individual.
Visualmente en la interfaz del plugin trascondificacion lo podemos observar por que en la opcion encoder con las flechas de seleccion del mando a distancia podemos seleccionar 0 y 1 que se corresponderian como vimos con los disponibles en nuestro receptor en /proc/stb/encoder
Cada encoder como hemos mencionado lo podemos configurar de manera indepediente, es decir el encoder 0 podiamos configurarlo a 480p, mientras que el encoder 1 podriamos configurarlo a otra resolucion diferente
De este modo pues cambiaria la resolucion segun usemos el encoder 0 o 1, por defecto el primer transcoding usa el encoder 0 y el segundo canal que pusieramos usaria el encoder 1
Transcoding Avanzado
Anteriormente hemos visto simplemente un transcoding basico, que es basicamente cambiar la resolucion, pero si pulsamos boton azul en el plugin transcoding, nos aparecera un menu avanzado:
Vamos a realizar un repaso rapido de las opciones avanzadas:
auto set Frame /bitrate: Podemos seleccionar auto o configurar nosotros los valores (lo recomendable es poner auto para que los parametros se ajusten automaticamente dependiendo la resolucion que pongamos, en caso contrario podemos seleccionar:
- bitrate: Cantidad de flujo de datos que emitimos, a mayor bitrate mayor calidad pero tambien mas consumo de datos.
- Frame rate: Seria la cantidad de fotogramas por segundo que vamos a emitir, a mayor frame rate mayor calidad y mas consumo de datos.
Resolucion: Es el numero de pixeles en que se divide la pantalla en vertical y horizontal, a mayor resolucion mayor consumo de datos.
Audio codec, video codec: Pues simplemente podemos seleccionar los codec a usar en la transcodificacion.
GOP frame P: Emision den grupo de imagenes, podeis encontrar una explicacion en este enlace: https://ocw.unican.es/pluginfile.php/171/course/section/75/tema_2.2.pdf
Level: Los niveles abordan el problema del ancho de banda, la resolución máxima y los problemas de memoria en el lado del decodificador. Cualquier dispositivo dado admite un perfil máximo según la memoria y la resolución máxima disponible. Los niveles más bajos significan resoluciones más bajas, velocidades de bits máximas permitidas más bajas y menos memoria para almacenar
Profile: H.264 admite algunos perfiles de codificación ( Línea de base , Principal , Alta , Alta10 y Extendida ). Estos perfiles representan un subconjunto de las técnicas de codificación disponibles en H.264. Esto es útil para decodificadores de destino con capacidades de decodificación muy diferentes (memoria y potencia de procesamiento).
- B aseline profile solo admite un subconjunto limitado de técnicas, por lo que es más simple de diseñar, requiere menos código y menos potencia de procesamiento y, por lo tanto, está dirigido a dispositivos móviles de baja potencia y similares.
- El perfil principal admite la mayoría de las técnicas de codificación, por lo que necesita más código, más memoria y más potencia de procesamiento en el lado del decodificador. El perfil principal generalmente es compatible con set-top-box y similares.
- El perfil alto admite prácticamente todas las técnicas de codificación del H264. Está diseñado para HD y FullHD (transmisión por satélite Bluray y HD) y generalmente también es compatible con decodificadores de software.
- El perfil High10 va más allá de las capacidades de productos de consumo habituales de la actualidad, este perfil se basa en el perfil alto, agregando soporte para hasta 10 bits por muestra de precisión de imagen decodificada.
- El perfil extendido está diseñado como el perfil de transmisión de video, este perfil tiene una capacidad de compresión relativamente alta y algunos trucos adicionales para la solidez de las pérdidas de datos y el cambio de transmisión del servidor.
Test de uso dual Transcoding
En este caso hemos realizado un test para comprobacion del dual transcoding, usando para ello:
- El visionado de un canal en pc a traves de vlc
- El visionado de otro canal en movil a traves de app
En este caso, test correcto ambos canales se ven transcodificados, y podemos comprobar por terminal que ambos estan usando transetreamproxy y puerto 8002 por defecto: