Browse Source

- enable seek function when direct streaming over DLNA

Marius Luca 3 years ago
parent
commit
5b5ae1ef52
1 changed files with 11 additions and 4 deletions
  1. 11 4
      MediaBrowser.Model/Dlna/ContentFeatureBuilder.cs

+ 11 - 4
MediaBrowser.Model/Dlna/ContentFeatureBuilder.cs

@@ -151,10 +151,12 @@ namespace MediaBrowser.Model.Dlna
                             DlnaFlags.InteractiveTransferMode |
                             DlnaFlags.DlnaV15;
 
-            // if (isDirectStream)
-            // {
-            //     flagValue = flagValue | DlnaFlags.ByteBasedSeek;
-            // }
+            if (isDirectStream)
+            {
+                flagValue |= DlnaFlags.ByteBasedSeek;
+            }
+
+            // Time based seek is curently disabled when streaming. On LG CX3 adding DlnaFlags.TimeBasedSeek and orgPn causes the DLNA playback to fail (format not supported). Further investigations are needed before enabling the remaining code paths.
             //  else if (runtimeTicks.HasValue)
             // {
             //     flagValue = flagValue | DlnaFlags.TimeBasedSeek;
@@ -209,6 +211,11 @@ namespace MediaBrowser.Model.Dlna
                 {
                     contentFeatureList.Add(orgOp.TrimStart(';') + orgCi + dlnaflags);
                 }
+                else if (isDirectStream)
+                {
+                    // orgOp should be added all the time once the time based seek is resolved for transcoded streams
+                    contentFeatureList.Add("DLNA.ORG_PN=" + orgPn + orgOp + orgCi + dlnaflags);
+                }
                 else
                 {
                     contentFeatureList.Add("DLNA.ORG_PN=" + orgPn + orgCi + dlnaflags);