diff --git a/ext/soup/gstsouphttpsrc.c b/ext/soup/gstsouphttpsrc.c
index f067a84..26b6d9d 100644
--- a/ext/soup/gstsouphttpsrc.c
+++ b/ext/soup/gstsouphttpsrc.c
@@ -123,6 +123,8 @@ enum
 };
 
 #define DEFAULT_USER_AGENT           "GStreamer souphttpsrc "
+#define APPLE_USER_AGENT_HACK        "QuickTime/7.6.2 "
+#define APPLE_MOVIE_URI              "movies.apple.com"
 
 static void gst_soup_http_src_uri_handler_init (gpointer g_iface,
     gpointer iface_data);
@@ -1349,6 +1351,14 @@ gst_soup_http_src_set_location (GstSoupHTTPSrc * src, const gchar * uri)
     src->location = NULL;
   }
   src->location = g_strdup (uri);
+  
+  /* This is a hack to get around Apple's user agent blocking */
+  if (strstr(uri,APPLE_MOVIE_URI) != NULL) {
+    if (src->user_agent) {
+      g_free (src->user_agent);
+    } 
+    src->user_agent = g_strdup (APPLE_USER_AGENT_HACK);
+  }
 
   return TRUE;
 }
