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
<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.
Diogo