mirror of
https://github.com/Ernous/TorrServerJellyfin.git
synced 2025-12-19 21:46:11 +05:00
Merge branch 'master' into old-engine
This commit is contained in:
@@ -28,7 +28,7 @@ func Start() {
|
|||||||
var err error
|
var err error
|
||||||
ifaces, err := net.Interfaces()
|
ifaces, err := net.Interfaces()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
logger.Print(err)
|
logger.Levelf(log.Error, "%v", err)
|
||||||
os.Exit(1)
|
os.Exit(1)
|
||||||
}
|
}
|
||||||
for _, i := range ifaces {
|
for _, i := range ifaces {
|
||||||
@@ -43,7 +43,7 @@ func Start() {
|
|||||||
HTTPConn: func() net.Listener {
|
HTTPConn: func() net.Listener {
|
||||||
port := 9080
|
port := 9080
|
||||||
for {
|
for {
|
||||||
logger.Printf("Check dlna port %d", port)
|
logger.Levelf(log.Info, "Check dlna port %d", port)
|
||||||
m, err := net.Listen("tcp", ":"+strconv.Itoa(port))
|
m, err := net.Listen("tcp", ":"+strconv.Itoa(port))
|
||||||
if m != nil {
|
if m != nil {
|
||||||
m.Close()
|
m.Close()
|
||||||
@@ -53,10 +53,10 @@ func Start() {
|
|||||||
}
|
}
|
||||||
port++
|
port++
|
||||||
}
|
}
|
||||||
logger.Printf("Set dlna port %d", port)
|
logger.Levelf(log.Info, "Set dlna port %d", port)
|
||||||
conn, err := net.Listen("tcp", ":"+strconv.Itoa(port))
|
conn, err := net.Listen("tcp", ":"+strconv.Itoa(port))
|
||||||
if err != nil {
|
if err != nil {
|
||||||
logger.Print(err)
|
logger.Levelf(log.Error, "%v", err)
|
||||||
os.Exit(1)
|
os.Exit(1)
|
||||||
}
|
}
|
||||||
return conn
|
return conn
|
||||||
@@ -96,12 +96,12 @@ func Start() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if err := dmsServer.Init(); err != nil {
|
if err := dmsServer.Init(); err != nil {
|
||||||
logger.Printf("error initing dms server: %v", err)
|
logger.Levelf(log.Error, "error initing dms server: %v", err)
|
||||||
os.Exit(1)
|
os.Exit(1)
|
||||||
}
|
}
|
||||||
go func() {
|
go func() {
|
||||||
if err := dmsServer.Run(); err != nil {
|
if err := dmsServer.Run(); err != nil {
|
||||||
logger.Print(err)
|
logger.Levelf(log.Error, "%v", err)
|
||||||
os.Exit(1)
|
os.Exit(1)
|
||||||
}
|
}
|
||||||
}()
|
}()
|
||||||
|
|||||||
@@ -48,9 +48,15 @@ func Init(path, webpath string) {
|
|||||||
logFile = ff
|
logFile = ff
|
||||||
os.Stdout = ff
|
os.Stdout = ff
|
||||||
os.Stderr = ff
|
os.Stderr = ff
|
||||||
t := time.Now().Format("2006-01-02T15:04:05-0700")
|
var timeFmt string
|
||||||
|
var ok bool
|
||||||
|
timeFmt, ok = os.LookupEnv("GO_LOG_TIME_FMT")
|
||||||
|
if !ok {
|
||||||
|
timeFmt = "2006-01-02T15:04:05-0700"
|
||||||
|
}
|
||||||
|
t := time.Now().Format(timeFmt)
|
||||||
log.SetFlags(log.Lmsgprefix)
|
log.SetFlags(log.Lmsgprefix)
|
||||||
log.SetPrefix(t + " SRV ")
|
log.SetPrefix(t + " TSM ")
|
||||||
log.SetOutput(ff)
|
log.SetOutput(ff)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
package torr
|
package torr
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
"encoding/hex"
|
||||||
"errors"
|
"errors"
|
||||||
"fmt"
|
"fmt"
|
||||||
"log"
|
"log"
|
||||||
@@ -61,7 +62,7 @@ func (t *Torrent) Stream(fileID int, req *http.Request, resp http.ResponseWriter
|
|||||||
sets.SetViewed(&sets.Viewed{t.Hash().HexString(), fileID})
|
sets.SetViewed(&sets.Viewed{t.Hash().HexString(), fileID})
|
||||||
|
|
||||||
resp.Header().Set("Connection", "close")
|
resp.Header().Set("Connection", "close")
|
||||||
resp.Header().Set("ETag", httptoo.EncodeQuotedString(fmt.Sprintf("%s/%s", t.Hash().HexString(), file.Path())))
|
resp.Header().Set("ETag", httptoo.EncodeQuotedString(fmt.Sprintf("%s/%s", t.Hash().HexString(), hex.EncodeToString([]byte(file.Path())))))
|
||||||
// DLNA headers
|
// DLNA headers
|
||||||
resp.Header().Set("transferMode.dlna.org", "Streaming")
|
resp.Header().Set("transferMode.dlna.org", "Streaming")
|
||||||
mime, err := mt.MimeTypeByPath(file.Path())
|
mime, err := mt.MimeTypeByPath(file.Path())
|
||||||
|
|||||||
@@ -2,6 +2,7 @@ package api
|
|||||||
|
|
||||||
import (
|
import (
|
||||||
"bytes"
|
"bytes"
|
||||||
|
"encoding/hex"
|
||||||
"fmt"
|
"fmt"
|
||||||
"net/http"
|
"net/http"
|
||||||
"net/url"
|
"net/url"
|
||||||
@@ -72,7 +73,7 @@ func sendM3U(c *gin.Context, name, hash string, m3u string) {
|
|||||||
c.Header("Content-Type", "audio/x-mpegurl")
|
c.Header("Content-Type", "audio/x-mpegurl")
|
||||||
c.Header("Connection", "close")
|
c.Header("Connection", "close")
|
||||||
if hash != "" {
|
if hash != "" {
|
||||||
c.Header("ETag", httptoo.EncodeQuotedString(fmt.Sprintf("%s/%s", hash, name)))
|
c.Header("ETag", httptoo.EncodeQuotedString(fmt.Sprintf("%s/%s", hash, hex.EncodeToString([]byte(name)))))
|
||||||
}
|
}
|
||||||
if name == "" {
|
if name == "" {
|
||||||
name = "playlist.m3u"
|
name = "playlist.m3u"
|
||||||
|
|||||||
Reference in New Issue
Block a user