将youtube播放器嵌入GWT(BST播放器API)

将youtube播放器嵌入GWT(BST播放器API),gwt,youtube,Gwt,Youtube,我正在开发一个GWT应用程序。我需要在我的应用程序中嵌入YouTube视频。 我尝试过BST播放器API,但在播放器上播放视频时没有成功。 我下载了BSTPlayer.jar并将其添加到我的构建路径中,然后在gwtap.gwt.xml中继承了以下jar: **inherits name ='com.bramosystems.oss.player.core.Core'** **inherits name ='com.bramosystems.oss.player.youtube.YouTube'*

我正在开发一个GWT应用程序。我需要在我的应用程序中嵌入YouTube视频。
我尝试过BST播放器API,但在播放器上播放视频时没有成功。
我下载了BST
Player.jar
并将其添加到我的构建路径中,然后在
gwtap.gwt.xml
中继承了以下jar:

**inherits name ='com.bramosystems.oss.player.core.Core'**
**inherits name ='com.bramosystems.oss.player.youtube.YouTube'**
然后我尝试了BST页面上给出的示例:

simplePanel=新的simplePanel();
添加(simplePanel);
simplePanel.setSize(“,”);
试一试{
//创建播放机,指定媒体的URL
播放器=新的无铬播放器(“http://www.youtube.com/watch?v=O3CZFfyed3M“,”80%“,”350px”);
CustomPlayerControl cpc=新的CustomPlayerControl(玩家);
FlowPanel fp=新的FlowPanel();
fp.add(播放器);
fp.add(cpc);
simplePanel.setWidget(fp);//将播放器和自定义控件添加到面板中。
}捕获(插件反转异常e){
//所需的Flash插件版本不可用,
//提醒用户可能提供插件下载页面的链接。
setWidget(新的HTML(“…一些好消息告诉“+”用户先下载插件…);
}catch(pluginnotfounde异常){
//未找到所需的Flash插件,显示友好通知。
setWidget(PlayerUtil.getMissingPluginNotice(e.getPlugin());
}

我可以看到带有YouTube播放器的面板,但我看不到视频加载或播放。我尝试了
player.playMedia()
,但没有任何帮助。关于如何继续并使视频工作,您有什么想法吗?

您可能需要传递以下URL:

http://www.youtube.com/v/O3CZFfyed3M

您可能需要传递此URL:

http://www.youtube.com/v/O3CZFfyed3M

我找到了一种将youtube视频嵌入GWT的方法,而不需要使用任何外部库。集成级别非常简单,因此无法进行任何高级使用。这里是UIBinder模板及其对应类的代码片段:

使用和HTMLPanel放置如下对象元素:

<g:HTMLPanel>

       <object ui:field="videoElement"
               type="application/x-shockwave-flash"
               width="640" height="480" data="">
       </object>

</g:HTMLPanel>

@UIField
ObjectElement videoElement;

[...]

public void displayVideo(String videoId) {
       String videoUrl = "http://www.youtube.com/v/".concat(videoId);
       videoElement.setData(videoUrl);  //change data attribute of object element
       String innerHtml = "<param name=\"movie\" value=\""+ videoUrl +"\" />";
       //add param element, of course yo can add as many param elements as needed to customize
       videoElement.setInnerHTML(innerHtml);
}

@尤菲尔德
ObjectElement视频元素;
[...]
public void displayVideo(字符串videoId){
字符串videoUrl=”http://www.youtube.com/v/“.concat(videoId);
videoElement.setData(videoUrl);//更改对象元素的数据属性
字符串innerHtml=“”;
//添加param元素,当然你可以根据需要添加任意多的param元素来定制
videoElement.setInnerHTML(innerHtml);
}
为了让它工作,我需要把这个视频视图放在一个面板内,每当我想查看/更新视频时,清除面板并再次添加视频视图


希望这有帮助

我找到了一种方法,不用使用任何外部库就可以将youtube视频嵌入GWT版本中。集成级别非常简单,因此无法进行任何高级使用。这里是UIBinder模板及其对应类的代码片段:

使用和HTMLPanel放置如下对象元素:

<g:HTMLPanel>

       <object ui:field="videoElement"
               type="application/x-shockwave-flash"
               width="640" height="480" data="">
       </object>

</g:HTMLPanel>

@UIField
ObjectElement videoElement;

[...]

public void displayVideo(String videoId) {
       String videoUrl = "http://www.youtube.com/v/".concat(videoId);
       videoElement.setData(videoUrl);  //change data attribute of object element
       String innerHtml = "<param name=\"movie\" value=\""+ videoUrl +"\" />";
       //add param element, of course yo can add as many param elements as needed to customize
       videoElement.setInnerHTML(innerHtml);
}

@尤菲尔德
ObjectElement视频元素;
[...]
public void displayVideo(字符串videoId){
字符串videoUrl=”http://www.youtube.com/v/“.concat(videoId);
videoElement.setData(videoUrl);//更改对象元素的数据属性
字符串innerHtml=“”;
//添加param元素,当然你可以根据需要添加任意多的param元素来定制
videoElement.setInnerHTML(innerHtml);
}
为了让它工作,我需要把这个视频视图放在一个面板内,每当我想查看/更新视频时,清除面板并再次添加视频视图


希望这有帮助

我在YouTubes Iframe api库的基础上创建了这个GWT包装器。这使得在gwt检查中使用YouTube api变得更容易。我在YouTube Iframe api库的基础上创建了这个gwt包装。这使得在gwt check中使用YouTube api变得更容易这是非常有帮助的,但是我在视频周围都有黑线,我可以用任何方式删除它吗?我只使用了简单的帧-效果很好,请参考这是非常有帮助的,但在视频周围都有黑线,有什么办法可以把它去掉吗?我只用了一个简单的框架,效果很好,请参考