diff --git a/server/src/main/java/ctbrec/recorder/server/HlsServlet.java b/server/src/main/java/ctbrec/recorder/server/HlsServlet.java index 43c61233..d2837413 100644 --- a/server/src/main/java/ctbrec/recorder/server/HlsServlet.java +++ b/server/src/main/java/ctbrec/recorder/server/HlsServlet.java @@ -50,7 +50,8 @@ public class HlsServlet extends AbstractCtbrecServlet { boolean idOnly = request.indexOf('/') < 0; if (idOnly) { requestFile = rec.get().getPostProcessedFile(); - requestedFilePath = requestFile.getCanonicalPath(); + serveSegment(req, resp, requestFile); + return; } else { requestedFilePath = request.substring(request.indexOf('/')); requestFile = new File(requestedFilePath); @@ -73,7 +74,6 @@ public class HlsServlet extends AbstractCtbrecServlet { } } catch (InvalidKeyException | NoSuchAlgorithmException | IllegalStateException e1) { writeResponse(resp, SC_UNAUTHORIZED, "{\"status\": \"error\", \"msg\": \"Authentication failed\"}"); - return; } } @@ -99,7 +99,6 @@ public class HlsServlet extends AbstractCtbrecServlet { private void serveSegment(HttpServletRequest req, HttpServletResponse resp, File requestedFile) throws IOException { MimetypesFileTypeMap map = new MimetypesFileTypeMap(); - //String mimetype = requestedFile.getName().endsWith(".mp4") ? "video/mp4" : "application/octet-stream"; String mimetype = map.getContentType(requestedFile); LOG.debug("Serving {} as {}", requestedFile.getName(), mimetype); serveFile(req, resp, requestedFile, mimetype);