ActiveDelphi - Índice do Fórum ActiveDelphi
.: O site do programador Delphi! :.
 
 FAQFAQ   PesquisarPesquisar   MembrosMembros   GruposGrupos   RegistrarRegistrar 
 PerfilPerfil   Entrar e ver Mensagens ParticularesEntrar e ver Mensagens Particulares   EntrarEntrar 

Timer não aguenta acompanhar MediaPlayer.position [Resolvid]

 
Novo Tópico   Responder Mensagem    ActiveDelphi - Índice do Fórum -> Delphi
Exibir mensagem anterior :: Exibir próxima mensagem  
Autor Mensagem
iDnl
Aprendiz
Aprendiz


Registrado: Domingo, 9 de Junho de 2013
Mensagens: 173

MensagemEnviada: Qui Abr 23, 2015 8:34 pm    Assunto: Timer não aguenta acompanhar MediaPlayer.position [Resolvid] Responder com Citação

Fim um leitor de legendas que checa a posição atual do MediaPlayer e se position for igual a X, então a legenda salva aparece, porém o Timer não consegue acompanhar a mudança da posição.
Estou usando Firemonkey do Xe7, Obrigado!

Resolvido:
Dividi o position por 10000 e passei para hh:nn:ss.zzz

Obrigado!


Editado pela última vez por iDnl em Sex Abr 24, 2015 7:23 pm, num total de 2 vezes
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
rique_neves
Mestre
Mestre


Registrado: Sexta-Feira, 17 de Fevereiro de 2012
Mensagens: 873

MensagemEnviada: Sex Abr 24, 2015 1:33 pm    Assunto: Re: Timer não aguenta acompanhar MediaPlayer.position Responder com Citação

Ok, e qual é a sua dúvida!
_________________
Atrás de todo problema a uma oportunidade brilhantemente disfarçada!
Compartilhar Imagens .: http://s124.photobucket.com/
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular Enviar E-mail
johnsson
Aprendiz
Aprendiz


Registrado: Segunda-Feira, 13 de Junho de 2011
Mensagens: 182

MensagemEnviada: Sex Abr 24, 2015 1:48 pm    Assunto: Responder com Citação

A primeira coisa a se verificar é a resolução desse timer, qual o valor do Interval que você está usando?

E a segunda coisa é que pela minha experiencia, a legenda assim como o player é um sistema em tempo real soft, então não sei se é esse o caso mas você não deve fazer uma comparação direta posição do player = posição da legenda, isso deve ser feito em um intervalo, ex.

Inicio - Fim - Legenda
50 130 Como você está?


Código:

  if (Player.Position >= Inicio) and (Player.Position <= Fim) then
    Mostra(Legenda)
  else
    LimpaLegenda;


Para você decidir qual legenda deve ser mostrada você pode usar vários algoritmos, desde do proximo esperado até um algoritmo simples de busca indo do inicio ao fim devolvendo a legenda que se encaixa nos valores descritos de intervalo.

Uma simples comparação de posição sem considerar o intervalo não é garantia que a legenda sera mostrada corretamente.
_________________
Lazarus Free Pascal
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
Mostrar os tópicos anteriores:   
Novo Tópico   Responder Mensagem    ActiveDelphi - Índice do Fórum -> Delphi Todos os horários são GMT - 3 Horas
Página 1 de 1

 
Ir para:  
Enviar Mensagens Novas: Proibido.
Responder Tópicos Proibido
Editar Mensagens: Proibido.
Excluir Mensagens: Proibido.
Votar em Enquetes: Proibido.


Powered by phpBB © 2001, 2005 phpBB Group
Traduzido por: Suporte phpBB