Mas se estás a ler o bytearray original já estás a carregar tudo para
memória, o ideal é ter o apontador para o ficheiro é ler do disco
progressivamente o mesmo até terminar a metadata. Se o fazes a partir do
bytearray, já leste tudo para memória.

On Mar 30, 2017 6:00 PM, "Hugo Ferreira" <[email protected]> wrote:

> Criei a minha exatamente pelos problemas que mencionaste.
> Já foi testado em vários androids, iphones e ipad e mantém-se estável e
> rapido a processar.
>
> Em 30/03/2017 5:56 p.m., "João Fernandes" <joaopedromartinsfernandes@
> gmail.com> escreveu:
>
>> Criaste a tua própria biblioteca para ler o exif ou usas uma existente?
>> Existem algumas que só lêem o início do ficheiro pois toda a metadata
>> encontra se ai (quer EXIF quer IPTC), evitando ler o ficheiro todo para
>> memória.
>>
>> On Mar 29, 2017 12:22 PM, "Hugo Ferreira" <[email protected]> wrote:
>>
>>> Viva,
>>>
>>> Desde que falei no assunto que não mexi mais nesta área mas agora tive
>>> mesmo de resolver e ficou a funcionar.
>>> Eu fazia algumas tarefas após tirar a foto com a câmara nativa:
>>> 1 - Carregar a foto com o Loader que devolve um Bitmap;
>>> 2 - Redimensionar para um tamanho máximo o BitmapData caso o valor de
>>> largura fosse superior a um pré-definido;
>>> 3 - Depois tentava descobrir a orientação da imagem através da técnica
>>> EXIF (obrigado pela dica) mas sem sucesso.
>>>
>>> O problema estava que no tratamento da imagem, a informação original do
>>> JPEG perdia-se.
>>>
>>> Primeiro é necessário executar a técnica EXIF sobre o bytearray original
>>> (sem qualquer processamento de imagem) e guardar essa informação numa
>>> variável e só depois seguir o passo 1 e depois o 2.
>>> Depois verifico a orientação lida e se necessário, roda-se a imagem.
>>>
>>> Uma melhoria será guardar a informação da orientação da imagem em cache
>>> e só fazer essa leitura na primeira vez, pois ler os dados de um JPEG
>>> enorme, requer bastante processamento, com a qualidade das câmaras de hoje
>>> em dia.
>>>
>>>
>>> No dia 23 de março de 2017 às 09:53, Hugo Ferreira <
>>> [email protected]> escreveu:
>>>
>>>> Viva,
>>>>
>>>> Cheguei a tentar implemntar isso mas infelizmente que a implementação EXIF
>>>> que encontrei não funciona.
>>>> Se depois chegares a alguma conclusão, por favor diz.
>>>>
>>>> Obrigado,
>>>> Hugo.
>>>>
>>>> No dia 20 de março de 2017 às 15:12, Hugo Ferreira <
>>>> [email protected]> escreveu:
>>>>
>>>>> Viva,
>>>>>
>>>>> É isso mesmo !
>>>>> Desconhecia o conceito "EXIF" e foi  primeira vez que utilizei a
>>>>> classe CameraUI e tive de lidar com este tipo de problemas.
>>>>> Pelo que estive a ler, isto é mesmo assim e não é um bug do AIR ou do
>>>>> Flex.
>>>>> Aguns modelos como o Samsung Galaxy S6 devolvem a foto com um ângulo
>>>>> diferente e outros não.
>>>>> Eu até já tinha o código feito para rodar (corrigir a rotação) da foto
>>>>> porque pensava que só acontecia em iOS (acontece no meu iPad 3 mas não no
>>>>> meu Huawei P9) mas ontem descobri que depende do modelo do device (também
>>>>> acontece por exemplo no S6 e iPhone 7 Plus mas não no iPad Pro),
>>>>> independentemente do OS e do runtime/SDK.
>>>>>
>>>>> Com essa "keyword", já consegui encontrar muita informação na net e
>>>>> irei hoje testar com esta informação: http://stackoverfl
>>>>> ow.com/questions/35657156/adobe-air-cameraui-photo-orientati
>>>>> on/35664209
>>>>> Se funcionar bem, basta usar o método de rotação que já tenho em
>>>>> função dos graus que precisa de compensar (caso a foto não seja devolvida
>>>>> com rotação).
>>>>>
>>>>> Não percebo porque é que não existe um standard.
>>>>> Mais uma coisa para gastar processamento.
>>>>>
>>>>> Foste uma grade ajuda.
>>>>>
>>>>> Obrigado,
>>>>> Hugo.
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> No dia 20 de março de 2017 às 14:34, Rui Cruz <[email protected]>
>>>>> escreveu:
>>>>>
>>>>>> Viva,
>>>>>>
>>>>>> Penso que tens de ler a orientação no exif da foto.. em breve irei
>>>>>> mexer com isso intensamente, mas para já só tenho de lidar com esse
>>>>>> problema em desktop.
>>>>>>
>>>>>> tens aqui um bom tutorial: http://www.daveperre
>>>>>> tt.com/articles/2012/07/28/exif-orientation-handling-is-a-ghetto/
>>>>>>
>>>>>> Cumprimentos
>>>>>>
>>>>>> No dia 20 de março de 2017 às 11:37, Hugo Ferreira <
>>>>>> [email protected]> escreveu:
>>>>>>
>>>>>>> Bom dia,
>>>>>>>
>>>>>>> Já aqui alguém usou a CameraUI existente na framework Flex para
>>>>>>> mobile ?
>>>>>>> Não tiveram problemas com a orientação da imagens em modelos
>>>>>>> diferentes de devices ?
>>>>>>>
>>>>>>>
>>>>>>> Cumprimentos,
>>>>>>> Hugo.
>>>>>>>
>>>>>>> --
>>>>>>> Recebeu esta mensagem porque subscreveu ao grupo "Mailing List da
>>>>>>> Comunidade Portuguesa de Rich Internet Applications - www.riapt.org"
>>>>>>> do Grupos do Google.
>>>>>>> Para anular a subscrição deste grupo e parar de receber emails do
>>>>>>> mesmo, envie um email para [email protected].
>>>>>>> Para publicar uma mensagem neste grupo, envie um email para
>>>>>>> [email protected].
>>>>>>> Visite este grupo em https://groups.google.com/group/riapt.
>>>>>>> Para mais opções, visite https://groups.google.com/d/optout.
>>>>>>>
>>>>>>
>>>>>> --
>>>>>> Recebeu esta mensagem porque subscreveu ao grupo "Mailing List da
>>>>>> Comunidade Portuguesa de Rich Internet Applications - www.riapt.org"
>>>>>> do Grupos do Google.
>>>>>> Para anular a subscrição deste grupo e parar de receber emails do
>>>>>> mesmo, envie um email para [email protected].
>>>>>> Para publicar uma mensagem neste grupo, envie um email para
>>>>>> [email protected].
>>>>>> Visite este grupo em https://groups.google.com/group/riapt.
>>>>>> Para mais opções, visite https://groups.google.com/d/optout.
>>>>>>
>>>>>
>>>>>
>>>>
>>> --
>>> Recebeu esta mensagem porque subscreveu ao grupo "Mailing List da
>>> Comunidade Portuguesa de Rich Internet Applications - www.riapt.org" do
>>> Grupos do Google.
>>> Para anular a subscrição deste grupo e parar de receber emails do mesmo,
>>> envie um email para [email protected].
>>> Para publicar uma mensagem neste grupo, envie um email para
>>> [email protected].
>>> Visite este grupo em https://groups.google.com/group/riapt.
>>> Para mais opções, visite https://groups.google.com/d/optout.
>>>
>> --
>> Recebeu esta mensagem porque subscreveu ao grupo "Mailing List da
>> Comunidade Portuguesa de Rich Internet Applications - www.riapt.org" do
>> Grupos do Google.
>> Para anular a subscrição deste grupo e parar de receber emails do mesmo,
>> envie um email para [email protected].
>> Para publicar uma mensagem neste grupo, envie um email para
>> [email protected].
>> Visite este grupo em https://groups.google.com/group/riapt.
>> Para mais opções, visite https://groups.google.com/d/optout.
>>
> --
> Recebeu esta mensagem porque subscreveu ao grupo "Mailing List da
> Comunidade Portuguesa de Rich Internet Applications - www.riapt.org" do
> Grupos do Google.
> Para anular a subscrição deste grupo e parar de receber emails do mesmo,
> envie um email para [email protected].
> Para publicar uma mensagem neste grupo, envie um email para
> [email protected].
> Visite este grupo em https://groups.google.com/group/riapt.
> Para mais opções, visite https://groups.google.com/d/optout.
>

-- 
Recebeu esta mensagem porque está inscrito no grupo "Mailing List da Comunidade 
Portuguesa de Rich Internet Applications - www.riapt.org" dos Grupos do Google.

Para anular a subscrição deste grupo e parar de receber emails do mesmo, envie 
um email para [email protected].
Para publicar uma mensagem neste grupo, envie um e-mail para 
[email protected].
Visite este grupo em https://groups.google.com/group/riapt.
Para mais opções, consulte https://groups.google.com/d/optout.

Responder a