Exibir mensagens

Esta seção lhe permite ver todas as mensagens deste membro. Note que você só pode ver as mensagens das áreas às quais você tem acesso.


Mensagens - zeurt

Páginas: « 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 »
101
Firmware Mediatek MT13x9 - Desenvolvimento / Re: Firmware do LG DV397H
« Online: Setembro 28, 2009, 07:56:09 pm »
Implementação do Itálico

PARTE 1:


(...)

Fontes:

Sobre as fontes, elas não são mais de 512 caracteres. Mas de 479. Como há 6 fontes para legendas no firmware, para cada uma que eu adicionasse o itálico teria que "apagar" outra, para garantir que coubessem no mesmo espaço (caso contrário, dá erros na impressão da legenda, aparecem artefatos na tela, travadas etc). Assim, seriam no máximo 3 fontes. Mas eu retirei os 33 primeiros caracteres da parte itálica de cada fonte, pois são os caracteres de controle e o espaço (que, obviamente, não mudam quando vão para itálico). Então ficaram 256 normais + 223 itálicos. Isso economizou um pouco de espaço e permitiu adicionar 4 fontes com itálico, ainda que tenha "empurrado" a fonte 14 para o lugar da 15 como efeito colateral.

O MTKRemaker não apaga as fontes corretamente nesse firmware. Ele só apaga a 4, trazendo a 5 para seu lugar, a 6 para 5 e assim por diante. Então, criei um preset de 1 caracter, o 0, para criar uma fonte mínima e colocá-la no lugar das que eu iria apagar. Assim, as fontes itálicas ficaram na posição 8, 9, 10 e 11 e a miníma ficou nas posições 12 e 13.

Será que podemos considerar essa necessidade de redução aproximadamente pela metade do número de fontes como uma regra geral quando se usa as fontes em itálico de 479 caracteres? Por exemplo, o LG DV256k tem 9 fontes para legendas (sendo que eu eliminei a fonte 9). Portanto, eu estarei seguro se reduzir de 9 fontes normais para 4 fontes de 479 caracteres (deixando as outras como mínimas - com 1 caractere), não é? Por curiosidade, isso tudo depende do número de caracteres, ou do espaço ocupado na memória?

102
Firmware Mediatek MT13x9 - Desenvolvimento / Re: Firmware do LG DV256k
« Online: Setembro 28, 2009, 05:22:51 pm »
Proposta de Implementação de Itálico Light: para LG DV256K e LG DV397H Chip M:

Primeiro passo: Ao ler os caracteres do buffer (primário ou secundário?), filtrar <i>, mudando o código de caractere para #3 e setando o bit 7, e filtrar </i>,mudando o código de caractere para #4 e resetando o bit 7. Como esses players não filtram as tags, pode-se filtrá-las tanto no buffer primário como no secundário, estou certo? Não sei qual opção é melhor ou mais fácil.

Segundo passo: Mais a frente, se o caractere lido não for #3 ou #4, for maior que #20, e o bit 7 estiver setado, adicionar offset de #DF (223) ao caractere lido.

Terceiro passo: Adicionar os trechos que cancelam o itálico no início de cada quadro (para resolver o problema das linhas que não tem </i>).

Quarto passo: Corrigir a centralização (essa parte ainda não entendi completamente).

É claro que antes de tudo isso devemos trocar as fontes (usando aquelas criadas pelo rictad depois de tanto trabalho).

Essa proposta é light pois não há opções no menu (nem mesmo para ligar/desligar o itálico), não há necessidade de mexer nos 2 buffers, e talvez as áreas de erros sejam suficientes.
Caso tudo isso funcione, considero que o resultado será bem satisfatório: sempre que houverem tags de itálico, o trecho será exibido corretamente em itálico.

Obs: Fiz essa proposta light, pois por enquanto, todo esse trabalho é para mim como falar uma língua que não tenho fluência. Cada frase, palavra, e até sílaba, eu tenho que parar duas vezes para pensar antes de falar.  ;D Então, demora, etc.
Num outro momento, talvez possa implementar o Itálico Completo.

Fonte de Informações: Explicações sobre a Implementação do Itálico no tópico do Firmware do LG DV397H, por rictad.

103
Firmware Mediatek MT13x9 - Desenvolvimento / Re: Firmware do LG DV256k
« Online: Setembro 28, 2009, 02:48:01 pm »
Na verdade, em 11C1C tinha que aumentar de 08 49 para 09 49 (e não para 08 4A) para saltar 1 palavra.
Fazendo isso, deu certo o teste! Quer dizer, mais ou menos certo: tudo ficou em itálico, porém os espaços entre as palavras (" ") foram substituídos por "ÿ", e vírgulas seguidas de espaço (", ") foram substituídas por ",ìé". Não entendi.  :dashhead1:
Rictad, talvez você já tenha visto algo parecido. Tendo resolvido isso, partirei para os próximos passos.

Obs: Para o teste eu troquei a minha fonte Arial Narrow pela sua fonte Arial Narrow com os itálicos.

104
Eu tenho três firmwares originais diferentes para DVP5980 extraídos por cabo e curiosamente nenhum deles tem o bloco.

*O de HEJ456
http://board.softpedia.com/index.php?showtopic=439&view=findpost&p=27702
*O que eu extraí do meu aparelho
*O que Rafa extraiu do aparelho dele


Mais curioso ainda: o DVP5980 é o único aparelho que até onde pude apurar não usa um chip HDMI Mediatek. Ele usa um chipset (são dois chips) Silicon Image PrismaClear.

Se as fotos do Rafa mostrarem que o DVP5990 tem um chip HDMI Mediatek eu vou acreditar que esse "HDCP block" é resultado de uma ca**da da Mediatek, que não inseriu as chaves fisicamente no seu chip.

O certo é que quando o chip HDMI é Mediatek, o HDCP block fica sempre no mesmo local. O fato de não haver HDCP block nesse local no Philips 5980 não significa que não exista HDCP block em nenhum outro lugar da FLASH (ainda não identificado). A Silicon Image PrismaClear também pode ter deixado o HDCP block na FLASH, porém em outro lugar (e assim fazendo a mesma ca**da que a Mediatek), ou não.
Finalizando, a existência do HDCP block na FLASH (certa no Proview 858 e duvidosa no Philips 5980) não indica necessariamente que o problema da perda do HDCP block por atualização por cabo irá inutilizar a HDMI, como foi mostrado pelos testes do Ryan. A minha explicação para isso num post acima se baseia na possibilidade do HDCP estar desabilitado pelo firmware nesses players mais antigos.

105
Tenho uma teoria a respeito do Philips 5980 e do Proview 858: o fato da HDCP key estar presente na FLASH, e por coincidência no mesmo local, não significa necessariamente que a checagem HDCP seja feita na prática pelo firmware, ou seja, os firmwares desses players podem ter desligado a HDCP. Considerando que são um pouco mais antigos que o Philips 5990 e o LG DV397H, e que na época não era tão frequente a presença de monitores e TVs com HDCP, talvez os fabricantes possam ter optado por deixar a HDCP desligada (independente da chave estar lá ou não). Acho até que a HDCP key deve ser colocada por padrão nesse local (ou também em outros que não sabemos, em outros players) da FLASH em todos os players Mediatek com HDMI.
P.S.: A minha teoria pode ir pro lixo se alguém souber que o 5980 ou o 858 ligados pela HDMI a alguma tela sem HDCP bloqueiem o sinal de conteúdo protegido (ou seja, que a HDCP funcione na prática nesses players).

106
Sugestão para teste:

Se o Rafalibrenz estiver com o 5990, com a HDMI funcionando, e com facilidade de usar o cabo, ele poderia fazer o seguinte:
1- Atualizar o player por CD com um firmware original disponível no site da Philips.
2- Extrair o firmware por cabo. Assim, o possível HDCP block viria junto.
3- Comparar os dois firmwares para tentar identificar o possível HDCP block. Nesse caso, provavelmente a comparação deva ser bem mais fácil do que em relação aos firmwares que o jmaraujo enviou.

É claro, só se o Rafa tiver tempo, disposição, condições, etc.  ;D

107
Firmware Mediatek MT13x9 - Desenvolvimento / Re: Firmware do LG DV256k
« Online: Setembro 26, 2009, 11:14:13 pm »
Obrigado, rictad! Você me poupou todo esse trabalho!  :)

Essa semana farei esse teste e também tentarei começar a implementar um Itálico light para o LG DV256K. ;D

108
Um usuário do OpenMTK disse que é possível adicionar o bloque HDCP ao firmware, então eu enviei uma MP para ele, pra ver se ele explica pra gente como é que se faz o procedimento...
Ele me deu a seguinte resposta aquí: "I think the only way to get the HDCP block is to dump it by serial cable from the original firmware. vb6rocod modified firmware does not include the HDCP block ( it's not included in the firmware from philips either). So when someone flashes firmware using the serial cable it zeros out HDCP block area which prevents hdmi from working. The way I get it to work is by using a hex editor and adding it to vbrocod firmware before I flash. The easiest thing is to make a backup first and if you run into problems you can most likely fix it by reflashing with the original firmware."

Legal! Agora ficou bem claro! O bloco HDCP (HDCP block) fica em alguma área do firmware que nós ainda não descobrimos, sendo que a maioria dos firmwares que usamos como base para as modificações (disponíveis nos sites de serviço da Philips e LG) não possuem esse bloco. A falta desse bloco provoca a falha na autenticação da HDCP e a consequente inutilização da HDMI. A solução realmente deve ser a que jmaraujo afirmou no seu primeiro post. Usar um firmware original extraído pelo cabo (que necessariamente contém o HDCP block). Se for possível identificar o bloco, melhor. Fico curioso para saber onde fica esse tal HDCP block, qual seu tamanho, etc.
P.S.: Portanto, esqueçam a minha teoria do último post.  :dashhead1:

109
Acho que vale a pena dar uma relembrada numas coisas que nós descobrimos há alguns meses atrás (tópico do Firmware do DV397H):

Códigos para informações e funções ocultas:

"Encontrei mais essas informações referentes ao LG DVX9900H:

Quote
Region code + HDCP + Macrovision

HDCP off/on:
PAUSE,1,2,3,6,9
on screen: "OK H" or "Default H" (Status)
(2xPAUSE to leave)

Macrovision off/on:
Pause,7,4,1,5,3,6,9
on screen: "OK M" oder "Default M" (Status)
(2xPAUSE to leave)

EDID off/on: (Extended Display Identification Data)
Pause,1,4,7,8,9
on screen: "OK E" oder "Default E" (Status)
(2xPAUSE to leave)

Region Code:
Pause,3,1,4,1,5,9
0=all

Video/HDMI Info Page:
Pause,2,4,8,6,5

Factory reset + SYSTEM INFORMATION page
go to Setup/video/TV Aspect/16:9
and press 1,3,9,7,1,3,9,ENTER


after disabling macro and hdcp componant now works on all res 720p and 1080i"

Então, o rictad conseguiu as seguintes informações sobre o seu LG DV397H usando o código para Video/HDMI Info page (ver acima):

"Quote
1. EDID

  -TV SYSTEM :NTSC
-AUTO MODE:  OFF
-VSDB Match:  Fail
-EDID parsing:  Fail

2. Supported by sink

-408i/576i:    No /No
-480p/576p:  No /No
-720p/720p:  No /No
-1080i/1080i:  No /No
-1080p/1080p:  No /No

Please press F-Skip key to see next page..

E na segunda página:

Quote
3. HDCP

-AKSV & BKSV:   Fail Fail
-R0 & R0':   Fail
-Rl & Rl':   Fail
-Repeater Bit:   OFF
-Support Al Bit:  OFF
-HDCP Authentication:  Fail

4. Current Status

-Video Mode:   YPbPr  480i
-Audio Mode:   PCM
-HDMI Format:  RGB

Qualquer coisa que aperte, mesmo os números, sai da tela."

O rictad não conseguiu fazer funcionar os códigos para ligar/desligar a HDCP, e os outros descritos acima.
Encontrei tais códigos na internet para outro modelo de LG, porém no editor hexadecimal encontramos os mesmos códigos no LG DV397H (só que o rictad não conseguiu usá-los na prática):

"DV397H:

B5:3670  30 31 2F 30 38 0A 3A 20  4D 54 31 33 38 39 20 53  01/08:. MT1389 S
B5:3680  02 01 02 06 00 00 00 00  02 01 00 04 09 09 04 05  ................
B5:3690  06 02 05 08 00 11 01 03  09 07 01 03 09 11 00 00  ................
B5:36A0  00 13 03 01 04 01 05 09  13 02 04 08 06 05 13 01  ................
B5:36B0  04 07 08 09 13 01 02 03  06 09 13 03 02 01 04 07  ................
B5:36C0  08 09 13 07 04 01 05 03  06 09 00 00 00 00 00 00  ................

O #13 é o código de PAUSE e o #11 o código de ENTER.

Esses 4 últimos não consegui fazer funcionar, mas a sua tabela mostra que três deles existem. Vou tentar tudo isso que você sugeriu. Muito obrigado, zeurt!"

Lendo tudo o que foi dito até agora, a minha teoria atual sobre o problema é a seguinte:
Provavelmente, a HDCP key fica no próprio chip HDMI, bem escondida mesmo (como o Ryan sugeriu).
Porém, o firmware, de alguma maneira, checa se a HDCP key é valida (podemos ver evidências dessa checagem na tela de informação Video/HDMI acima)
Acho que após a atualização mal sucedida por CD, a checagem da HDCP key falhou, e penso que quando isso ocorre, talvez o firmware desabilite a HDCP ou a HDMI (e talvez essa opção fique registrada na EEPROM).
Podemos ver que existe, pelo menos em outros players LG a possibilidade de ligar/desligar HDCP, Macrovision, etc. (ver códigos para funções ocultas acima).
Após a atualização pelo cabo para ressucitação, a HDCP ou HDMI continuaria desabilitada pois isto estaria registrado numa opção da EEPROM, e só voltaria a funcionar editando a opção para o valor anterior.
Pensando assim, seria necessário conseguir uma "cópia" da EEPROM de um player com a HDMI funcionando, e "colocá-la" no DV397H do rictad.
Nessa teoria, a única coisa que não consigo explicar é o fato de que com o Philips 5990 houve resolução do problema com a atualização com o firmware extraído pelo cabo (de acordo com a descrição de jmaraujo). Nesse caso todo o problema estaria localizado na FLASH e não na EEPROM?


110
Eu andei lendo que a HDCP key é na verdade um conjunto de 40 chaves com 56 bits cada. Portanto, ocupa no mínimo 280 bytes. Talvez vocês já soubessem disso, mas de qualquer modo...

Páginas: « 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 »