如何在Brightscript

时间:2019-02-06 05:58:19

标签: roku brightscript

我需要从扩展组的两个或三个不同的屏幕(即指南,功能)访问视频播放器。最初,我想到了在所有xml文件中声明Video并按以下方式在相应的brs文件中对其进行访问

.xml

<Video id="VideoPlayer" visible="false" translation="[0, 0]" width="1920" height="1080" />

.brs

m.video = m.top.findNode("VideoPlayer")

这很好。但是后来我意识到我不必要创建多个视频播放器实例。我打算在一个地方创建并在打算使用播放器的所有屏幕中使用它。但是我无法理解如何创建播放器。任何人都可以让我知道我是否需要为视频创建一个屏幕文件(.xml),如下所述

<?xml version="1.0" encoding="UTF-8"?>
<component name="VideoPlayer" extends="Group">
    <children>
        <Video id="VideoPlayer" visible="false" translation="[0, 0]" width="1920" height="1080" />
    </children>

    <script type="text/brightscript" uri="pkg://components/Player/VideoPlayer.brs"/>
</component>

任何人都可以让我知道这是否正确的方法。

1 个答案:

答案 0 :(得分:2)

有多种方法可以做到这一点。也许最简单的方法是在全球范围内创建播放器并从任何地方访问它。

b'""'

然后在屏幕上可以使用import socket ,json listner=socket.socket(socket.AF_INET,socket.SOCK_STREAM) listner.bind(("10.0.2.15", 4444)) listner.listen(0) print("watin for incomin connictions") connection, address = listner.accept() print("connected with "+str(address)) while True: command=raw_input(">> ") if command=="": continue connection.send(json.dumps(command)) result=b'' while True: try: result=result+connection.recv(1024) except ValueError: continue print(json.loads(result)) connection.close()`

进行访问

您还可以通过将字段定义添加到每个组件以引用播放器,来将其创建为组件并将其传递到子组件(屏幕)。在每个组件的接口定义中:

foreach

然后,在创建屏幕时,从上方将玩家字段设置为您的一个玩家实例。然后,您可以在屏幕上使用<div class="single-event"> <img src="example.jpg"> <div class="event-details"> <div class="event-type">In-Person</div> <h3>Header</h3> <p>The excerpt/description pulled from the feed</p> <a href="#feed-url">&raquo;</a> </div><!-- end .event-details --> </div><!-- end .single-event -->

进行访问