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?
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?
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 :)
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
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
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 .
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
Posso enviar o vídeo da câmera ao vivo do celular para o meu servidor. Usando este link, consulte o link
Consulte o link acima. Há um aplicativo de amostra nesse link. Você só precisa definir o URL do serviço em RecordActivity.class.
Exemplo como: ffmpeg_link = "rtmp: // endereço do servidor: 1935 / live / venkat";
podemos enviar vídeos do tipo H263 e H264 usando esse link.
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
Verifique a biblioteca Yasea
Yasea é um cliente de streaming Android. Ele codifica dados YUV e PCM da câmera e microfone para H.264 / AAC, encapsula em FLV e transmite por RTMP.
Característica:
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.
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