Index: /ipk/source.sh4/network_xupnpd/_path_/etc/xupnpd/plugins/xupnpd_vimeo.lua
===================================================================
--- /ipk/source.sh4/network_xupnpd/_path_/etc/xupnpd/plugins/xupnpd_vimeo.lua	(revision 27894)
+++ /ipk/source.sh4/network_xupnpd/_path_/etc/xupnpd/plugins/xupnpd_vimeo.lua	(revision 27895)
@@ -4,4 +4,5 @@
 
 cfg.vimeo_video_count=100
+cfg.vimeo_fmt='hd'
 
 function vimeo_parse_feed(feed_url)
@@ -93,16 +94,23 @@
     local vimeo_id=string.match(vimeo_url,'.+/(%w+)$')
 
-    local clip_page=plugin_download(vimeo_url)
+    local config=plugin_download('http://player.vimeo.com/v2/video/'..vimeo_id..'/config')
 
-    if clip_page then
-        local ts,sig=string.match(clip_page,'"timestamp":(%w+),"signature":"(%w+)",')
-        clip_page=nil
+    if config then
+        local x=json.decode(config)
 
-        if sig and ts then
-            url=string.format('http://player.vimeo.com/play_redirect?clip_id=%s&sig=%s&time=%s&quality=hd&codecs=H264&type=moogaloop_local&embed_location=',vimeo_id,sig,ts)
+        config=nil
+
+        if x and x.request and x.request.files and x.request.files.h264 then
+            if cfg.vimeo_fmt=='sd' then
+                url=x.request.files.h264.sd
+            else
+                url=x.request.files.h264.hd or x.request.files.h264.sd
+            end
         end
     end
 
-    return url
+    if url then return url.url end
+
+    return nil
 
 end
@@ -117,4 +125,5 @@
 plugins.vimeo.ui_config_vars=
 {
-    { "input",  "vimeo_video_count", "int" }
+    { "input",  "vimeo_video_count", "int" },
+    { "select", "vimeo_fmt" }
 }
Index: /ipk/source.sh4/network_xupnpd/_path_/etc/xupnpd/plugins/xupnpd_youtube.lua
===================================================================
--- /ipk/source.sh4/network_xupnpd/_path_/etc/xupnpd/plugins/xupnpd_youtube.lua	(revision 27894)
+++ /ipk/source.sh4/network_xupnpd/_path_/etc/xupnpd/plugins/xupnpd_youtube.lua	(revision 27895)
@@ -229,5 +229,9 @@
                 end
 
-                urls[tonumber(item['itag'])]=item['url']..'&signature='..(item['sig'] or item['s'])
+                local sig=item['sig'] or item['s']
+                local u=item['url']
+                if sig then u=u..'&signature='..sig end
+                --print(item['itag'],u)
+                urls[tonumber(item['itag'])]=u
 
                 --print('\n')
