📄 action.jsp
字号:
<%@page contentType="text/html;charset=UTF-8" pageEncoding="UTF-8"%>
<%@page import="org.homeplayer.util.*"%>
<%@page import="org.homeplayer.data.*"%>
<%@page import="org.homeplayer.recorder.*"%>
<%@page import="java.io.*"%>
<jsp:useBean id="hppc" class="org.homeplayer.web.HPPageContext" scope="request">
<jsp:setProperty name="hppc" property="request" value="<%=request%>"/>
<jsp:setProperty name="hppc" property="temporaryPage" value="true"/>
</jsp:useBean>
<%
VLCControl vlc = VLCControl.shareInstance();
String qr = request.getQueryString();
int idx = qr.indexOf("&control");
qr = qr.substring(idx + 1);
//vlc.action( qr ) ;
VLCInfo info = vlc.getInfo();
MediaItem media = info.getCurrentMedia();
String next = request.getParameter("next");
VLCRecorder recorder = VLCRecorder.shareInstance() ;
boolean cleanScreen = false ;
if( qr.equals("control=rec") && recorder.isTimeShiftMode()==false ) {
if( recorder.isRecording() == false ) {
String recpath = new File(IOUtil.getRecordPath(), "timeshift"+VLCRecorder.getFileExtension()).getAbsolutePath();
recorder.startRecord( media, recpath ) ;
} else {
recorder.stopRecord() ;
}
} else {
if( media instanceof FreeBoxTV ) {
if( qr.equals("control=pause") ) {
if( recorder.isRecording() == false ) {
String recpath = new File(IOUtil.getRecordPath(), "timeshift"+VLCRecorder.getFileExtension()).getAbsolutePath();
recorder.startRecord( media, recpath ) ;
recorder.setTimeShiftMode( true ) ;
// on attend que le fichier de timeshift exsist.
int c=0 ;
File recFile = new File( recpath ) ;
while( c<10 ) {
if( recFile.exists() ) break ;
Thread.sleep(100) ;
c++ ;
}
((FreeBoxTV)media).setTempoFile( recpath ) ;
vlc.playMedia( media ) ;
next = "/medialoading.jsp?reloadTimeout=2&next=" + WebUtil.urlEncode("/action.jsp?next=" + WebUtil.urlEncode("info.jsp?link=A") + "&control=pause");
} else {
vlc.action( qr ) ;
}
} else if( qr.equals("control=stop") ) {
vlc.action( qr ) ;
if( ((FreeBoxTV)media).getTempoFile() != null ) {
recorder.stopRecord() ;
((FreeBoxTV)media).setTempoFile( null ) ;
vlc.kill(); // kill the reading vlc otherwise, it do not free the lock on the timeshift.mpeg file
}
cleanScreen = true ;
} else {
vlc.action( qr ) ;
}
} else {
if( qr.equals("control=stop") ) {
cleanScreen = true ;
}
vlc.action( qr ) ;
}
}
if (next == null) {
next = "info.jsp";
}
if(next.startsWith("http://")){
if(request.getParameter("playlist") !=null){
/*if(media.getTypeMedia().equals("MUSIC")) {
response.setContentType("audio/mpeg");
}else{*/
response.setContentType("video/mpeg");
//}
}
response.sendRedirect(next);
}
if( cleanScreen==true ) {
HPSession.set("RELOADBG",true) ;
}
%>
<html>
<head>
<%=WebUtil.refreshTag(next,0) %>
</head>
<body background="ts://127.0.0.1">
</body>
</html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -