mirror of
https://code.videolan.org/videolan/vlc
synced 2024-10-11 06:21:30 +02:00
Fix megavideo lua demuxer
The '\n' was absent from the binary data, and several URLs wouldn't play properly Simplify the decoding Remove debug print() Distribute the file
This commit is contained in:
parent
532b6e4cfe
commit
b04fc32caf
@ -259,6 +259,7 @@ DIST_lua= \
|
||||
luaplaylist/lelombrik.lua \
|
||||
luaplaylist/youtube.lua \
|
||||
luaplaylist/youtube_homepage.lua \
|
||||
luaplaylist/megavideo.lua \
|
||||
luaplaylist/metacafe.lua \
|
||||
luaplaylist/googlevideo.lua \
|
||||
luaintf/http.lua \
|
||||
|
@ -47,7 +47,7 @@ function parse()
|
||||
xml = ""
|
||||
while line do
|
||||
-- buffer the full xml
|
||||
xml = xml .. line
|
||||
xml = xml .. line .. '\n'
|
||||
line = vlc.readline()
|
||||
end
|
||||
-- now gets the encoded url
|
||||
@ -56,18 +56,11 @@ function parse()
|
||||
i = 1
|
||||
while s:byte(i) do
|
||||
c = s:byte(i)
|
||||
if c % 4 < 2 then
|
||||
if c < 16 and c > 3 then key = 61
|
||||
elseif c < 96 and c > 67 then key = 189
|
||||
elseif c < 20 and c > 6 then key = 65
|
||||
else vlc.msg_err("Oops, please report URL to developers")
|
||||
end
|
||||
else
|
||||
if c < 16 and c > 3 then key = 65
|
||||
elseif c < 96 and c > 67 then key = 193
|
||||
elseif c < 20 and c > 6 then key = 65
|
||||
else vlc.msg_err("Oops, please report URL to developers")
|
||||
end
|
||||
if c % 4 < 2 then mod = 0 else mod = 4 end
|
||||
if c < 16 and c > 3 then key = 61 + mod
|
||||
elseif c < 96 and c > 67 then key = 189 + mod
|
||||
elseif c < 20 and c > 6 then key = 65
|
||||
else vlc.msg_err("Oops, please report URL to developers")
|
||||
end
|
||||
i = i + 1
|
||||
path = path .. string.char(key - c)
|
||||
@ -75,7 +68,6 @@ function parse()
|
||||
end
|
||||
if path then break end
|
||||
end
|
||||
print( path )
|
||||
if path then
|
||||
return { { path = path } }
|
||||
else
|
||||
|
Loading…
Reference in New Issue
Block a user