roMediaServer
10 min
el objeto romediaserver espera solicitudes de clientes, gestiona la negociación y, finalmente, genera una canalización romediastreamer para cumplir la solicitud para obtener más información, consulte la sección servidor multimedia brightsign docid\ b6e8mgh 2yp06llh1aha el equivalente en javascript es node media server este objeto actualmente admite solicitudes rtsp y http las solicitudes del cliente deben adoptar la siguiente forma protocol //ip address\ port/media streamer pipeline protocolo ya sea rtsp o http ip address\ puerto la dirección ip del reproductor brightsign y el número de puerto en el que se está ejecutando el servidor multimedia media streamer pipeline una canalización de transmisión multimedia, pero sin el componente de destino final (ya que el destino está implícito en la solicitud del cliente) creación de objetos el objeto romediaserver se crea sin parámetros createobject("romediaserver") ifmediaserver getfailurereason() as string devuelve información útil si los métodos start() , stop() o terminate() devuelven falso start(a as string) as boolean inicia una instancia del servidor multimedia a este método se le puede pasar una cadena que especifique el protocolo de transmisión y el número de puerto del servidor s = createobject("romediaserver") s start("http port=8080") se pueden agregar varios parámetros opcionales después del parámetro de puerto usando un "&" (ampersand) rastro muestra un seguimiento de mensajes en la negociación con el cliente este parámetro es útil particularmente para depurar sesiones rtsp por ejemplo "rtsp\ port=554\&trace" maxbitrate establece la tasa de bits instantánea máxima (en kbps) de la transferencia rtp iniciada por rtsp este parámetro no tiene efecto para http se ha comprobado que el valor del parámetro 80000 (es decir, 80mbps) funciona bien el comportamiento predeterminado (que también se logra pasando un valor cero) es no limitar en absoluto la tasa de bits por ejemplo "rtsp\ port=554\&trace\&maxbitrate=80000" hilos establece el número máximo de subprocesos que el servidor está preparado para ejecutar cada subproceso maneja una única solicitud de cliente el valor predeterminado es "5" por ejemplo "http port=8080\&threads=10" stop() as boolean detiene el servidor multimedia este método indica a todos los subprocesos que se detengan, pero no espera a que esto ocurra antes de destruir la instancia del servidor terminate() as boolean detiene el servidor multimedia este método espera a que todos los subprocesos se detengan antes de destruir la instancia del servidor ifuserdata setuserdata(user data as object) establece los datos de usuario que se devolverán cuando se generen eventos getuserdata() as object devuelve los datos de usuario que se han establecido previamente mediante setuserdata() devolverá inválido si no se han establecido datos ifmessageport setport(port as romessageport) publica mensajes en el puerto de mensajes adjunto ifidentity getidentity() as integer la interfaz ifidentity ha quedado obsoleta recomendamos usar la interfaz ifuserdata en su lugar