para online móvil gratis grabar como app aplicación aleatorio c# video streaming chat

c# - móvil - video chat android online



Desarrollar una aplicación de Video Chat con transmisión de video de alta calidad (4)

Estoy trabajando para una empresa donde estamos desarrollando soporte para video chat en una aplicación existente. He visto varias soluciones para esto como

  1. Usando el show Managed Direct para la captura de video y la transmisión en C #
  2. Algunos ejemplos de código en el proyecto del código donde tomamos una imagen y la pasamos a través de la red (yo diría que es una solución bastante tosca, ya que esto consumiría gran parte del ancho de banda.
  3. Codifique un algoritmo de compresión desde cero desde cero y úselo para comprimir y descomprimir video.

Ahora el desafío es que estamos buscando lograr una transmisión de video de muy alta calidad y la aplicación del contenedor está codificada en C # .NET

Esto es lo que he propuesto hasta ahora. La lógica de red para transmitir datos está escrita en C #, la compresión de video debe escribirse en VC ++ y llamar a este dll de VC ++ usando pinvoke o cualquiera de las CLI que sea posible.

Estoy buscando alguien con más experiencia que yo en este campo que pueda sugerirme si voy correcto o si esto aún puede mejorarse.

El objetivo final es la transmisión de video de alta calidad. El códec puede ser cualquier cosa como h.2633, h.264 etc.


Ucentrik acaba de lanzar una aplicación de centro de llamadas de código abierto que integra la tecnología CTX. Esta aplicación de centro de llamadas implementa el video, audio, uso compartido de escritorio / aplicaciones (con control), funcionalidad de chat de texto disponible desde la API de CTX. La aplicación también incluye una lógica de negocios específica en torno a la posibilidad de enrutar las llamadas a un agente que está disponible o tiene un conjunto de habilidades específico. El proyecto está disponible en http://vcca.codeplex.com . Tenga en cuenta que necesitará acceder al Ucentrik CTX SDK, que está disponible para solicitar en el sitio web de Ucentrik (www.ucentrik.com). Buena suerte.


Ahórrese el problema y use VLC. Hay algunos contenedores .NET decentes para él ( http://forum.videolan.org/viewtopic.php?f=32&t=52021&start=30 )

Estamos usando C # y VLC para una red de IPTV. Tomamos datos de satélites de red DISH a través de dispositivos de captura de video Osprey-450 en un servidor Windows XP. A partir de ahí, tenemos un componente de servidor .NET que escribimos en C # que usa VLC detrás de escena (iniciando procesos separados en .NET para controlar las instancias de vlc.exe). Los procesos de VLC transcodifican y transmiten las señales a través de una red (.h264 o MPEG-4, hemos hecho ambas cosas con éxito).

En el lado del cliente, tenemos una aplicación WinForm de C # que utiliza un visor de VLC incorporado para ver las señales de multidifusión. Esta aplicación es principalmente para comando y control. El uso real de las señales de multidifusión ocurre cuando nuestros decodificadores conectados a nuestro televisor decodifican y muestran las transmisiones.

Pensamos que también tendríamos que escribir nuestros propios codificadores DirectX, pero no nos tomáramos tantas molestias. VLC funciona realmente bien y tiene suficiente soporte C # para ser muy útil. No dude en enviarme un correo electrónico si tiene preguntas específicas sobre la implementación.


Utilicé varias formas de hacer streaming de video / conferencias con .net fácilmente, sin necesidad de profundizar en el modo directo. (Vale, cava un poco, pero no profundo :)

1) Uso de componentes simples de Windows Media Encoder. Está documentado con ejemplos en Windows Media Encoder SDK. Bueno para cualquier transmisión de alta resolución, pero la demora es demasiado grande para el chat en tiempo real (0.5-2 segundos como máximo). Modern Express Encoder SDK otra opción.

2) Microsoft Research ConferenceXP http://cct.cs.washington.edu/ API de conferencia con todas las funciones incluida la transmisión de aplicaciones. También codificaron filtros de Windows Media de bajo nivel y los incluyeron en el código administrado. Funciona bien. Fácilmente personalizable. Parece un poco abandonado ahora.

3) Microsoft RTC Client hasta la versión 1.3: núcleo de Windows Messenger.

pros: muestras gestionadas de Microsoft, buenos documentos, rendimiento confiable, redistribuible libremente, compatible con microsoft (buena) pila SIP. Los principales proveedores de conferencias como Emblaze VCON basaron sus soluciones en él en un pasado cercano, no estoy seguro en estos días, pero sé que Tandberg autorizó el VC-1 de Microsft.

contras: versión hasta 1.3 solo soporte h261-h263 video. La versión moderna con soporte de códec VC-1 (h264) no permite conexiones ip-ip sin servidor directo. Lo hace al requerir el servidor de Microsoft Live Communications. La versión más reciente SDK no cubre bien las llamadas de videoconferencia.

http://msdn.microsoft.com/en-us/library/ms775892(VS.85).aspx

Por favor, háganos saber qué plataforma ha elegido. Por cierto, incluso he usado la parte rtp de video de ConferenceXP con las funciones RTC 1.3 de voz / SIP juntas para mejorar la calidad del video, por lo que tiene una gran variedad de tecnologías administradas aquí. Otra cosa es Live Meeting en la que no tuve oportunidad de mirar bien aún.


Debería echarle un vistazo al Ucentrik SDK. Este SDK le permitirá integrar funciones de medios enriquecidos, como video, audio, chat, compartir y controlar el escritorio remoto y grabar video en sus aplicaciones. Los códecs de video admitidos son VP8 (Google), Theora y x.264. Además, el tráfico de medios enriquecidos se encapsula dentro de un protocolo HTTP para permitirle atravesar firewalls que permiten el tráfico web normal. Esta tecnología es completamente gratuita y puede descargar el SDK y solicitar una clave API para que pueda evaluar sin invertir tiempo en la configuración de la infraestructura. En los próximos meses, lanzaremos un componente de servidor para que pueda descargar y alojar la infraestructura que usted mismo o su cliente. La tecnología admite conexiones de 1 a muchos, lo que significa que puede crear videoconferencias si lo desea. Las características son altamente modulares para que pueda integrar solo el video, el audio o el uso compartido de escritorio o una combinación de las tecnologías que usan el mismo SDK ... Debe solicitar un SDK disponible aquí: www.ucentrik.com. Además, hay algunos videos aquí: http://www.youtube.com/user/ucentrik

buena suerte.