Por que a maioria das câmeras não armazena nomes de arquivos com base em data e hora?

11

Percebo que, ao tirar fotos usando o telefone da câmera, o nome do arquivo consiste na data e hora. (por exemplo, 20131101-110015.jpg)

No entanto, a maioria das câmeras point-and-shoot e DSLR não. O nome do arquivo geralmente está em uma sequência como DCM0011.jpg

Existe uma maneira de definir uma opção de câmera para que ela crie o arquivo com um nome que contenha a data e a hora?

Com referência a uma câmera apontar e disparar Samsung EX1 vs um telefone com câmera Samsung Galaxy S2

Jack
fonte
Eu adoraria que isso fosse uma opção! Da Canon 5D mkiii tem controle nome do arquivo limitado, mas isso é mais um caso de 3 letras ...> _> Com DSLR é que pode tirar várias fotos por segundo, o nome do arquivo fica mais e mais
NULLZ
O Brand Olympus possui um sistema simples: geralmente inicia seus nomes com 'P' ou '_' (não se lembra do que significa, mas está relacionado ao espaço de cores) e, em seguida, um dígito para o mês: 1,2,3,4 , 5,6,7,8,9, A, B, C, dois dígitos para o dia e quatro outros dígitos para correlativo. Assim, o arquivo PC083651 foi filmado em 8 de dezembro. É realmente MUITO útil e pelo menos nunca tive um problema. Só é estranho se você filmar durante a meia-noite de 31 de dezembro, porque o arquivo "mais antigo" fica no topo da lista em ordem alfabética. Talvez eles tenham uma patente e isso impede o resto de fazê-lo.
Jaaziel
3
Se eles incluírem a data, ela deverá estar no formato ISO 8601. Qualquer outra coisa seria confusa. Além disso, o formato ISO significa que ele será classificado corretamente.
vclaw
11
Eu acho que é mais fácil para a maioria das pessoas obter todas as fotos em um só lugar. Para pessoas comuns, uma convenção como essa significaria que o armazenamento de suas câmeras teria muito poucas fotos em cada pasta. Seu também trivial para criar scripts para importar fotos e usar os dados EXIF para organizá-las no entanto você gosta, embora a maioria das pessoas provavelmente usar o software como Lightroom para tudo isso de qualquer maneira
JimL
2
Observe que o próprio sistema de arquivos possui um registro de data e hora. A convenção de pedidos ainda é necessária nos casos em que a velocidade de criação da imagem é mais rápida que a resolução do timer e / ou do sistema de arquivos (não acho que o FAT32 suporte milissegundos?). Além disso, no uso normal, o tempo provavelmente será 1º de janeiro de 1970 para um grande subconjunto de usuários.
Yorik

Respostas:

16

Isso se resume a patentes de software - não em datas, mas de uma maneira que limita os nomes de arquivos. O único sistema de arquivos amplamente disponível e multiplataforma é o FAT, o venerável sistema de arquivos do Microsoft DOS. Ele funciona nas versões antiga e nova do Windows, no OS / 2, no Macs, no Linux e há muitas implementações incorporadas para os mini sistemas operacionais executados nas câmeras. É velho o suficiente para ser de domínio público.

Mas, há um problema. A versão original permitia apenas nomes de arquivos de oito caracteres mais um ponto mais a extensão de três caracteres. As extensões que permitem nomes de arquivos mais longos são muito mais recentes e, há algum tempo, a Microsoft estava realizando algumas críticas sérias sobre a cobrança de royalties. Isso significa que a maioria das câmeras - e o padrão DCIM - toma a rota segura e evita o código para gerar nomes de arquivos longos. E isso significa que a data e a hora com significado humano não são viáveis, porque são simples demais.

Isso é feito por um manual técnico de um driver de cartão SD incorporado , que observa:

A Microsoft oferece licenciamento para o uso de seu sistema de arquivamento FAT por unidade de venda. No entanto, geralmente é visto que isso se aplica apenas a aplicativos que implementam o LFN (sistema de nomes de arquivos longos) patenteado. Entendemos que, se nomes de arquivos longos não forem usados, não será devida uma taxa de licença, mas você deve verificar se concorda com essa visão (pelo que sabemos, a Microsoft não afirmou isso, mas outros determinaram isso com base nas versões originais do FAT padrão da Microsoft).

Câmeras ou cameraphones que fazer nomes de arquivos de gravação mais longos, quer tenham pago Microsoft, estão usando um sistema de arquivos diferente, ou não estão preocupados com a ameaça legal.

Por favor, leia meu perfil
fonte
Você entendeu! Essa é praticamente a restrição. Até as datas das câmeras que suportam nomes de arquivos de data são codificadas de forma bizarra, com o mês passado de outubro como uma única letra para ajustá-la.
Itai 10/04
11
O FAT32 pode suportar mais de 8,3 e não está sobrecarregado até onde eu sei. Questões de datas culturais e classificação de nomes são questões maiores.
AJ Henderson
3
@AJ Infelizmente, a situação não é tão positiva. É especificamente o suporte ao nome de arquivo longo no VFAT / FAT32 que está em questão; especificamente USPTO 5579517 . Isso foi jogado fora na revisão, mas depois restabelecido alguns anos depois. A implementação do Linux possui uma solução alternativa que se acredita não infringir (veja mais sobre isso no LWN ), mas a solução mais simples é evitar a criação de nomes de arquivos longos.
Por favor, leia meu perfil
Eles poderiam solucionar esse problema armazenando as datas como pastas separadas, e não como parte do nome do arquivo. Na verdade, é exatamente isso que a minha Sony a390 faz (embora essa opção esteja desativada por padrão) #
BlueRaja #
Na verdade, o FAT suporta apenas nomes de entrada de diretório de 11 caracteres. Eles geralmente são exibidos como 8 + 3, mas antigamente, não era tão incomum usar simplesmente todos os 11 caracteres disponíveis como o nome sem extensão específica. É claro que, atualmente, o uso de extensões é comum e qualquer outra coisa causaria muita confusão.
um CVn
7

A razão pela qual a maioria das câmeras não armazena arquivos por dados e tempo é simplesmente porque ninguém escreveu o código no software da câmera para fazê-lo.

Um possível motivo para ninguém escrever esse código é que o formato de data / hora é ilegal, de acordo com o padrão DCF, que descreve como as câmeras devem armazenar imagens para compatibilidade com outras câmeras, dispositivos de visualização e impressoras ( link da wikipedia , documento padrão real ).

Outra razão pela qual ninguém escreveu o código é que escrever código, mesmo aparentemente simples, requer mais tempo do que você pensa (o que fazer ao alternar entre os modos de nome de arquivo, o que fazer quando um arquivo com esse nome já existir, funcionará com o software no CD que acompanha a câmera? e agora você precisa testar tudo duas vezes, uma vez com o modo antigo de nome de arquivo e outra com o modo de data e hora ...) - e tudo isso funciona para um recurso que não venderá mais câmeras - para que todo esse tempo seja melhor gasto em outro lugar.

Agora, para saber como fazer isso com suas câmeras, uma rápida pesquisa no manual do usuário do Samsung EX1 não encontrou uma maneira de alterar os nomes dos arquivos, portanto, provavelmente não é possível.

Nir
fonte
11
Penso que o segundo parágrafo aqui é o mais importante: o padrão especifica <3 letras> _ <4 números>, e data e hora não se encaixam nisso.
Philip Kendall
@PhilipKendall - você sempre pode não estar em conformidade com o DCF (como o celular) - ou ter dois modos, um modo DCF para pessoas que desejam compatibilidade com todas as impressoras e molduras e um modo data / hora para pessoas que se preocupam com nomes de arquivos (e então você chega ao meu terceiro parágrafo, o custo dessas opções não é trivial).
Nir
3
@PaulCezanne - Eu discordo, do ponto de vista da engenharia, há apenas um formato de data / hora razoável que você pode usar - o número de milissegundos desde a época do UNIX, obviamente, no fuso horário UTC
Nir
5
Eu acho que introduz muitas variáveis ​​fora do 'controle de programadores'. Por exemplo, como a câmera responde a 14 fotos por segundo? Além disso, como a hora e as datas mudam, é possível tirar uma foto e, uma hora depois, alterar a hora de volta para uma hora antes e depois tirar uma foto. O que a câmera deve fazer então? Muitas condições, que um simples número de arquivo incremental resolve bem.
cmason
11
@ PhillipKendall - é verdade, mas a questão mais profunda é por que os padrões especificam isso. A resposta curta é o agnosticismo cultural e a classificação adequada por nome. Além disso, o carimbo de data e hora de criação de arquivo já captura a data e hora como um registro de data e hora que é independente da cultura.
AJ Henderson
3

É principalmente sobre comprimentos de nome de arquivo no momento em que as Regras de Design para Sistemas de Arquivos de Câmera foram desenvolvidas. Muitos sistemas operacionais de uso difundido na época não permitiam nomes de arquivos longos o suficiente para acomodar registros de data / hora com detalhes suficientes para diferenciar, por exemplo, duas imagens tiradas no mesmo minuto, muito menos no mesmo segundo. Há também as especificações EXIF ​​que podem ser ainda mais restritivas.

Praticamente qualquer aplicativo moderno de gerenciamento de arquivos de imagem digital de fornecedores terceirizados (Lightroom, On1, CaptureOne etc.) ou fabricantes de câmeras (EOS Utility / Digital Photo Professional, ViewNX etc.) permite atribuir novos nomes de arquivo às imagens ao importar para um computador. É muito trivial para a maioria deles configurar automaticamente a atribuição de um novo nome de arquivo na importação, com base na data e hora. Como as taxas de quadros modernas são o que são, você precisará de um nome de arquivo que possa diferenciar 10 ou mais quadros tirados no mesmo segundo para várias câmeras. Depois, há toda a questão de importar imagens tiradas usando duas câmeras diferentes (casamento com vários atiradores, etc.) ao mesmo tempo (ou quase ao mesmo tempo, mas com relógios em cada câmera, compensados ​​apenas o suficiente para que algumas das imagens '

Michael C
fonte
2
As extensões dos diretórios FAT para abranger nomes mais longos foram patenteadas pela Microsoft; portanto, nomes longos de arquivos foram evitados, apesar de bem conhecidos e triviais de implementar. É daí que vem o limite de 8 caracteres.
Mark Ransom
Sim. É por isso que a resposta diz: "... não permitem nomes de arquivos longos o suficiente ..." em vez de ' não podia permitir que nomes de arquivo ...'
Michael C
3

Sim, há um motivo específico. Fazer isso não é a aplicação mais simples do padrão. A conformidade com a aplicação mais simples do padrão facilita a interoperabilidade entre o fabricante, o software e o tempo . Novo software pode lidar com operações no nível de arquivo em imagens antigas. O software antigo provavelmente pode lidar com operações no nível do arquivo em novas imagens.

Existem também razões não específicas. Um é que a data e a hora podem ser melhor codificadas no EXIF, juntamente com outros dados relevantes, como modelo de câmera, abertura, balanço de branco etc. etc., e colocá-lo no nome do arquivo é redundante e abre a lata de worms que são dados distribuídos (que é verdade canônica, EXIF ​​ou nome do arquivo?). Na prática, os nomes de arquivos são uma questão de preferência pessoal: uma pessoa pode querer carimbos de data e hora, outro modelo de lente ou distância do foco ou velocidade do obturador ou ponto branco.

Lembre-se de que sua câmera é um computador e nomes de objetos, invalidação de cache e erros pontuais são os dois problemas difíceis da ciência da computação.

Por favor, leia meu perfil
fonte
1

Nenhuma câmera digital faz isso, mas muitos celulares Android, por isso é provavelmente histórico. Você precisa de pelo menos um segundo de precisão, como disse, porque a maioria das câmeras pode disparar mais de uma vez por segundo, mesmo no modo de disparo único. Com taxas de burst modernas a 60 FPS, você precisaria de pelo menos dois dígitos, portanto, horas + minutos + segundo + centésimos já são 8 caracteres e não há espaço para um prefixo, portanto, você está fora do limite de FAT que estava em uso quando a convenção atual começou.

De qualquer forma, não acho que isso lhe compre muito. Você saberia qual foto tirou olhando-a se o nome fosse um carimbo de data / hora? E se a hora da sua câmera estivesse errada ou você estivesse em um fuso horário diferente? Algumas pessoas mantêm suas câmeras no UTC, mas a maioria as define na hora local. Portanto, um número de sequência é tão bom quanto qualquer outra convenção para distinguir imagens. Pessoalmente, estou mais preocupado agora em ter imagens cuspidas em pastas e esquecendo de baixar ou fazer backup da próxima.

Itai
fonte
-1

O principal motivo é que os formatos de data também não são padrão internacional e nem sempre podem ser classificados por ordem. Por exemplo, se eu visualizasse os arquivos em ordem nos EUA, no formato mmddyyyy, os arquivos para março de 2003 seriam listados após os arquivos de janeiro de 2012. O uso de uma sequência contínua garante que os arquivos serão classificados quando eles foram gravados quando classificado por nome. A própria data / hora do arquivo armazena a data e hora em um formato internacionalmente compatível e os metadados na própria imagem também contêm as informações.

Uma outra razão pela qual consigo pensar é que você precisaria de precisão de um segundo para o tempo representado. Com a maioria das DSLRs, é possível disparar várias fotos por segundo. Minha câmera, por exemplo, tira 6 a 7 fotos em 1 segundo se eu pressionar o botão.

Portanto, em suma, os 4 principais motivos são para evitar confusão de diferenças culturais, garantir a ordem de classificação adequada por nome de arquivo, porque várias fotos podem ser tiradas por segundo e porque o horário do datador já está armazenado durante o tempo de criação do arquivo.

AJ Henderson
fonte
5
XKCD obrigatório: xkcd.com/1179
Leia meu perfil