mirror of https://code.videolan.org/videolan/vlc
parent
ed8f57fa28
commit
0740ca354e
|
@ -34,8 +34,6 @@ LUA_MODULES = \
|
|||
lua/playlist/katsomo.lua \
|
||||
lua/playlist/koreus.lua \
|
||||
lua/playlist/lelombrik.lua \
|
||||
lua/playlist/liveleak.lua \
|
||||
lua/playlist/metacafe.lua \
|
||||
lua/playlist/mpora.lua \
|
||||
lua/playlist/newgrounds.lua \
|
||||
lua/playlist/pinkbike.lua \
|
||||
|
@ -195,7 +193,6 @@ nobase_doc_DATA = \
|
|||
lua/meta/reader/README.txt \
|
||||
lua/meta/reader/filename.lua \
|
||||
lua/playlist/README.txt \
|
||||
lua/playlist/liveleak.lua \
|
||||
lua/playlist/youtube.lua \
|
||||
lua/sd/README.txt \
|
||||
$(LUA_MODULES_DOC) \
|
||||
|
|
|
@ -1,92 +0,0 @@
|
|||
--[[
|
||||
|
||||
Copyright © 2012, 2017, 2021 VideoLAN and AUTHORS
|
||||
|
||||
Authors: Ludovic Fauvet <etix@videolan.org>
|
||||
Pierre Ynard
|
||||
|
||||
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" or vlc.access == "https" ) and (
|
||||
string.match( vlc.path, "^www%.liveleak%.com/v%?" )
|
||||
or string.match( vlc.path, "^www%.liveleak%.com/view%?" )
|
||||
)
|
||||
end
|
||||
|
||||
-- Parse function.
|
||||
function parse()
|
||||
local p = {}
|
||||
local title
|
||||
local art
|
||||
local video
|
||||
|
||||
while true do
|
||||
line = vlc.readline()
|
||||
if not line then break end
|
||||
|
||||
-- Try to find the title
|
||||
if not title then
|
||||
title = string.match( line, "shareTitle: *'(.-[^\\])'" )
|
||||
if title then
|
||||
if string.match( title, "^'" ) then
|
||||
title = nil
|
||||
else
|
||||
-- FIXME: do this properly (see #24958)
|
||||
title = string.gsub( title, "\\'", "'" )
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
-- Try to find the art
|
||||
if not art then
|
||||
art = string.match( line, '<meta property="og:image" content="([^"]+)"' )
|
||||
end
|
||||
|
||||
-- Try to find the video
|
||||
if not video and string.match( line, '<video ' ) then
|
||||
while not string.match( line, '</video>') do
|
||||
local more = vlc.readline()
|
||||
if not more then break end
|
||||
line = line..more
|
||||
end
|
||||
|
||||
-- Apparently the two formats are listed HD first, SD second
|
||||
local prefres = vlc.var.inherit( nil, 'preferred-resolution' )
|
||||
for source in string.gmatch( line, '<source( .-)>' ) do
|
||||
local src = string.match( source, ' src="([^"]+)"' )
|
||||
if src then
|
||||
video = vlc.strings.resolve_xml_special_chars( src )
|
||||
|
||||
if prefres < 0 then
|
||||
break
|
||||
end
|
||||
local height = tonumber( string.match( source, ' label="(%d+).-"' ) )
|
||||
if ( not height ) or height <= prefres then
|
||||
break
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
end
|
||||
if video then
|
||||
table.insert( p, { path = video; name = title; arturl = art; } )
|
||||
end
|
||||
return p
|
||||
end
|
||||
|
|
@ -1,54 +0,0 @@
|
|||
--[[
|
||||
|
||||
Copyright © 2007 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()
|
||||
local path = vlc.path:gsub("^www%.", "")
|
||||
return vlc.access == "http"
|
||||
and string.match( vlc.path, "^metacafe%.com/" )
|
||||
and ( string.match( vlc.path, "watch/" )
|
||||
or string.match( vlc.path, "mediaURL=" ) )
|
||||
end
|
||||
|
||||
-- Parse function.
|
||||
function parse()
|
||||
vlc.msg.warn("FIXME")
|
||||
if string.match( vlc.path, "watch/" )
|
||||
then -- This is the HTML page's URL
|
||||
while true do
|
||||
-- Try to find the video's title
|
||||
line = vlc.readline()
|
||||
if not line then break end
|
||||
if string.match( line, "<meta name=\"title\"" ) then
|
||||
_,_,name = string.find( line, "content=\"Metacafe %- (.-)\"" )
|
||||
end
|
||||
if string.match( line, "<meta name=\"description\"" ) then
|
||||
_,_,description = string.find( line, "content=\"(.-)\"" )
|
||||
end
|
||||
if string.match( line, "<link rel=\"image_src\"" ) then
|
||||
_,_,arturl = string.find( line, "href=\"(.-)\"" )
|
||||
end
|
||||
if name and description and arturl then break end
|
||||
end
|
||||
return { { path = string.gsub( vlc.path, "^.*watch/(.*[^/])/?$", "http://www.metacafe.com/fplayer/%1.swf" ); name = name; description = description; arturl = arturl; } }
|
||||
else -- This is the flash player's URL
|
||||
local _,_,path = string.find( vlc.path, "mediaURL=([^&]*)" )
|
||||
return { { path = path } }
|
||||
end
|
||||
end
|
Loading…
Reference in New Issue