Ruminações diversas, 23/04/2018

  • Versões mais recentes do Java 8 não instalam mais no Windows XP, mas não dão sequer uma mensagem indicando isso. Você clica no instalador e fica esperando à toa. A versão 8u101 apesar de dar uma mensagem dizendo que não foi feita para o XP instala e funciona;
  • Achei interessante a app RTSP Camera Server. Com ela você pode transformar um celular android em uma câmera IP improvisada. Tem até suporte a microfone e continua transmitindo mesmo com a tela apagada. Infelizmente não funciona em qualquer hardware (dá “workable camera not found” no Galaxy J5 deste outro post) e está sujeito às limitações do Android que não oferece um meio fácil de iniciar uma app automaticamente. As apps que se oferecem para fazer isso nem sempre funcionam.
19 comentários
  • Alisson Teles Cavalcanti - 76 Comentários

    Aqui eu utilizei em janeiro a app Alfred. Me serviu bem, mas tem uma taxa de drenagem da bateria alta no meu S7 Edge pois o detector de movimento, apesar de configurado para mínima detecção, ficava disparando o tempo todo. Eu resolvi matando o processo no meu aparelho, mas perdendo também a função de motion detector.

    • Jefferson - 6.464 Comentários

      Esse tipo de app só tem utilidade para mim em aplicações onde o aparelho vai ficar permanentemente na tomada. Claro, quanto menor o consumo de bateria, mais tempo o aparelho vai tolerar uma falta de energia e assim se reduzem as vezes que eu vou precisar ir até ele para reiniciar a app. Se eu pudesse iniciar a app automaticamente o aparelho nem precisaria de bateria.

      • Alisson Teles Cavalcanti - 76 Comentários

        Aqui eu usei para monitorar remotamente minha casa enquanto estava na praia, um período em torno de 20 dias. Ele ficou ligado no carregador, mas resistiu bem a uma falta grande de energia. Não sei já testou o Alfred, mas ele inicia automaticamente a cada boot (testado no Galaxy ACE 4 com Android 5.1). O problema é que, até onde sei, em caso de desligamento por falta de alimentação o Android não liga automaticamente caso a fonte de alimentação é religada.

        • Jefferson - 6.464 Comentários

          Não sei já testou o Alfred, mas ele inicia automaticamente a cada boot (testado no Galaxy ACE 4 com Android 5.1).

          Eu tentei testar Alfred agora mas não gostei do fato dele querer que eu faça login com minha conta gmail. Vou testar em um telefone que tenha uma conta descartável.

          Mas até onde deu para ver o Alfred espera que você vá usar outro aparelho com a app como “viewer”. Achei interessante e útil, mas não parece ter a mesma funcionalidade que o RTSP Camera Server, que permite que você visualize o fluxo no Windows pelo VLC, grave em um NVR, etc.

          O problema é que, até onde sei, em caso de desligamento por falta de alimentação o Android não liga automaticamente caso a fonte de alimentação é religada.

          Você tem razão. :dashhead1: De qualquer jeito precisa de bateria.

          • Richard - 20 Comentários

            O problema é que, até onde sei, em caso de desligamento por falta de alimentação o Android não liga automaticamente caso a fonte de alimentação é religada.

            Modificar o Android para ligar automaticamente é possível, porém não é fácil, porque o script que detecta que o dispositivo está carregando e exibe a animação da bateria fica no initramfs, que faz parte do kernel. Esse trabalho exige root, bootloader desbloqueado, e uma ferramenta para editar o initramfs (que geralmente é específica para o fabricante do SoC) substituindo o comando que exibe a animação por um comando de reboot. Já modifiquei 2 tablets que uso como interface touchscreen para um projeto meu.

            • Jefferson - 6.464 Comentários

              Obrigado pelas informações. Minha abordagem para esse problema quando isso não é viável e sem ter que desmontar o aparelho é mais grosseira: usar um motorzinho para pressionar o botão Power. O resto do problema é detectar corretamente que o aparelho está desligado. Detectar uma falta e posterior retorno de energia é fácil, mas se o aparelho tiver uma bateria o evento de desligamento não coincide com o de falta de energia.

              Minha primeira idéia é fazer um watchdog por bluetooth. Se voltar a energia e não estiver recebendo o sinal, pressiona o botão e espera.

              Se não faltou energia e parou de transmitir, travou. Pressionar para forçar um desligamento e depois executar o procedimento para ligar.

              Claro, isso é uma complicação. Motor, ponte H (se um pequeno servo não der conta), microcontrolador, módulo bluetooth…

            • Alisson Teles Cavalcanti - 76 Comentários

              Muito interessante! Mas inacessível pra mim, infelizmente… Rsrs. Tnx pela informação!

        • Jefferson - 6.464 Comentários

          Eu testei com uma conta descartável e tenho que dizer que minha afirmação de que “o Android não oferece um meio fácil de iniciar uma app automaticamente” foi tola. É claro que o programador da app pode fazer com que ela inicie automaticamente. E quanto às apps que não foram programadas para isso eu testei novamente uma app que se propõe a iniciar automaticamente outras apps, a AutoStart – No root, que nunca havia funcionado comigo, e agora funcionou!

          Em resumo, eu estava 100% errado. :dashhead1:

          Voltando a Alfred, a app requer conexão com a Internet para operar e sem isso não opera nem localmente. Não há um modo fácil de interpretar o fluxo em um NVR. Mas para a sua aplicação ela parece perfeita. Muito bem feita, fácil de instalar, fácil de usar e como operou por 20 dias é estável. Obrigado pela sugestão.

  • Richard - 20 Comentários

    Eu já cheguei a usar o “IP Webcam” (pacote: com.pas.webcam), que tem autostart (se o bloqueio de tela for desativado), servidor web, gravação, ONVIF, entre outras funções que fazem valer a pena desembolsar os R$ 9 para remover a marca d’água das gravações. Porém, até onde sei, a única forma de streaming suportada é MJPEG via HTTP – talvez a função ONVIF libere um servidor RTSP?

    • Jefferson - 6.464 Comentários

      Obrigado pela dica. A descrição do IP Webcam diz que é compatível com VLC, então ele provavelmente disponibiliza um stream RTSP.

      • Richard - 20 Comentários

        Agora tive tempo para testar isso.

        O aplicativo diz (no menu “More…” quando a câmera estiver ativada) que seu servidor RTSP disponibiliza vídeo H.264 com áudio μ-law no endereço /h264_ulaw.sdp e com áudio PCM no endereço /h264_pcm.sdp, porém esses URLs retornam erro 404 pelo menos no meu hardware (Xiaomi Mi A1). Sabendo disso, instalei o ONVIF Device Manager no meu PC, e ele encontrou a câmera, porém com apenas um stream de vídeo MJPEG e áudio μ-law, no endereço /jpeg_ulaw.sdp, bem que esse endereço poderia ser colocado na documentação.

        Segue o que o ffprobe tem a dizer sobre esse stream:

        Input #0, rtsp, from 'rtsp://192.168.0.164:8080/jpeg_ulaw.sdp':
          Metadata:
            title           : IP Webcam
          Duration: N/A, start: 0.128567, bitrate: N/A
            Stream #0:0: Video: mjpeg, yuvj420p(pc, bt470bg/unknown/unknown), 1920x1080 [SAR 1:1 DAR 16:9], 90k tbr, 90k tbn, 90k tbc
            Stream #0:1: Audio: pcm_mulaw, 8000 Hz, 1 channels, s16, 64 kb/s

        • Jefferson - 6.464 Comentários

          404 é um código de erro HTTP. Como o stream é RTSP você deve ter usado um navegador que não tem suporte a rtsp://

          • Richard - 20 Comentários

            Esse erro aparece ao abrir os endereços RTSP no ffprobe ou no VLC. Analisei o tráfego com o Wireshark, e realmente o servidor do aplicativo retorna “RTSP/1.0 404 Not Found” quando o reprodutor tenta obter as informações do stream pelo método DESCRIBE. Isso acontece tanto para esses endereços /h264_* quanto para qualquer endereço inválido que eu digitar. De qualquer forma é um erro no aplicativo.

            Não me importo muito com isso, eu pessoalmente pretendo usar as funções de gravação e upload automático (além da modificação no kernel que discuti no meu outro comentário) para fazer uma dashcam caseira usando um Moto G (o primeiro) que tenho guardado.

        • Jefferson - 6.464 Comentários

          Eu finalmente fiz o teste de IP Webcam

          RTSP

          Inicialmente acessar os URLs rtsp sempre provocavam o crash da app. Reinicar o celular não mudava nada. Só começou a funcionar depois que eu fui em Video Preferences -> Video Recording -> Download OpenH264. O VLC passou a receber os dois fluxos mas o video falha muito, perde muitos frames e congela em menos de um minuto, apesar da app não reportar nada de errado. Baixar a resolução do vídeo não fez diferença. Eu conferi com o RTSP Camera Server e este mesmo transmitindo a 1920×1080 funciona muito bem.

          ONVIF

          Meu NVR compatível com ONVIF não consegue detectar automaticamente a app em execução.

          O Onvif Device Manager não consegue se conectar com a app mesmo adicionando o endereço manualmente.

          “Enable ONVIF support” está marcado na app.

  • Jorge Mendonça - 53 Comentários

    [Totalmente off] Desculpe mas não localizei o tópico sobre isso mas achei que você ainda pode estar interessado. Uma bombinha para garrafão de água: https://br.gearbest.com/air-purifier/pp_1589429.html?%3F&lkid=12662477

  • Snow_man - 301 Comentários

    ótima informação, ainda uso muito XP nos clientes, principalmente contabilidade, muito obrigado.

    • Jefferson - 6.464 Comentários

      Rapaz, esse pessoal de contabilidade ainda usaria Windows 95 se não fosse tão problemático achar drivers para ele hoje em dia. Conheço quem ainda use disquetes.

  • Jefferson - 6.464 Comentários

    Apesar da app RTSP Camera Server não dizer que inicia automaticamente, ela faz isso. Se o o telefone tiver sido desligado com a app transmitindo ao reiniciar o aparelho a app volta automaticamente transmitindo.

Deixe um comentário para Jefferson Cancelar resposta

Você pode usar estas tags HTML

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">

  

  

  

:) :( ;) O_o B) :lol: :huh: :S :D :-P 8-O :yahoo: :rtfm: :dashhead1: :clapping: more »