rygel r664 - trunk/src/rygel



Author: zeeshanak
Date: Sun Mar 15 19:01:33 2009
New Revision: 664
URL: http://svn.gnome.org/viewvc/rygel?rev=664&view=rev

Log:
Use TranscodeSrc when request is for transcode uri.

Modified:
   trunk/src/rygel/rygel-http-request.vala

Modified: trunk/src/rygel/rygel-http-request.vala
==============================================================================
--- trunk/src/rygel/rygel-http-request.vala	(original)
+++ trunk/src/rygel/rygel-http-request.vala	Sun Mar 15 19:01:33 2009
@@ -46,6 +46,7 @@
     private HTTPResponse response;
 
     private string item_id;
+    private string transcode_target;
     private MediaItem item;
     private Seek seek;
 
@@ -73,8 +74,9 @@
             return;
         }
 
-        if (query != null) {
+        if (this.query != null) {
             this.item_id = this.query.lookup ("itemid");
+            this.transcode_target = this.query.lookup ("transcode");
         }
 
         if (this.item_id == null) {
@@ -138,7 +140,7 @@
             uri = this.item.uris.get (0);
         }
 
-        if (this.item.size > 0) {
+        if (this.item.size > 0 || this.transcode_target == null) {
             this.handle_interactive_item (uri);
         } else {
             this.handle_streaming_item (uri);
@@ -151,11 +153,11 @@
                                               this.item.mime_type);
         }
 
-        if (this.item.size >= 0) {
+        if (this.item.size >= 0 && this.transcode_target == null) {
             this.msg.response_headers.set_content_length (this.item.size);
         }
 
-        if (this.item.size > 0) {
+        if (this.item.size > 0 && this.transcode_target == null) {
             int64 first_byte;
             int64 last_byte;
 
@@ -198,6 +200,10 @@
         src.tcp_timeout = (int64) 60000000;
 
         try {
+            if (this.transcode_target != null) {
+                src = this.get_transoding_src (src, this.transcode_target);
+            }
+
             // Then start the gst stream
             this.stream_from_gst_source (src);
         } catch (Error error) {



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