2013-09-30 39 views
0

我正在使用Eclipse Indigo和primefaces JSF 我有两个不同的流视频来自文件。为了获得使用:如何使用p:mediatime和quicktime加载两个连续的视频?

@ManagedBean 
@SessionScoped 
public class pruebaControlador{ 

private StreamedContent myVideo; // + setter & Getter 
private StreamedContent myVideo2; // + setter & Getter 


public void videoInputStream(){ 
    try{ 
    inputStream = new FileInputStream("c://folder//video1.mp4"); 
    myVideo = new DefaultStreamedContent(inputStream,"video/quicktime"); 

    inputStream2 = new FileInputStream("c://folder//video2.mp4"); 
    myVideo2 = new DefaultStreamedContent(inputStream2,"video/quicktime"); 
    }Catch(Exception e){ 
     e.printStackTrace(); 
    } 
} 
} 

到目前为止好...

我的JSF包含以下内容:

<ui:define name="contentCenter"> 
<h:form id="formCenter" enctype="multipart/form-data" 
prependId="false"> 

<h:panelGrid columns="1" id="panelVideo"> 
<p:media id="video" value="#{pruebaControlador.myVideo}" 
width="800" height="600" player="quicktime"> 

<f:param name="scale" value="tofit" /> 
<f:param name="autoPlay" value="true" /> 
<f:param name="controller" value="true" /> 
<f:param name="loop" value="false" /> 
<f:param name="volume" value="50" /> 
<f:param name ="qtnext1" value="<#{pruebaControlador.myVideo2}> T<myself>" /> 

</p:media> 
</h:panelGrid> 
</h:form> 
</ui:define> 

但不打开视频2,显然没有找到该网址这是存储视频流2

+0

抱歉,错误,现在。 – wgbeta

+0

显然,来自Bean的变量#{pruebaControlador.myVideo}具有完整路径的url。 Qtnext函数只需要文件名。所以问题是只获取文件名。你可以得到在编译时生成的StreamContent的名字吗? – wgbeta

回答

0

我不认为这是可能的。你可能会做的是设置第二个<p:media.../>与呈现的属性,并说第一个视频完成后,然后设置第一个<p:media rendered="false"/>和第二个<p:media rendered:"true"/>与javascript的某种方式。如果你想了解我的意思的更多细节,我可以尝试为你提供更多细节。

相关问题