Fluxo de trabalho de download de fotos do iPhone para APENAS novas fotos no Mac

2

Eu estou achando o fluxo de trabalho de download de fotos do meu iPhone um pouco pesado.

Aqui estão meus requisitos:

  • Faça o download de fotos + vídeos do meu Rolo da Câmera do iPhone, mas mantenha as fotos no iPhone
  • Apenas exiba / baixe novas fotos + vídeos no iPhone desde o último download
  • Evite o iPhoto, idealmente, porque isso me deixa um pouco nervoso
  • Tenha todas minhas fotos tiradas no iPhone + vídeo disponível para visualização no meu iPhone
  • Manter todos os metadados EXIF / GPS a todo custo

Atualmente, uso a estrutura de pastas regular + Picasa para todas as minhas fotos digitais, no entanto, para o iPhone, uso o iPhoto porque ele "só exibe itens novos" quando vou importar fotos do meu iPhone

Eu estou achando que mais de 5000 fotos + vídeos no meu iPhone, o iPhoto geralmente leva um tempo (2-10 minutos) para "encontrar" meu iPhone depois que eu o conecto.

Idealmente, eu gostaria apenas de usar o ImageCapture.app embutido do OSX para baixar fotos do iPhone, mas ele carrega TODAS as fotos, não apenas as novas desde a última sincronização (como o iPhoto faz ..). Então tenho que saber qual foi a última foto baixada do iPhone e baixar apenas as mais novas.

O Picasa Import também carrega / exibe TODAS as fotos no iPhone (o que é muito complicado com tantas imagens para carregar o dispositivo ...)

Acho que gostaria de saber se alguém tem um fluxo de trabalho / requisitos semelhantes e como o faz.

Meu plano atual é configurar um fluxo de trabalho que remova fotos do Rolo da Câmera enquanto faço o download delas, mas depois o iTunes sincronize-as novamente como álbuns baseados em pastas - posso até mesmo redimensioná-las automaticamente para ter versões menores o iPhone e as versões originais em tamanho original no meu Mac (assim, conservar o espaço de armazenamento anterior do iPhone)

    
por Josh Newman 08.07.2010 / 22:45

1 resposta

2

Aqui está uma solução de trabalho, mas provavelmente não é a mais simples. O LifeHacker publicou recentemente um artigo descrevendo um programa que faz o seu iPhone aparecer como um disco montado normal no Finder: link O programa em pergunta pode ser encontrada aqui: link e no momento os autores estão dando de graça, o que é legal deles. Eu tentei isso usando meu iPhone 3GS sem cadeia e posso navegar com sucesso por arquivos no meu iPhone usando o Finder, incluindo minhas imagens & filmes (embora alguns arquivos do sistema permaneçam ocultos porque meu telefone não está quebrado). Imagens e amp; os filmes são armazenados na pasta familiar DCIM no iPhone.

O próximo passo é automatizar o processo de cópia para que você copie apenas novos arquivos. Embora ao contrário dos cartões de memória formatados em FAT32, onde (na minha experiência) o bit de arquivamento é definido nos arquivos que foram arquivos / fotos baixados anteriormente, não parece haver a capacidade de ler ou definir um sinalizador equivalente no iPhone montado disco. Eu não sei se isso é uma limitação do programa ou do formato do disco do próprio telefone (eu estou supondo que o programa).

Portanto, minha sugestão é usar um script bash que salve o arquivo de zero bytes no telefone em que o registro de data e hora do arquivo indica quando as fotos foram sincronizadas pela última vez. Este arquivo pode então ser usado com o comando padrão 'find' do terminal para copiar somente arquivos mais novos que este arquivo. Abaixo está um exemplo de script bash que eu escrevi para esse propósito & funciona para mim. Salve o script como um arquivo em seu diretório pessoal, digamos chamado "photoSync.sh". Em seguida (com o iphone montado) de uma janela de terminal, altere o diretório atual para o diretório raiz do iPhone e, em seguida, execute o script, fornecendo o diretório de destino como o primeiro argumento para o script. Por exemplo,

cd /Volumes/MyIPhone\(Media\)/
sh ~/photoSync.sh ~/Pictures/iPhonePics

Aqui está o script:

#!/bin/bash

#test that script has been called correctly & from the right place
if [ ! -n "$1" ]
then
    echo "Usage: $0 <destination dir>"
    exit 1
fi

if [ ! -d $1 ]
then
    echo "Destination directory does not exist or is not a directory"
    exit 1
fi

if [ ! -d "DCIM" ]
then
    echo "Current directory does not contain a DCIM folder. Script should be executed from mount directory of iPhone"
    exit 1
fi

#tests passed, let's do the copying…
#check for last sync file…
if [ -e "com.jn.lastsynctime" ]
then
    #we've synced before, just grab newer files
    echo "Copying only files since last sync..."
    find ./DCIM/* \( -name "*.JPG" -or -name "*.MOV" -or -name "*.PNG" \) -type f -newer com.jn.lastsynctime -exec cp -np {} $1 \; -print
    #reset sync file
    rm com.jn.lastsynctime
    touch com.jn.lastsynctime
    echo "Done"
else
    #no sync file so copy all and set sync file
    echo "No previous sync marker found, copying all files…"
    find ./DCIM/* \( -name "*.JPG" -or -name "*.MOV" -or -name "*.PNG" \) -type f -exec cp -np {} $1 \; -print
    touch com.jn.lastsynctime
    echo "Done"
fi

exit 0
    
por 19.07.2010 / 03:58