Wemerson,

Porque não faz o seguinte.

Crie um db local, sqllite, e armazene as listas de vídeos para ser baixados.
Crie um serviço Java, que fique na taskbar, que se comunica com o db, e o
sistema de arquivos.

Ambos os softwares estão linkados com a conta do usuário, via webservice.

Pela app air, você controla toda a interface, e, habilita o usuário a poder
baixar vídeos on demand.
E monitora o progresso dos bytes recebidos até o momento pelo Serviço Java.

O serviço Java (pode ser em qualquer linguagem na verdade), ficaria
monitorando essa flag do vídeo em questão, e validando se a conta do
usuário está ativa no sistema (paga, etc...)

Quando a app air, solicita um download, grava uma flag qualquer que está
apto a baixar o tal arquivo ou arquivos.

Então, o serviço Java, abre uma thread, ou várias, seguindo o processo do
getright... (cada thread baixa um offset de bytes), o que torna o download
mto melhor.

Isso fica armazenado no HD do cliente, do terminal Citrix ou algo assim.

Você pode deixar o cliente baixar x arquivos por vez (10 processos com 10
threads cada), e deixar que o cliente tenha 10 coleções, até mesmo expirar
esses arquivos em alguma hora.

Para aumentar ainda a segurança com o conteúdo, armazene o arquivo numa
partição TrueCrypt, e monte ela apenas quando for gravar e ler dados.
http://www.truecrypt.org/docs/?s=command-line-usage

O formato dos vídeos podem estar em .dat e você pode definir quais blocos
de bytes começa o stream.

Com isso sua app air consegue saber se o arquivo está completo, parcial,
etc.
O serviço Java, faz o trabalho sujo, e garante que o arquivo está sendo
baixado.

A conversa entre o Java e o AIR pode ser baseadas em tabelas de sqlite ou
mesmo arquivos locais no sistema de arquivos.
O que for mais adequado, embora eu acredite que o SQLite seja mais rápido
em termos de I/O e otimização de recursos, bem como riqueza dessa API entre
programas no mesmo terminal.

O que acha? Resolve seu problema?

Abraço,

Ernani




2012/2/16 Wemerson Couto Guimarães <wemerso...@gmail.com>

> Boa tarde...
>
> Nao esta nao...
>
> Os dispositivos estao espalhados em inumeros clientes cada um  com sua
> conexao com a internet entende? Uns tem conexoes boas, outros medias,
> outros pessimas...
>
> E ainda tem os clientes com aplicacao de Terminal Server onde a banda e
> ultra-hiper-limitadissima... entao obrigatoriamente tenho que rodar local e
> via browser
>
> Em 16 de fevereiro de 2012 04:44, Tonussi Eric 
> <erictonu...@gmail.com>escreveu:
>
> O server da app não está na mesma rede que os dispositivos?
>>
>> --
>>  @Tonussi
>> tonussi.com <http://tonussi.com/>
>>
>>
>> Em 16 de fevereiro de 2012 10:16, Wemerson Couto Guimarães <
>> wemerso...@gmail.com> escreveu:
>>
>>>  @Ernani, vou descrever um pouco melhor nosso sistema para você
>>> entender...
>>>
>>> A aplicação normal nossa roda em Flex/Air e através dela eu pego os
>>> arquivos do nosso servidor e gravo no sistema de arquivos sem problemas,
>>> desde que esteja dentro do contexto da aplicação air (app:/)... E gravo
>>> justamente para não ficar toda hora baixando os mesmos arquivos...
>>>
>>> Quanto a streaming de video, sinceramente... se der um picote na
>>> transmissão não serve pro nosso propósito e com a internet que temos no
>>> Brasil com certeza vai dar picote uma hora ou outra... então fazer a
>>> aplicação originalmente em Air foi uma grande pedida pois gravamos tudo
>>> localmente e a reprodução é formidável... inclusive pra conteúdo em HD...
>>>
>>> Eu vejo por aí muitos terminais de Digital Signage cujas empresas não
>>> vou citar o nome, que a reprodução fica congelada ou em tela preta por
>>> muito tempo... já vi casos de mais de 30 segundos sem nada... gravando
>>> localmente isso não acontece...
>>>
>>>
>>> Eu tenho clientes que usam Terminal Citrix e liberam apenas 24Kbps para
>>> cada terminal e algumas limitações de equipamento, então a nossa aplicação
>>> não daria certo, pois é feita pra conteúdo em FullHD....
>>>
>>> Então a princípio estamos estudando a possibilidade de construir uma
>>> aplicação via browser, para esses casos; onde só iria ser reproduzido
>>> conteúdo estático com imagens e textos sem animação e sem video... então
>>> seria perfeito pra usar no browser.... mas aí vem a  questão de cache...
>>> nem sempre é perfeito e vai ter que baixar de novo e com certeza a
>>> reprodução vai dar furos...
>>>
>>> Por isso que quero ver a possibilidade de gravar em disco, numa área
>>> previamente definida e devidamente autenticada...
>>>
>>> E nesse ponto me deu uma segunda luz... se conseguirmos fazer isso,
>>> praticamente vou poder migrar toda a aplicação Air pro browser; inclusive a
>>> parte de reprodução de video em FullHD... pois seria a mesma coisa, já que
>>> os arquivos estariam local... e não teria que ficar com 2 aplicações
>>> distintas... o filtro ficaria no conteúdo... onde eu setaria um terminal
>>> COM ou SEM animação.
>>>
>>>
>>>
>>>
>>> --
>>> Wemerson Guimarães
>>> Rio Verde - Go - Brasil
>>>
>>>  --
>>> Você recebeu esta mensagem porque está inscrito na lista "flexdev"
>>> Para enviar uma mensagem, envie um e-mail para flexdev@googlegroups.com
>>> Para sair da lista, envie um email em branco para
>>> flexdev-unsubscr...@googlegroups.com
>>> Mais opções estão disponíveis em http://groups.google.com/group/flexdev
>>>
>>
>>  --
>> Você recebeu esta mensagem porque está inscrito na lista "flexdev"
>> Para enviar uma mensagem, envie um e-mail para flexdev@googlegroups.com
>> Para sair da lista, envie um email em branco para
>> flexdev-unsubscr...@googlegroups.com
>> Mais opções estão disponíveis em http://groups.google.com/group/flexdev
>>
>
>
>
> --
> Wemerson Guimarães
> Rio Verde - Go - Brasil
>
>  --
> Você recebeu esta mensagem porque está inscrito na lista "flexdev"
> Para enviar uma mensagem, envie um e-mail para flexdev@googlegroups.com
> Para sair da lista, envie um email em branco para
> flexdev-unsubscr...@googlegroups.com
> Mais opções estão disponíveis em http://groups.google.com/group/flexdev
>

-- 
Você recebeu esta mensagem porque está inscrito na lista "flexdev"
Para enviar uma mensagem, envie um e-mail para flexdev@googlegroups.com
Para sair da lista, envie um email em branco para 
flexdev-unsubscr...@googlegroups.com
Mais opções estão disponíveis em http://groups.google.com/group/flexdev

Responder a