📄 play.jsp
字号:
<%@ page contentType="text/html;charset=ISO-8859-1" pageEncoding="ISO-8859-1"%>
<%@page import="org.homeplayer.util.*"%>
<%@page import="org.homeplayer.data.*"%>
<%@page import="java.io.*"%>
<%@page import="java.util.*"%>
<%@page import="org.homeplayer.util.pifreeplayer.PFPControl"%><jsp:useBean id="hppc" class="org.homeplayer.web.HPPageContext" scope="request">
<jsp:setProperty name="hppc" property="temporaryPage" value="true"/>
<jsp:setProperty name="hppc" property="request" value="<%=request%>"/>
</jsp:useBean>
<%
final VLCControl vlc = VLCControl.shareInstance().getUnsynchronizedInstance();
String accessProtocol = HPConf.getString(HPConf.REMOTE_APROTOCOL);
if (! hppc.isFreeBox()) {
if(accessProtocol.equals( "rtp" ))
{
vlc.setOutAddress(request.getRemoteAddr());
} else {
vlc.setOutAddress(request.getLocalAddr()) ;
}
}
boolean slideshow = HPConf.getBool(HPConf.SLIDESHOW_MUSIC_ACTIVATED);
String next = "/play.jsp" ;
boolean rec = HPConf.getBool(HPConf.FREE_NAV_RECUSRIVE);
boolean rand = HPConf.getBool(HPConf.FREE_NAV_RANDOM);
if( request.getParameter( "File" ) != null ) {
String file = request.getParameter("File");
FreeNavService service = new FreeNavService() ;
final MediaItem item = service.makeMediaItem( file ) ;
if (item instanceof Playlist) {
Playlist playlist = (Playlist) item;
if (playlist.containsVLCOptions()) {
vlc.playMedia( item ) ;
} else {
List items = playlist.getItems();
List vlcPlayList = new ArrayList(items.size());
boolean audioPlaylist = true;
for(Iterator it = items.iterator(); it.hasNext();) {
Playlist.Item plItem = (Playlist.Item) it.next();
MediaItem mediaItem = service.makeMediaItem(plItem.getPath());
mediaItem.setTitle(plItem.getTitle());
vlcPlayList.add(mediaItem);
if (! (mediaItem instanceof Music)) {
audioPlaylist = false;
}
}
if (slideshow && audioPlaylist) {
next = !slideshow ? "/musicslideshow.jsp": "/screensaver.jsp";
}
if (rand) {
Collections.shuffle(vlcPlayList);
}
vlc.playMedias(vlcPlayList) ;
}
} else {
if( item.getPlayPath().toLowerCase().endsWith(".iso") ) {
vlc.playDVD( item.getPlayPath(), ! HPConf.getBool(HPConf.SERVICES_STEREO_MODE),-1,HPConf.getString(HPConf.DVD_AUDIO),HPConf.getString(HPConf.DVD_SPU)) ;
} else {
if( PFPControl.acceptMedia(item) ) {
PFPControl.shareInstance().playMedia(item) ;
} else {
vlc.playMedia( item ) ;
}
if ((item instanceof Music)) {
next = !slideshow ? "/musicslideshow.jsp": "/screensaver.jsp";
}
}
}
if (hppc.isFreeBox()) {
if (! BookmarkManager.getInstance().getBookmarks(new File(file)).isEmpty()) {
HPSession.set("PLAY_URL", next);
next="/info.jsp?bookmarks=true&disapear=8";
} else {
HPSession.set("PLAY_URL", next);
}
} else {
next="/playweb.jsp";
HPSession.set("PLAY_URL", next);
}
hppc.setRefresh("/medialoading.jsp?next=" + WebUtil.urlEncode(next));
} else {
// PLAY DIRECTORY
String folder = request.getParameter("folder") ;
String type = request.getParameter("type");
boolean music = type.equals("AUDIO");
boolean video = type.equals("VIDEO");
boolean image = type.equals("PHOTO");
boolean dvd = type.equals("DVD");
if (dvd) {
vlc.playDVD(folder, ! HPConf.getBool(HPConf.SERVICES_STEREO_MODE), -1, HPConf.getString(HPConf.DVD_AUDIO),HPConf.getString(HPConf.DVD_SPU)) ;
if (! hppc.isFreeBox()) {
next="/playweb.jsp";
}
HPSession.set("PLAY_URL", next);
hppc.setRefresh("/medialoading.jsp?next=" + WebUtil.urlEncode(next));
} else {
FreeNavService service = new FreeNavService() ;
List files;
if (folder==null) {
files = new ArrayList();
} else if (!music && !video && !image) {
files = service.getMediaFile(new File(folder), rec, true, true, true, false, null ) ;
} else {
files = service.getMediaFile(new File(folder), rec, music, video, image, false, null ) ;
}
if (files.isEmpty()) {
hppc.setRefresh(hppc.getUpUrl());
} else {
final List playlist = new ArrayList() ;
music = false;
video = false;
image = false;
for( int i=0 ; i<files.size() ; i++ ) {
Object obj = files.get(i);
File file;
if (obj instanceof Shortcut) {
file = ((Shortcut) obj).getFile();
} else {
file = (File) obj;
}
MediaItem item = service.makeMediaItem(file.getAbsolutePath()) ;
playlist.add( item ) ;
if (! music) {
music = item instanceof Music;
}
if (! video) {
video = item instanceof Film;
}
if (! image) {
image = item instanceof Photo;
}
}
if (rand) {
Collections.shuffle(playlist);
}
vlc.playMedias( playlist) ;
if (! hppc.isFreeBox()) {
next="/playweb.jsp";
} else if ( music && !video && !image ) {
next = !slideshow ? "/musicslideshow.jsp": "/screensaver.jsp";
}
HPSession.set("PLAY_URL", next);
hppc.setRefresh("/medialoading.jsp?next=" + WebUtil.urlEncode(next));
}
}
}
%>
<jsp:include page="/WEB-INF/jsp/empty.jsp" />
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -