Ir para o conteúdo

 Voltar a Linguagem NCL
Tela cheia

Erro tentando usar set e assessmentStatement

8 de Maio de 2009, 18:35 , por Desconhecido - | 1 Pessoa seguindo este artigo.
Visualizado 13 vezes

Pessoal,

tentei escrever um  código bem simples, baseado num tutorial que segui, para exercitar o uso de set e assessmentStatement. Porém quando peço para executar no Virtual STB com Ginga-NCL 0.10 a aplicação nem começa e já para.

A aplicação deveria se comportar assim: mostra um vídeo junto com uma imagem. Se durante a exibição do vídeo o usuário aperta a tecla verde, a imagem deve ser escondida (stop) quando o vídeo terminar. Caso contrário, a imagem continua sendo mostrada sobre o fundo preto.

Não consegui ver na saída (abaixo) nada que pudesse me dar uma pista do que pode estar acontencendo.

argv = 'ncl30/diogo/variavel.ncl' nclFile = 'ncl30/diogo/variavel.ncl'
ComponentManager::getComponentDescription
ComponentManager::getComponent opening component 'libgingacccmparser.so'
ComponentManager::getComponent component 'libgingacccmparser.so' OPENED
ComponentManager::refreshComponentDescription REFRESHED.
ComponentManager::getComponent opening component 'libgingalssm.so'
ComponentManager::getComponent component 'libgingalssm.so' OPENED
ComponentManager::getComponent opening component 'libgingancl.so'
ComponentManager::getComponent component 'libgingancl.so' OPENED
ComponentManager::getComponent opening component 'libgingaccsystemio.so'
ComponentManager::getComponent component 'libgingaccsystemio.so' OPENED
ComponentManager::getComponent opening component 'libginganclprefetch.so'
ComponentManager::getComponent component 'libginganclprefetch.so' OPENED
ComponentManager::getComponent opening component 'libgingaccic.so'
ComponentManager::getComponent component 'libgingaccic.so' OPENED
ComponentManager::getComponent opening component 'libgingaccsystemiodfb.so'
ComponentManager::getComponent component 'libgingaccsystemiodfb.so' OPENED

     =======================|  DirectFB 1.0.1  |=======================
          (c) 2001-2007  The DirectFB Organization (directfb.org)
          (c) 2000-2004  Convergence (integrated media) GmbH
        ------------------------------------------------------------

(*) DirectFB/Core: Single Application Core. (2009-04-22 14:05)
(*) Direct/Thread: Running 'VT Switcher' (CRITICAL, 3792)...
(!) Direct/Modules: Unable to dlopen `/usr/local/lib/directfb-1.0-0/inputdrivers/libdirectfb_penmount.so'!
    --> /usr/local/lib/directfb-1.0-0/inputdrivers/libdirectfb_penmount.so: undefined symbol: dfb_input_modules
(*) Direct/Thread: Running 'Keyboard Input' (INPUT, 3793)...
(*) DirectFB/Input: Keyboard 0.9 (directfb.org)
(*) Direct/Thread: Running 'PS/2 Input' (INPUT, 3794)...
(*) DirectFB/Input: IMPS/2 Mouse 1.0 (directfb.org)
(*) DirectFB/Genefx: MMX detected and enabled
(*) DirectFB/Graphics: MMX Software Rasterizer 0.6 (directfb.org)
(*) DirectFB/Core/WM: Default 0.3 (directfb.org)
(!) DirectFB/FBDev: Panning display failed (x=0 y=0 ywrap=0 vbl=0)!
    --> Invalid argument
(#) DirectFBError [gingacc-systemio DFBDeviceScreen TestConfig error: ]: Not supported!
ComponentManager::getComponent opening component 'libgingaccplaimg.so'
ComponentManager::getComponent component 'libgingaccplaimg.so' OPENED
ComponentManager::getComponent opening component 'libgingaccsysctsimgdfb.so'
ComponentManager::getComponent component 'libgingaccsysctsimgdfb.so' OPENED
(*) Direct/Interface: Loaded 'PNG' implementation of 'IDirectFBImageProvider'.
ComponentManager::getComponent opening component 'libgingacccontextmanager.so'
ComponentManager::getComponent component 'libgingacccontextmanager.so' OPENED
InputManager::initializeInputIntervalTime imperative = '0' declarative = '200'
ComponentManager::getComponent opening component 'libncl30connclncm.so'
ComponentManager::getComponent component 'libncl30connclncm.so' OPENED
(!) [ 3787:    0.000] --> Caught signal 11 (at (nil), invalid address) <--
 (!!!)  *** WARNING [still objects in 'Layer Region Pool'] *** [object.c:231 in fusion_object_pool_destroy()]
 (!!!)  *** WARNING [still objects in 'Layer Context Pool'] *** [object.c:231 in fusion_object_pool_destroy()]
 (!!!)  *** WARNING [setting window->stack = NULL] *** [default.c:2805 in wm_close_stack()]
 (!!!)  *** WARNING [setting window->stack = NULL] *** [default.c:2805 in wm_close_stack()]
 (!!!)  *** WARNING [setting window->stack = NULL] *** [default.c:2805 in wm_close_stack()]
 (!!!)  *** WARNING [setting window->stack = NULL] *** [default.c:2805 in wm_close_stack()]
 (!!!)  *** WARNING [setting window->stack = NULL] *** [default.c:2805 in wm_close_stack()]
 (!!!)  *** WARNING [setting window->stack = NULL] *** [default.c:2805 in wm_close_stack()]
 (!!!)  *** WARNING [setting window->stack = NULL] *** [default.c:2805 in wm_close_stack()]
 (!!!)  *** WARNING [setting window->stack = NULL] *** [default.c:2805 in wm_close_stack()]
 (!!!)  *** WARNING [setting window->stack = NULL] *** [default.c:2805 in wm_close_stack()]
 (!!!)  *** WARNING [setting window->stack = NULL] *** [default.c:2805 in wm_close_stack()]
 (!!!)  *** WARNING [setting window->stack = NULL] *** [default.c:2805 in wm_close_stack()]
 (!!!)  *** WARNING [still objects in 'Window Pool'] *** [object.c:231 in fusion_object_pool_destroy()]
 (!!!)  *** WARNING [still objects in 'Surface Pool'] *** [object.c:231 in fusion_object_pool_destroy()]
./launcher.sh: line 15:  3787 Abortado                /usr/local/sbin/ginga --ncl $1

--------------------------------------------------------------------------------------------------------

 O documento é esse:

<?xml version="1.0" encoding="ISO-8859-1"?>
<ncl id="variavel" xmlns="http://www.ncl.org.br/NCL3.0/EDTVProfile"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://www.ncl.org.br/NCL3.0/EDTVProfile
    http://www.ncl.org.br/NCL3.0/profiles/NCL30EDTV.xsd">

<head>
    <connectorBase>
        <importBase alias="meusConectores" documentURI="variavel.conn"/>
    </connectorBase>

    <regionBase>
        <region id="rgTV" left="0" top="0" width="100%" height="100%">
            <region id="rgTelaCheia" zIndex="1"/>
            <region id="rgBotao" zIndex="2" left="10%" bottom="10%" width="111"
                height="39"/>
        </region>
    </regionBase>

    <descriptorBase>
        <descriptor id="dVideoAbertura" region="rgTelaCheia"/>
        <descriptor id="dBotao" region="rgBotao"/>
    </descriptorBase>
</head>

<body>
    <media id="videoAbertura" src="abertura.mpg" descriptor="dVideoAbertura"/>
    <media id="imgPularIntro" src="verdePularIntro.png" descriptor="dBotao"/>
    <media id="variaveisGlobais" type="application/x-ginga-settings">
        <property name="sairPressionado" value="false"/>
    </media>

    <link xconnector="meusConectores#onBeginStart">
        <bind component="videoAbertura" role="onBegin"/>
        <bind component="imgPularIntro" role="start"/>
    </link>
    <link xconnector="meusConectores#onKeySelectionSet">
        <bind component="imgPularIntro" role="onSelection">
            <bindParam name="aTecla" value="GREEN"/>
        </bind>
        <bind component="variaveisGlobais" interface="sairPressionado" role="set">
            <bindParam name="oValor" value="true"/>
        </bind>
    </link>
    <link xconnector="meusConectores#onEndTestStop">
        <bind component="videoAbertura" role="onEnd"/>
        <bind component="variaveisGlobais" interface="sairPressionado" role="test">
            <bindParam name="oValor" value="true"/>
        </bind>
        <bind component="imgPularIntro" role="stop"/>
    </link>

    <port id="pVideoAbertura" component="videoAbertura"/>
</body>
</ncl>

e a base de conectores é essa:

<?xml version="1.0" encoding="ISO-8859-1"?>
<ncl id="conectores" xmlns="http://www.ncl.org.br/NCL3.0/EDTVProfile"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://www.ncl.org.br/NCL3.0/EDTVProfile
    http://www.ncl.org.br/NCL3.0/profiles/NCL30EDTV.xsd">
<head>
    <connectorBase>
        <causalConnector id="onBeginStart">
            <simpleCondition role="onBegin"/>
            <simpleAction role="start"/>
        </causalConnector>

        <causalConnector id="onKeySelectionSet">
            <connectorParam name="aTecla"/>
            <connectorParam name="oValor"/>
            <simpleCondition role="onSelection" key="$aTecla"/>
            <simpleAction role="set" value="oValor"/>
        </causalConnector>

        <causalConnector id="onEndTestStop">
            <connectorParam name="oValor"/>
            <compoundCondition operator="and">
                <simpleCondition role="onEnd"/>
                <assessmentStatement comparator="eq">
                    <atributeAssessment role="test" eventType="attribution"
                        attributeType="nodeProperty"/>
                    <valueAssessment value="$oValor"/>
                </assessmentStatement>
            </compoundCondition>
            <simpleAction role="stop"/>
        </causalConnector>

    </connectorBase>
</head>
</ncl>

 --------------------------------------------------------------------------------------------------------

Quando comento  o trecho

    <link xconnector="meusConectores#onEndTestStop">
        <bind component="videoAbertura" role="onEnd"/>
        <bind component="variaveisGlobais" interface="sairPressionado" role="test">
            <bindParam name="oValor" value="true"/>
        </bind>
        <bind component="imgPularIntro" role="stop"/>
    </link>

o documento é exibido corretamente, mas naturalmente não esconde a imagem.

Alguém tem alguma idéia do que possa estar acontecendo?

Valeu!
Abraços,
Diogo

Autor: Diogo Pedrosa


33 comentários

  • 023e7fb10e824e10a4d4bf300adfb4fa?only path=false&size=50&d=404Diogo Pedrosa(usuário não autenticado)
    8 de Maio de 2009, 19:00

     

    Percebi um erro: falta o $ antes de "oValor" na simpleAction em

            <causalConnector id="onKeySelectionSet">
                <connectorParam name="aTecla"/>
                <connectorParam name="oValor"/>
                <simpleCondition role="onSelection" key="$aTecla"/>
                <simpleAction role="set" value="oValor"/>
            </causalConnector>

    Mas mesmo corrigindo-o, o comportamento não muda.

    • 5df5d8eeb3770422cc9c42a466faee62?only path=false&size=50&d=404Roberto Azevedo(usuário não autenticado)
      8 de Maio de 2009, 23:38

       

      Erro bem sutil!

      o teu código:

      <atributeAssessment attributeType="nodeProperty" eventType="attribution" role="test"/>

      o certo é:

      <attributeAssessment attributeType="nodeProperty" eventType="attribution" role="test"/>

      Estava faltando um "t" no attributeAssessment.

      NCL Eclipse encontrou o erro \o/ por mim!

      • 023e7fb10e824e10a4d4bf300adfb4fa?only path=false&size=50&d=404Diogo Pedrosa(usuário não autenticado)
        9 de Maio de 2009, 12:17

         

        Muito Obrigado, Roberto!

        Eu estava usando um validador de XML genérico, o que claramente não é suficiente. Passarei a usar o NCL Eclipse daqui por diante!

        Abraços,
        Diogo

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