Comunidad de diseño web y desarrollo en internet online

Es posible enviar 2 Streams con una sola cámara?

Citar            
MensajeEscrito el 02 May 2013 04:09 pm
Hola a todos, tengo una duda a ver si me la pueden solucionar.
Tengo un Flash en CS4 y AS3 en el que cojo la webcam del PC y usando la clase NetStream envío un stream a través de un canal hacia mi FMS con una determinada resolución.
Mi pregunta/problema es: Se pueden enviar 2 streams de distinta resolución usando una sola cámara?
Hasta el momento tengo algo como esto:

Código ActionScript :

netLocalStreamLowQuality = new NetStream(netConnection);
camera = Camera.getCamera();
camera.setQuality(0, 100);
camera.setMode(320, 240, 20);
camera.setKeyFrameInterval(10);
camera.setMotionLevel(100);
camera.setLoopback(false);
netLocalStreamLowQuality.publish("myChannel", "live");
netLocalStreamLowQuality.attachCamera(camera);

Es posible hacer lo que necesito? De esta forma, la persona que se conecta al stream podrá decidir si se conecta al Stream de baja calidad o al de alta calidad.

Alguien puede echarme una mano?
Muchas gracias

Por Palacio

Claber

198 de clabLevel



 

firefox
Citar            
MensajeEscrito el 03 May 2013 11:22 am
Investigaste si eso no se puede hacer del lado del servidor? Digo porque si el emisor no se asegura una buena conectividad de subida, emitir doble puede afectar la calidad de ambos. Del lado del servidor, el objeto es Stream, y FMS tiene acceso a todos los stream que se esten emitiendo. La idea ser'ia que el emisor tengo uno de alta calidad y que FMS sea quien lo cambie de calidad segun lo que necesite el usuario.

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

chrome
Citar            
MensajeEscrito el 06 May 2013 07:29 am
Hola Jorge, el problema está en que uso el mismo FMS para distintas aplicaciones y prefiero hacerlo desde el cliente. Para la aplicación que estoy desarrollando, me han confirmado que el cliente tendrá un buen upstream.
Alguna idea?

Muchas gracias

Por Palacio

Claber

198 de clabLevel



 

firefox
Citar            
MensajeEscrito el 06 May 2013 01:20 pm
Dos streams distintos, uno en alta otro en baja, es decir lo que pusiste arriba lo duplicas, pero el setMode lo cambias a lo que necesites. En cuanto a setQuality, nunca le pongas 100 (hasta 90 es aceptable), porque le quita toda compresion y tardaras forever

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

chrome
Citar            
MensajeEscrito el 06 May 2013 01:33 pm
Hola Jorge, pero tengo que crear 2 instancias de la cámara o con la misma me sirve?
En caso de tener que crear 2 instancias, que es mejor?

Código ActionScript :

camera1 = Camera.getCamera();
camera2 = Camera.getCamera();

o:

Código ActionScript :

camera1 = Camera.getCamera();
camera2 = camera1;


Muchas gracias

Por Palacio

Claber

198 de clabLevel



 

firefox
Citar            
MensajeEscrito el 06 May 2013 02:13 pm
La camara es una, los streams son dos

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

chrome
Citar            
MensajeEscrito el 06 May 2013 02:31 pm
Hola Jorge, entonces propones algo así:

Código ActionScript :

netLocalStreamLowQuality = new NetStream(netConnection);
camera = Camera.getCamera();
camera.setQuality(0, 90);
camera.setMode(320, 240, 20);
camera.setKeyFrameInterval(10);
camera.setMotionLevel(100);
camera.setLoopback(false);
netLocalStreamLowQuality.publish("myChannel", "live");
netLocalStreamLowQuality.attachCamera(camera);

netLocalStreamHighQuality = new NetStream(netConnection);
camera.setQuality(0, 90);
camera.setMode(640, 480, 20);
camera.setKeyFrameInterval(10);
camera.setMotionLevel(100);
camera.setLoopback(false);
netLocalStreamHighQuality .publish("myChannel", "live");
netLocalStreamHighQuality .attachCamera(camera);

No estaré machacando las características del stream de baja calidad al asignar el de alta calidad?

Por Palacio

Claber

198 de clabLevel



 

firefox
Citar            
MensajeEscrito el 06 May 2013 02:47 pm
Pruebo, luego pregunto ;)

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

chrome
Citar            
MensajeEscrito el 06 May 2013 03:39 pm
Hola Jorge, tal como me temía, si hago lo siguiente:

Código ActionScript :

camera1 = Camera.getCamera();
camera2 = camera1;

ya que tengo que asegurarme que coge la misma cámara en caso de tener más de 1 en el PC, cuando hago el setMode de ambas a distinta resolución, se queda con la última configuración.
Hal alguna formad e hacer que los 2 streams cojan de distinta cámara y a distinta resolución?

Por Palacio

Claber

198 de clabLevel



 

firefox
Citar            
MensajeEscrito el 06 May 2013 06:41 pm
Asi como lo tienes, camera2 es simplemente un puntero a camera1. Haz dos getCamera() y mira si el objeto es el mismo o distinto.

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

chrome
Citar            
MensajeEscrito el 07 May 2013 08:08 am
Hola jorge, haciendo 2 getCameras, sigue sucediendo lo mismo, me sobreescribe la cámara cuando la cojo por segunda vez.
Se te ocurre alguna otra opción?

Muchas gracias

Por Palacio

Claber

198 de clabLevel



 

firefox
Citar            
MensajeEscrito el 08 May 2013 12:50 pm
Ok, entonces vuelvo a mi primera respuesta, yo por lo menos lo he hecho asi, el cliente siempre un solo stream, el FMS modula las calidades (hacia abajo, claro)

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

msie
Citar            
MensajeEscrito el 08 May 2013 01:47 pm
Muchas gracias Jorge, veré como lo hago con FMS y con RED5

Por Palacio

Claber

198 de clabLevel



 

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.