[rygel] core: Support 'background' mode for all streams



commit 9aaa399c8cf56118320319e0723fdfa8f9a65c90
Author: Zeeshan Ali (Khattak) <zeeshanak gnome org>
Date:   Mon Apr 11 19:13:33 2011 +0300

    core: Support 'background' mode for all streams
    
    According to DLNA requirement 7.3.50.1, we must support background
    transfer mode for all streams for which we support HTTP connection
    stalling.

 src/rygel/rygel-http-get.vala   |    1 -
 src/rygel/rygel-media-item.vala |    7 ++-----
 src/rygel/rygel-transcoder.vala |    1 +
 3 files changed, 3 insertions(+), 6 deletions(-)
---
diff --git a/src/rygel/rygel-http-get.vala b/src/rygel/rygel-http-get.vala
index e22612d..49e4978 100644
--- a/src/rygel/rygel-http-get.vala
+++ b/src/rygel/rygel-http-get.vala
@@ -160,7 +160,6 @@ internal class Rygel.HTTPGet : HTTPRequest {
 
             break;
         case "Interactive":
-        case "Background":
             correct =  this.handler is HTTPIdentityHandler &&
                        (!this.item.is_live_stream () ||
                         this.subtitle != null ||
diff --git a/src/rygel/rygel-media-item.vala b/src/rygel/rygel-media-item.vala
index d286362..56b8ab1 100644
--- a/src/rygel/rygel-media-item.vala
+++ b/src/rygel/rygel-media-item.vala
@@ -234,7 +234,8 @@ public abstract class Rygel.MediaItem : MediaObject {
         protocol_info.dlna_profile = this.dlna_profile;
         protocol_info.protocol = protocol;
         protocol_info.dlna_flags = DLNAFlags.DLNA_V15 |
-                                   DLNAFlags.CONNECTION_STALL;
+                                   DLNAFlags.CONNECTION_STALL |
+                                   DLNAFlags.BACKGROUND_TRANSFER_MODE;
 
         if (this.size > 0) {
             protocol_info.dlna_operation = DLNAOperation.RANGE;
@@ -244,10 +245,6 @@ public abstract class Rygel.MediaItem : MediaObject {
             protocol_info.dlna_flags |= DLNAFlags.STREAMING_TRANSFER_MODE;
         }
 
-        if (!this.is_live_stream ()) {
-            protocol_info.dlna_flags |= DLNAFlags.BACKGROUND_TRANSFER_MODE;
-        }
-
         return protocol_info;
     }
 
diff --git a/src/rygel/rygel-transcoder.vala b/src/rygel/rygel-transcoder.vala
index 249944f..0b2df55 100644
--- a/src/rygel/rygel-transcoder.vala
+++ b/src/rygel/rygel-transcoder.vala
@@ -103,6 +103,7 @@ internal abstract class Rygel.Transcoder : GLib.Object {
         protocol_info.dlna_profile = this.dlna_profile;
         protocol_info.dlna_conversion = DLNAConversion.TRANSCODED;
         protocol_info.dlna_flags = DLNAFlags.STREAMING_TRANSFER_MODE |
+                                   DLNAFlags.BACKGROUND_TRANSFER_MODE |
                                    DLNAFlags.CONNECTION_STALL |
                                    DLNAFlags.DLNA_V15;
         if (item is AudioItem && (item as AudioItem).duration > 0) {



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]