Eu já vi muitas informações sobre como transmitir vídeo do servidor para um dispositivo Android, mas não muito sobre o outro lado, ala Qik. Alguém poderia me indicar a direção certa aqui ou me dar alguns conselhos sobre como abordar isso?
286
Respostas:
Eu hospedei um projeto de código aberto para habilitar o telefone Android para a câmera IP:
http://code.google.com/p/ipcamera-for-android
Os dados brutos de vídeo são buscados no LocalSocket, e o MDAT MOOV do MP4 foi verificado primeiro antes da transmissão. O vídeo ao vivo é compactado no formato FLV e pode ser reproduzido através do player de vídeo Flash com uma compilação no servidor da web :)
fonte
ndk-build
. Para mais informações, leia a documentação do NDK .Levei algum tempo, mas finalmente consegui criar um aplicativo que faça exatamente isso. Confira a página de código do Google, se estiver interessado: http://code.google.com/p/spydroid-ipcamera/ Adicionei muitos comentários no meu código (principalmente, olhe CameraStreamer.java), então deve ser bastante auto-explicativo. A parte difícil foi realmente entender o RFC 3984 e implementar um algoritmo adequado para o processo de empacotamento. (Na verdade, esse algoritmo transforma o fluxo mpeg4 / h.264 produzido pelo MediaRecorder em um bom fluxo rtp, de acordo com o rfc)
Tchau
fonte
Também estou investigando isso e, embora não tenha uma boa solução para você, consegui desenterrar o código de vídeo do SIPDroid:
http://code.google.com/p/sipdroid/source/browse/trunk/src/org/sipdroid/sipua/ui/VideoCamera.java
fonte
Criei um SDK de código aberto chamado Kickflip para tornar a transmissão de vídeo do Android uma experiência indolor.
O SDK demonstra o uso da API MediaCodec do Android 4.3 para direcionar os pacotes do codificador de hardware do dispositivo diretamente ao FFmpeg para RTMP (com librtmp) ou streaming HLS do H.264 / AAC. Também demonstra os efeitos OpenGL em tempo real (titulação, chroma key, desvanece-se) e gravação em segundo plano.
Obrigado SO, e especialmente, fadden .
fonte
Aqui está o artigo completo sobre como transmitir vídeo da câmera Android para uma página da Web.
Android Streaming de vídeo da câmera ao vivo para página da Web
fonte
Exemplo como: ffmpeg_link = "rtmp: // endereço do servidor: 1935 / live / venkat";
podemos enviar vídeos do tipo H263 e H264 usando esse link.
fonte
Essa dificilmente é uma resposta completa, mas o webRTC pode ser o que você está procurando. Aqui estão alguns exemplos rápidos do webRTC em ação: http://www.webrtc.org/reference-apps
Se você deseja um código específico para Android, ele existe! http://www.webrtc.org/native-code/android
fonte
Verifique a biblioteca Yasea
Característica:
fonte
O Mux (minha empresa) possui um aplicativo Android de código aberto que transmite RTMP para um servidor, incluindo a configuração da câmera e as interações do usuário. Ele foi desenvolvido para transmitir para a API de transmissão ao vivo do Mux, mas pode ser transmitido facilmente para qualquer ponto de entrada RTMP.
fonte
Dependendo do seu orçamento, você pode usar uma câmera Raspberry Pi que pode enviar imagens para um servidor. Eu adiciono aqui dois tutoriais onde você pode encontrar muitos mais detalhes:
Este tutorial mostra como usar uma câmera Raspberry Pi e exibir imagens no dispositivo Android
Este é o segundo tutorial em que você pode encontrar uma série de tutoriais sobre streaming de vídeo em tempo real entre a câmera e o dispositivo Android
fonte