Merge branch 'dev' into 'master'

Miroku+ : re-engage previous mp4 file serving

See merge request Shinobi-Systems/Shinobi!233
merge-requests/256/head
Moe 2020-09-04 19:43:55 +00:00
commit 4bc2f5ef3f
2 changed files with 20 additions and 19 deletions

View File

@ -32,6 +32,7 @@ docker run -d --name='Shinobi' -p '8080:8080/tcp' -v "/dev/shm/Shinobi/streams":
docker run -d --name='shinobi-tensorflow' -e PLUGIN_HOST='10.1.103.113' -e PLUGIN_PORT='8080' -v "$HOME/Shinobi/docker-plugins/tensorflow":'/config':'rw' shinobisystems/shinobi-tensorflow:latest
```
More Information about this plugin :
- CPU : https://gitlab.com/Shinobi-Systems/docker-plugin-tensorflow.js
- GPU (NVIDIA CUDA) : https://gitlab.com/Shinobi-Systems/docker-plugin-tensorflow.js/-/tree/gpu

View File

@ -447,28 +447,28 @@ module.exports = function(s,config,lang){
var ext = filePath.split('.')
ext = ext[ext.length - 1]
var total = fs.statSync(filePath).size;
// if (req.headers['range']) {
// try{
// var range = req.headers.range;
// var parts = range.replace(/bytes=/, "").split("-");
// var partialstart = parts[0];
// var partialend = parts[1];
// var start = parseInt(partialstart, 10);
// var end = partialend ? parseInt(partialend, 10) : total-1;
// var chunksize = (end-start)+1;
// var file = fs.createReadStream(filePath, {start: start, end: end});
// req.headerWrite={ 'Content-Range': 'bytes ' + start + '-' + end + '/' + total, 'Accept-Ranges': 'bytes', 'Content-Length': chunksize, 'Content-Type': 'video/'+ext }
// req.writeCode=206
// }catch(err){
// req.headerWrite={ 'Content-Length': total, 'Content-Type': 'video/'+ext};
// var file = fs.createReadStream(filePath)
// req.writeCode=200
// }
// } else {
if (req.headers['range']) {
try{
var range = req.headers.range;
var parts = range.replace(/bytes=/, "").split("-");
var partialstart = parts[0];
var partialend = parts[1];
var start = parseInt(partialstart, 10);
var end = partialend ? parseInt(partialend, 10) : total-1;
var chunksize = (end-start)+1;
var file = fs.createReadStream(filePath, {start: start, end: end});
req.headerWrite={ 'Content-Range': 'bytes ' + start + '-' + end + '/' + total, 'Accept-Ranges': 'bytes', 'Content-Length': chunksize, 'Content-Type': 'video/'+ext }
req.writeCode=206
}catch(err){
req.headerWrite={ 'Content-Length': total, 'Content-Type': 'video/'+ext};
var file = fs.createReadStream(filePath)
req.writeCode=200
}
} else {
req.headerWrite={ 'Content-Length': total, 'Content-Type': 'video/'+ext};
var file = fs.createReadStream(filePath)
req.writeCode=200
// }
}
if(req.query.downloadName){
req.headerWrite['content-disposition']='attachment; filename="'+req.query.downloadName+'"';
}