Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
V
vlc-2-2
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Redmine
Redmine
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Metrics
Environments
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
videolan
vlc-2-2
Commits
db088db0
Commit
db088db0
authored
Mar 27, 2008
by
Rafaël Carré
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
lua demuxer for megavideo.com
parent
aa9bce0b
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
84 additions
and
0 deletions
+84
-0
share/luaplaylist/megavideo.lua
share/luaplaylist/megavideo.lua
+84
-0
No files found.
share/luaplaylist/megavideo.lua
0 → 100644
View file @
db088db0
--[[
Translate MegaVideo video webpages URLs to the corresponding FLV URL.
$Id$
Copyright © 2008 the VideoLAN team
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
--]]
-- Probe function.
function
probe
()
return
vlc
.
access
==
"http"
and
string.match
(
vlc
.
path
,
"megavideo.com"
)
end
-- Parse function.
function
parse
()
-- we have to get the xml
if
string.match
(
vlc
.
path
,
"www.megavideo.com.*&v=.*&u=.*"
)
then
id
=
string.gsub
(
vlc
.
path
,
"www.megavideo.com.*v=([^&]*).*$"
,
"%1"
)
path
=
"http://www.megavideo.com/xml/videolink.php?v="
..
id
return
{
{
path
=
path
}
}
end
while
true
do
line
=
vlc
.
readline
()
if
not
line
then
break
end
-- we got the xml
if
string.match
(
line
,
"<ROWS><ROW url=\"" )
then
xml = ""
while line do
-- buffer the full xml
xml = xml .. line
line = vlc.readline()
end
-- now gets the encoded url
s = string.gsub( xml, "
.
*
ROW
url
=
\
"([^\"
]
*
).
*
", "
%
1
" )
path = ""
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
end
i = i + 1
path = path .. string.char(key - c)
end
end
if path then break end
end
print( path )
if path then
return { { path = path } }
else
return { }
end
end
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment