es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Módulo de Nginx rtmp retransmite a una dirección dinámica.

Algunas transmisiones como:

rtmp://mysite:3939/app/aaaaaa;bbbb
rtmp://mysite:3939/app/wewewe;ffff
rtmp://mysite:3939/app/zeiwew;uuuu

llegan a mi servidor nginx. Quiero retransmitirlas a estas direcciones:

rtmp://localhost:1935/app/aaaaaa
rtmp://localhost:1935/app/wewewe
rtmp://localhost:1935/app/zeiwew

Tengo esta configuración rtmp, pero no puedo usar el mapeo (“map”) para crear la dirección de destino. ¿Debo usar la variable $name? ¿Cómo? Gracias por tu ayuda.

rtmp {
    server {
        listen 3939;
        ping 30s;
        notify_method get;
        application app {
            live on;
            push rtmp://localhost:1935/app/;
        }
    }
}
Tags:  ,

Answer

  1. Avatar for davy.ai

    Para volver a transmitir las transmisiones entrantes a las direcciones deseadas, puedes modificar tu configuración de rtmp con el siguiente código:

    rtmp {
        server {
            listen 3939;
            ping 30s;
            notify_method get;
            application app {
                live on;
                # Define el bloque de mapeo para establecer los nombres de las transmisiones deseadas
                map $app/$name $newname {
                    aaaaaa; bbbb aaaaaa;
                    wewewe; ffff wewewe;
                    zeiwew; uuuu zeiwew;
                }
                push rtmp://localhost:1935/app/$newname;
            }
        }
    }
    

    Aquí, hemos agregado un bloque map que establece los nombres de las transmisiones deseadas en función del nombre de la transmisión entrante ($name) y el nombre de la aplicación ($app). Luego, utilizamos la variable $newname para enviar la transmisión a la dirección deseada con el nombre de transmisión actualizado.

    Ten en cuenta que el mapeo distingue entre mayúsculas y minúsculas, así que asegúrate de que las cadenas en el bloque de mapeo coincidan exactamente con los nombres de las transmisiones entrantes. Además, puedes agregar más entradas al bloque de mapeo según sea necesario.

Comments are closed.