summaryrefslogtreecommitdiffstats
path: root/vlc/build/vlc-1.1.11_youtube.patch
blob: edd9b3b0b0fe77f97a0fc5b35908d5574e8a9134 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
From: Pierre Ynard <linkfanel@yahoo.fr>
Date: Thu, 28 Jul 2011 15:44:06 +0000 (+0200)
Subject: youtube.lua: update to new website changes
X-Git-Url: http://git.videolan.org/?p=vlc%2Fvlc-1.1.git;a=commitdiff_plain;h=e81b0c97c3ffe81e24ba998a81cf01ee94894d1e

youtube.lua: update to new website changes
(cherry picked from commit 5cadaf8779f1db7fa0174e851cd9e2afd68e2153)

Signed-off-by: Pierre Ynard <linkfanel@yahoo.fr>
---

diff --git a/share/lua/playlist/youtube.lua b/share/lua/playlist/youtube.lua
index 85ba428..5d386eb 100644
--- a/share/lua/playlist/youtube.lua
+++ b/share/lua/playlist/youtube.lua
@@ -80,7 +80,7 @@ function parse()
             -- OLD 1: var swfArgs = {hl:'en',BASE_YT_URL:'http://youtube.com/',video_id:'XPJ7d8dq0t8',l:'292',t:'OEgsToPDskLFdOYrrlDm3FQPoQBYaCP1',sk:'0gnr-AE6QZJEZmCMd3lq_AC'};
             -- OLD 2: var swfArgs = { "BASE_YT_URL": "http://youtube.com", "video_id": "OHVvVmUNBFc", "l": 88, "sk": "WswKuJzDBsdD6oG3IakCXgC", "t": "OEgsToPDskK3zO44y0QN8Fr5ZSAZwCQp", "plid": "AARGnwWMrmGkbpOxAAAA4AT4IAA", "tk": "mEL4E7PqHeaZp5OG19NQThHt9mXJU4PbRTOw6lz9osHi4Hixp7RE1w=="};
             -- OLD 3: 'SWF_ARGS': { [a lot of stuff...], "video_id": "OHVvVmUNBFc", "sk": "WswKuJzDBsdD6oG3IakCXgC", "t": "OEgsToPDskK3zO44y0QN8Fr5ZSAZwCQp", "plid": "AARGnwWMrmGkbpOxAAAA4AT4IAA"};
-            if ( string.match( line, "swfConfig" ) or string.match( line, "SWF_ARGS" ) or string.match( line, "swfArgs" ) ) and string.match( line, "video_id" ) then
+            if ( string.match( line, "PLAYER_CONFIG" ) or string.match( line, "swfConfig" ) or string.match( line, "SWF_ARGS" ) or string.match( line, "swfArgs" ) ) and string.match( line, "video_id" ) then
                 if string.match( line, "BASE_YT_URL" ) then
                     _,_,base_yt_url = string.find( line, "\"BASE_YT_URL\": \"(.-)\"" )
                 end

# =========================================================================

From: Pierre Ynard <linkfanel@yahoo.fr>
Date: Thu, 4 Aug 2011 18:32:00 +0000 (+0200)
Subject: youtube.lua: avoid parsing a nil variable
X-Git-Url: http://git.videolan.org/?p=vlc%2Fvlc-1.1.git;a=commitdiff_plain;h=c77c2f1cacdef05c0c87b452da62e9a4748bd843

youtube.lua: avoid parsing a nil variable
(cherry picked from commit 90dfae907387cd136de35b1da4feab46d10a1a52)

Signed-off-by: Pierre Ynard <linkfanel@yahoo.fr>
---

diff --git a/share/lua/playlist/youtube.lua b/share/lua/playlist/youtube.lua
index 5d386eb..62d8240 100644
--- a/share/lua/playlist/youtube.lua
+++ b/share/lua/playlist/youtube.lua
@@ -88,9 +88,9 @@ function parse()
                 -- vlc.msg.err( t )
                 -- video_id = string.gsub( line, ".*&video_id:'([^']*)'.*", "%1" )
                 fmt_url_map = string.match( line, "\"fmt_url_map\": \"(.-)\"" )
-                -- FIXME: do this properly
-                fmt_url_map = string.gsub( fmt_url_map, "\\u0026", "&" )
                 if fmt_url_map then
+                    -- FIXME: do this properly
+                    fmt_url_map = string.gsub( fmt_url_map, "\\u0026", "&" )
                     for itag,url in string.gmatch( fmt_url_map, "(%d+)|([^,]+)" ) do
                         -- Apparently formats are listed in quality order,
                         -- so we can afford to simply take the first one
# =========================================================================

From: Pierre Ynard <linkfanel@yahoo.fr>
Date: Fri, 5 Aug 2011 19:37:48 +0000 (+0200)
Subject: youtube.lua: update to new website changes
X-Git-Url: http://git.videolan.org/?p=vlc%2Fvlc-1.1.git;a=commitdiff_plain;h=9cb117783bb9dc4e361facf4d6da2378f07a759e

youtube.lua: update to new website changes
(cherry picked from commit 7158aaea585c198a4e536af1be9f3cbbe2e62f74)

Signed-off-by: Pierre Ynard <linkfanel@yahoo.fr>
---

diff --git a/share/lua/playlist/youtube.lua b/share/lua/playlist/youtube.lua
index 62d8240..33c4a5c 100644
--- a/share/lua/playlist/youtube.lua
+++ b/share/lua/playlist/youtube.lua
@@ -87,16 +87,15 @@ function parse()
                 _,_,t = string.find( line, "\"t\": \"(.-)\"" )
                 -- vlc.msg.err( t )
                 -- video_id = string.gsub( line, ".*&video_id:'([^']*)'.*", "%1" )
-                fmt_url_map = string.match( line, "\"fmt_url_map\": \"(.-)\"" )
+                fmt_url_map = string.match( line, "\"url_encoded_fmt_stream_map\": \"(.-)\"" )
                 if fmt_url_map then
                     -- FIXME: do this properly
                     fmt_url_map = string.gsub( fmt_url_map, "\\u0026", "&" )
-                    for itag,url in string.gmatch( fmt_url_map, "(%d+)|([^,]+)" ) do
+                    for url,itag in string.gmatch( fmt_url_map, "url=([^&,]+).-&itag=(%d+)" ) do
                         -- Apparently formats are listed in quality order,
                         -- so we can afford to simply take the first one
                         if not fmt or tonumber( itag ) == tonumber( fmt ) then
-                            -- do unescaping of /
-                            url = string.gsub( url, '\\/','/' )
+                            url = vlc.strings.decode_uri( url )
                             path = url
                             break
                         end