Ir para o conteúdo

 Voltar a Ginga-NCL Em...
Tela cheia

Problemas Ginga-NCL Emulador

17 de Dezembro de 2007, 13:25 , por Desconhecido - | Ninguém seguindo este artigo por enquanto.
Visualizado 25 vezes

Boa tarde a todos,

Percebi três problemas mais não tenho certeza se são realmente problemas com a ferramenta:

Problema 1:

com relação ao exemplo 10 disponivel para teste se não me engano, tem o objetivo de Reproduzir um vídeo e permitir que o usuário selecione o idioma do áudio, através do pressionamento das teclas vermelha e verde do controle remoto.

quando seleciono a tecla desejada me retorna o seguinte erro :

Ginga-NCL Emulator v1.1
Copyright PUC-Rio (Laboratorio TeleMidia), 1989-2007
Exception in thread "Thread-15" java.lang.NullPointerException
        at br.pucrio.telemidia.ginga.core.player.av.JMFPlayer.<init>(Unknown Source)
        at br.pucrio.telemidia.ginga.ncl.adapters.av.jmf.JmfPlayerAdapter.create
Player(Unknown Source)
        at br.pucrio.telemidia.ginga.ncl.adapters.DefaultFormatterPlayerAdapter.
prepare(Unknown Source)
        at br.pucrio.telemidia.ginga.ncl.FormatterScheduler.runAction(Unknown Source)
        at br.pucrio.telemidia.ginga.ncl.FormatterScheduler.runActionOverSwitch(
Unknown Source)
        at br.pucrio.telemidia.ginga.ncl.FormatterScheduler.runAction(Unknown Source)
        at br.pucrio.telemidia.ginga.ncl.FormatterScheduler.runAction(Unknown Source)
        at br.pucrio.telemidia.ginga.ncl.model.link.LinkSimpleAction.run(Unknown Source)
        at br.pucrio.telemidia.ginga.ncl.model.link.LinkRepeatAction.run(Unknown Source)
        at java.lang.Thread.run(Unknown Source)

Problema 2 e 3:

Este tem o objetivo de simular um menu de DVD.

Quando seleciono o item desejado no menu, o video não esta começando apartir da ancora e sim do começo do video mais quando chega ao final demarcado pela ancora ele termina normalmente, ou seja não esta obedecendo o "begin" da ancora esta obedecendo somente o "end".

O outro problema é com relação a tecla PAUSE que não responde ao click do botão!!!

O codigo segue abaixo para os problemas 2 e 3.

Lembrando que na versão anterior tanto as ancoras como a seleção de audio estão funcionando normalmente!!!!!

<?xml version="1.0" encoding="ISO-8859-1"?>


<ncl id="MenuDVD" xmlns="http://www.ncl.org.br/NCL3.0/EDTVProfile">

<head>

<regionBase>
   <region id="rgTV" width="70%" height="70%">
        <region id="rgFundoMenu" width="100%" height="100%" />
        <region id="rgVideo" width="100%" height="100%" />
        <region id="leftCol" left="4%" top="0" width="3%" height="100%" zIndex="1">
            <region id="rgOpcao1" top="41%" width="100%" height="28"/>
            <region id="rgOpcao2" top="53%" width="100%" height="28"/>
            <region id="rgOpcao3" top="63%" width="100%" height="28"/>
            <region id="rgOpcao4" top="73%" width="100%" height="28"/>
            <region id="rgOpcao5" top="83%" width="100%" height="28"/>
        </region> 
        <region id="rightCol" left="54.7%" top="0" width="3%" height="100%" zIndex="1">
            <region id="rgOpcao6" top="41.5%" width="100%" height="28"/>
            <region id="rgOpcao7" top="53%" width="100%" height="28"/>
            <region id="rgOpcao8" top="66%" width="100%" height="28"/>
        </region>
   </region>
</regionBase>

<descriptorBase>
    <descriptor id="dFundoMenu" region="rgFundoMenu" />
    <descriptor id="dVideo" region="rgVideo" />
 
 <descriptor id="dOpcao1" region="rgOpcao1" focusIndex="1"
               moveDown="2" moveUp="8" moveRight="6" focusBorderWidth="0"
               focusSrc="media/play.png"/>
              
    <descriptor id="dOpcao2" region="rgOpcao2" focusIndex="2"
               moveDown="3" moveUp="1" moveRight="7" focusBorderWidth="0"
               focusSrc="media/play.png"/>

    <descriptor id="dOpcao3" region="rgOpcao3" focusIndex="3"
               moveDown="4" moveUp="2" moveRight="8" focusBorderWidth="0"
               focusSrc="media/play.png"/>

    <descriptor id="dOpcao4" region="rgOpcao4" focusIndex="4"
               moveDown="5" moveUp="3" moveRight="8" focusBorderWidth="0"
               focusSrc="media/play.png"/>

    <descriptor id="dOpcao5" region="rgOpcao5" focusIndex="5"
               moveDown="6" moveUp="4" moveRight="8" focusBorderWidth="0"
               focusSrc="media/play.png"/>

    <descriptor id="dOpcao6" region="rgOpcao6" focusIndex="6"
               moveDown="7" moveUp="5" moveLeft="1" focusBorderWidth="0"
               focusSrc="media/play.png"/>
              
     <descriptor id="dOpcao7" region="rgOpcao7" focusIndex="7"
               moveDown="8" moveUp="6" moveLeft="2" focusBorderWidth="0"
               focusSrc="media/play.png"/>

    <descriptor id="dOpcao8" region="rgOpcao8" focusIndex="8"
               moveDown="1" moveUp="7" moveLeft="3" focusBorderWidth="0"
               focusSrc="media/play.png"/>
</descriptorBase>


<connectorBase>
 <causalConnector id="onEndStart">
  <simpleCondition role="onEnd"/>
  <simpleAction role="start" max="unbounded" qualifier="seq"/>
 </causalConnector>

 <causalConnector id="onSelectionStopStart">
  <simpleCondition role="onSelection"/>
  <compoundAction operator="seq">
   <simpleAction role="stop" max="unbounded" qualifier="seq"/>
   <simpleAction role="start" max="unbounded" qualifier="seq"/>
  </compoundAction>
 </causalConnector>
 
 <causalConnector id="onKeySelectionPause">
    <connectorParam name="keyCode" />
  <simpleCondition role="onSelection" key="$keyCode" />
  <compoundAction operator="par">
            <simpleAction role="pause" />
  </compoundAction>
 </causalConnector>
 
</connectorBase>

</head>

<body>

<port id="pInicio" component="cMenu"/>

<media id="setttings" type="application/x-ginga-settings">
   <property name="currentFocus" value="1"/>
</media>


55 comentários

  • 6958a7d3f20a68182800b45d6134fedf?only path=false&size=50&d=404Rafael Rodrigues(usuário não autenticado)
    18 de Dezembro de 2007, 0:21

     

    Watson,

    Problema 1:
    O exemplo está exatamente igual ao do site? Testei em 2 maquinas Diferentes e funcionou.

    A sua máquina toca o video do exemplo 10 (fora do Emulador, no Windows Media Player, por exemplo)?

    Problema 2 e 3:
    Vou dar uma analisada no seu NCL.

    Um abraço,
    Rafael

    • 8439a28584b70befddd5b658eb98c3b0?only path=false&size=50&d=404watson odilon(usuário não autenticado)
      18 de Dezembro de 2007, 12:28

       

      Testei no vista e no xp e nos dois casos funcionam no player antigo e não funciona no novo:

      o codigo do problema 1 é o seguinte:

      obs: as 3 midias que estou usando estão funcionando em players fora do emulador..... e quando seleciono o idioma as midias tbm funcionam, a unica coisa que não funciona e o audio que selecionei..., e me retorna o erro passado acima....

      <?xml version="1.0" encoding="ISO-8859-1"?>

      <ncl id="exemplo10"
           xmlns="http://www.ncl.org.br/NCL3.0/EDTVProfile">

      <head>

      <regionBase>
         <region id="rgTV" width="100%" height="100%">
            <region id="rgVideo1" left="25%" top="25%"
                    width="50%" height="50%" zIndex="0">

               <region id="rgBotaoVermelho" left="3%" bottom="3%"
                       width="130" height="70" zIndex="1" />

               <region id="rgBotaoVerde" right="3%" bottom="3%"
                       width="130" height="70" zIndex="1" />

            </region>
         </region>
      </regionBase>

      <descriptorBase>
         <descriptor id="dVideo1" region="rgVideo1" />
         <descriptor id="dVideo3" region="rgVideo1">
            <descriptorParam name="soundLevel" value="0" />
         </descriptor>
         <descriptor id="dAudio1" />
         <descriptor id="dBotaoVermelho" region="rgBotaoVermelho" />
         <descriptor id="dBotaoVerde" region="rgBotaoVerde" />
      </descriptorBase>

      <ruleBase>
         <rule id="rPt" var="idioma" comparator="eq" value="pt" />
         <rule id="rEn" var="idioma" comparator="eq" value="en" />
      </ruleBase>

      <connectorBase>
            <causalConnector id="onBeginStartN">
               <simpleCondition role="onBegin"/>
               <simpleAction role="start" max="unbounded" qualifier="par"/>
            </causalConnector>

            <causalConnector id="onEndStopN">
               <simpleCondition role="onEnd"/>
               <simpleAction role="stop" max="unbounded" qualifier="par"/>
            </causalConnector>

            <causalConnector id="onEndStart">
               <simpleCondition role="onEnd"/>
               <simpleAction role="start"/>
            </causalConnector>

            <causalConnector id="onKeySelectionSetNStartNStopNAbortN">
               <connectorParam name="keyCode" />
               <connectorParam name="valueSet" />
               <simpleCondition role="onSelection" key="$keyCode" />
               <compoundAction operator="seq">
                  <simpleAction role="set" value="$valueSet"
                                max="unbounded" qualifier="par"/>
                  <simpleAction role="start"
                                max="unbounded" qualifier="par"/>
                  <simpleAction role="stop"
                                max="unbounded" qualifier="par"/>
                  <simpleAction role="abort"
                                max="unbounded" qualifier="par"/>
               </compoundAction>
            </causalConnector>
      </connectorBase>

      </head>

      <body>

      <port id="pInicio" component="video1" />

      <media type="application/x-ginga-settings" id="nodeSettings">
         <property name="idioma" />
      </media>

      <media type="video/mpeg" id="video1" src="media/PauBrasil.mpg"
             descriptor="dVideo1" />

      <media type="video/mpeg" id="video2" src="media/abertura.mpg"
             descriptor="dVideo1" />

      <media type="image/gif" id="botaoVermelho"
             src="media/botao_vermelho.gif" descriptor="dBotaoVermelho"/>
      <media type="image/gif" id="botaoVerde"
             src="media/botao_verde.gif" descriptor="dBotaoVerde" />

      <context id="contextoFilme">
         <port id="pVideo3" component="video3" />

         <media type="video/mpeg" id="video3"
                src="media/Dali.mpg" descriptor="dVideo3" />

         <switch id="switchAudioIdioma">
            <bindRule rule="rPt" constituent="audio1" />
            <bindRule rule="rEn" constituent="audio2" />

            <media type="audio/mp3" id="audio1"
                   src="media/audio1.mp3" descriptor="dAudio1" />
            <media type="audio/mp3" id="audio2"
                   src="media/audio2.mp3" descriptor="dAudio1" />
         </switch>

         <link id="lVideo3AudioStart"
               xconnector="connectors#onBeginStartN">
            <bind component="video3" role="onBegin" />
            <bind component="switchAudioIdioma" role="start" />
         </link>

         <link id="lVideo3AudioStop"
               xconnector="connectors#onEndStopN">
            <bind component="video3" role="onEnd" />
            <bind component="switchAudioIdioma" role="stop" />
         </link>

      </context>

      <!-- início do video1 deve exibir botões -->
      <link id="lVideo1Init" xconnector="connectors#onBeginStartN">
         <bind component="video1" role="onBegin" />
         <bind component="botaoVermelho" role="start" />
         <bind component="botaoVerde" role="start" />
      </link>

      <!-- término do video1 deve dispará-lo novamente
           (deve tocar em loop) -->
      <link id="lVideo1Loop" xconnector="connectors#onEndStart">
         <bind component="video1" role="onEnd" />
         <bind component="video1" role="start" />
      </link>

      <!-- define idioma inglês quando a tecla vermelha é pressionada -->
      <link id="lSelectBotaoVermelhoIdioma"
            xconnector="connectors#onKeySelectionSetNStartNStopNAbortN">
         <bind component="botaoVermelho" role="onSelection">
            <bindParam name="keyCode" value="RED" />
         </bind>
         <bind component="nodeSettings" interface="idioma" role="set">
            <bindParam name="valueSet" value="en" />
         </bind>
         <bind component="botaoVerde" role="stop" />
         <bind component="botaoVermelho" role="stop" />
         <bind component="video1" role="abort" />
         <bind component="video2" role="start" />
      </link>

      <!-- define idioma português quando a tecla verde é pressionada -->
      <link id="lSelectBotaoVerdeIdioma"
            xconnector="connectors#onKeySelectionSetNStartNStopNAbortN">
         <bind component="botaoVerde" role="onSelection">
            <bindParam name="keyCode" value="GREEN" />
         </bind>
         <bind component="nodeSettings" interface="idioma" role="set">
            <bindParam name="valueSet" value="pt" />
         </bind>
         <bind component="botaoVerde" role="stop" />
         <bind component="botaoVermelho" role="stop" />
         <bind component="video1" role="abort" />
         <bind component="video2" role="start" />
      </link>

      <!-- término do video2 deve disparar o video3 em seu contexto -->
      <link id="lVideo2StartVideo3"
            xconnector="connectors#onEndStart">
         <bind component="video2" role="onEnd" />
         <bind component="contextoFilme" interface="pVideo3"
               role="start" />
      </link>

      </body>

      </ncl>

       

      Obrigado e T+

      • 6958a7d3f20a68182800b45d6134fedf?only path=false&size=50&d=404Rafael Rodrigues(usuário não autenticado)
        18 de Dezembro de 2007, 14:37

         

        Watson,

        Realmente a execução de uma ancora no player antigo estava funcionando e neste novo não. Em breve teremos uma nova versão.

        Um abraço,
        Rafael

  • 8439a28584b70befddd5b658eb98c3b0?only path=false&size=50&d=404watson odilon(usuário não autenticado)
    18 de Dezembro de 2007, 14:53

     

    e com relação ao problema 1 e a tecla pause?

    T+

Concurso ITU-T de Aplicações para IPTV 2012

13 de Agosto de 2012, 19:38, por Desconhecido

Gostaríamos de lembrar aos possíveis interessados que o prazo de registro para participação no Concurso ITU-T de Aplicações para IPTV 2012 (IPTV Application Challenge) se encerra nesta semana, dia 15 de agosto de 2012. Já o prazo para a submissão de aplicações se encerra no dia 07 de setembro de 2012.



NCL Eclipse 1.6 disponível

10 de Janeiro de 2012, 21:19, por Desconhecido

Caros membros da Comunidade Ginga,



Concursos de Aplicações Ginga-NCL

22 de Setembro de 2011, 3:22, por Desconhecido

    Gostaríamos de relembra-los de que há dois concursos de aplicações Ginga-NCL com inscrições ainda abertas. O convite é aberto a toda a comunidade de desenvolvedores de aplicações para o Middleware Ginga-NCL, em nível internacional. São os seguintes concursos:



Novas versões: Ginga e Ginga-NCL Virtual Set-top Box (v.0.12.3)

1 de Agosto de 2011, 20:58, por Desconhecido



Algumas Boas Notícias da Comunidade Ginga

28 de Julho de 2011, 21:31, por Desconhecido

Autor: Roberto Azevedo