Quinta, 06 Julho 2017 10:44

Mostra Última Foto de Celular Android

Postado por
Avalie este item
(2 votos)
Selfie com plateia na peça "As Três Patetas em Chamas" Selfie com plateia na peça "As Três Patetas em Chamas"

Shell script de Bash e outras configurações para baixar e mostrar a última foto tirada num celular Android. O script está executado num computador e comunica com o Android através de WiFi.  Não é particularmente eficiente, devido ao fato que o Android não permite a execução de comandas no aparelho por meio de SSH. É necessário, então, baixar todas as fotos do diretório designado no cada ciclo de operação e também que um aplicativo de servidor SSH seja executado no Android e que o Android seja configurado como um hub WiFi. Exige ainda que o Android tenha uma cópia de uma chave pública RSA ou DSA SSH. É melhor que o telefone esteja configurado para tirar fotos de baixa resolução e que a pessoa que tira fotos exclui periodicamente todas as fotos no diretório selecionado para manter o rapidez do sistema.

O sistema foi usado numa performance teatral da peça "As Três Patetas em Chamas" (adaptação das "Três Irmãs" de Chekhov) no Departamento de Artes Cênicas, Universidade de Brasília, julho de 2017, dirigida por Simone Reis. Imagens tiradas pelos atores foram projetadas em tempo real (com pequeno atraso).

O script:

 #!/bin/bash

# Dados do celular
remote_dir=/storage/extSdCard/DCIM/Camera  
port=57846 
dst=usuáEste endereço de email está sendo protegido de spambots. Você precisa do JavaScript ativado para vê-lo..1   # nome do usuário no servidor de SSH e o endereço IP do celular. Todos os Androids que testei tinha esse mesmo IP

# diretório local no computador para baixar as fotos
cd /home/username/projects/3patetas

#cria uma imagem inicial no diretório local. No meu caso, criei uma imagem preto chamada black.jpg
cp black.jpg image.jpg  

#atualiza a imagem mais recente, cada segundo, com a utilidade "feh"
feh -F --reload 1 image.jpg&

# busca imagens cada 2 segundos (deveria ser menos frequente) e nomea a foto mais recente com "image.jpg"
while true; do
    scp -P $port -oHostKeyAlgorithms=+ssh-dss $dst:$remote_dir/* /home/iain/projects/3patetas
    sleep 2
    [ -f "2" ] && rm 2 # remove strange file downloaded from mobile
    cp `ls -t /home/username/projects/3patetas | head -1` /home/username/projects/3patetas/image.jpg
    # In the following line -t for timeout, -N for just 1 character
    read -t 0.25 -N 1 input
    if [[ $input = "q" ]] || [[ $input = "Q" ]]; then
        # The following line is for the prompt to appear on a new line.
        echo
        break 
    fi
done

exit 0

How to use:

1. On the computer, make sure you have SSH and "feh" installed (and anything else required in the script not installed by default).
2. On the Android, install an SSH server app. I chose "SSH Server" and it works well.
3. On the computer, create an RSA key pair and email or transfer a copy of the public key to your phone.
4. On the phone, save the RSA public key to a known location and also discover to which directory the phone saves its photos.
5. In SSH Server, create a new server, give it a name an allocate a port number (or note the port number automatically allocated)
6. Click the "user" tab in SSH Server and create a new user, giving the user a name. 
7. Deselect "enable password" and select "enable public key" then browse to find the key previously stored in step 4.
8. Leave the SSH Server app, saving your settings.
9. Still on the Android, turn WiFi off and set up your phone as an active WiFi router, WiFi Hotspot or whatever.
10. On your computer, connect to the Android's WiFi.
11. Edit the script changing the remote_dir, port, username, local download directory and anything else that needs changing.
      Also edit the name of your start up image, if not "black.jpg" (create this image too, and place it in the local download directory).
12. Mark script as executable and run it.
13. Debug.
14. Use "q" as your escape character.

Lido 286 vezes Última modificação em Quinta, 06 Julho 2017 11:48

Deixe um comentário

Certifique-se de preencher os campos indicados com (*). Não é permitido código HTML.

Artigos Novos e Notícias

  • Mostra Última Foto de Celular Android
    Mostra Última Foto de Celular Android Shell script de Bash e outras configurações para baixar e mostrar a última foto tirada num celular Android. O script está executado num computador e comunica com o Android através…
  • Summoned Voices
    Summoned Voices Summoned Voices acts as a living memory of people and place. It consists of a series of door installations each with an intercom, sound system and a computer that is…
  • Simone Reis tira UnB da zona de conforto com teatro inquieto
    Simone Reis tira UnB da zona de conforto com teatro inquieto Simone Reis tira UnB da zona de conforto com teatro inquieto. Artigo de Sérgio Maggio no jornal Metrópoles.
  • Stanisloves-me
    Atuação: Bruna MartiniDireção: Simone ReisMúsico: Yuri RochaConcepção e Dramaturgia: Simone Reis e Bruna MartiniTextos: Hilda Hilst, Bruna Martini e Simone Reis Performance gravada por Bruno Corte Real na Sala João…
    Vídeo: Bruno Corte Real
  • Mapa Ambisônico
    Mapa Ambisônico Mapa ambisônico com gravações de campo em B-format de alta qualidade para baixar (48kHz, 24bit, formato wav). Cada registro está acompanhado com mixagens de estéreo UHJ e binaural para ouvir…
  • Bruna Martini: Ganhadora do prêmio de Melhor Atriz, FESTU-RIO na peça "Stanisloves-me" - Direção: Simone Reis
    Bruna Martini: Ganhadora do prêmio de Melhor Atriz, FESTU-RIO na peça "Stanisloves-me" - Direção: Simone Reis Bruna Martini: Ganhadora do prêmio de Melhor Atriz, Mostra Cometitiva Nacional, FESTU-Rio na peça "Stanisloves-me". Simone Reis: Indicação, Melhor Direção. "Stanisloves-me" Atuação: Bruna MartiniDireção: Simone ReisConcepção e Dramaturgia: Simone Reis…
  • Mosca: Classe de SuperCollider para campos sonoros ambisônicos dinâmicos
    Mosca: Classe de SuperCollider para campos sonoros ambisônicos dinâmicos Mosca is a SuperCollider class for GUI-assisted authoring of ambisonic sound fields with simulated moving or stationary sound sources. The class makes extensive use of the Ambisonic Toolkit (ATK, see:…