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" <
[email protected]> 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-orientation/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 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