Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
V
vlc
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
Commits
6d44f15a
Commit
6d44f15a
authored
May 28, 2009
by
Rémi Denis-Courmont
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'base' into 1.0-bugfix
parents
1d3b0ce2
a654d4a1
Changes
12
Hide whitespace changes
Inline
Side-by-side
Showing
12 changed files
with
66 additions
and
47 deletions
+66
-47
modules/control/http/http.c
modules/control/http/http.c
+3
-1
modules/demux/playlist/xspf.c
modules/demux/playlist/xspf.c
+11
-14
modules/gui/macosx/playlistinfo.m
modules/gui/macosx/playlistinfo.m
+2
-1
modules/gui/qt4/input_manager.cpp
modules/gui/qt4/input_manager.cpp
+5
-4
modules/meta_engine/folder.c
modules/meta_engine/folder.c
+11
-6
modules/misc/notify/growl.m
modules/misc/notify/growl.m
+2
-1
modules/misc/notify/notify.c
modules/misc/notify/notify.c
+4
-2
modules/misc/playlist/xspf.c
modules/misc/playlist/xspf.c
+1
-3
share/lua/meta/10_googleimage.lua
share/lua/meta/10_googleimage.lua
+1
-5
share/lua/playlist/dailymotion.lua
share/lua/playlist/dailymotion.lua
+1
-1
share/lua/playlist/youtube.lua
share/lua/playlist/youtube.lua
+1
-1
src/playlist/art.c
src/playlist/art.c
+24
-8
No files found.
modules/control/http/http.c
View file @
6d44f15a
...
@@ -27,6 +27,7 @@
...
@@ -27,6 +27,7 @@
#include "http.h"
#include "http.h"
#include <vlc_plugin.h>
#include <vlc_plugin.h>
#include <vlc_url.h>
#include <assert.h>
#include <assert.h>
...
@@ -787,7 +788,8 @@ int ArtCallback( httpd_handler_sys_t *p_args,
...
@@ -787,7 +788,8 @@ int ArtCallback( httpd_handler_sys_t *p_args,
psz_art
=
input_item_GetArtURL
(
p_item
);
psz_art
=
input_item_GetArtURL
(
p_item
);
}
}
if
(
psz_art
&&
!
strncmp
(
psz_art
,
"file://"
,
strlen
(
"file://"
)
)
)
if
(
psz_art
&&
!
strncmp
(
psz_art
,
"file://"
,
strlen
(
"file://"
)
)
&&
decode_URI
(
psz_art
+
7
)
)
{
{
FILE
*
f
;
FILE
*
f
;
char
*
psz_ext
;
char
*
psz_ext
;
...
...
modules/demux/playlist/xspf.c
View file @
6d44f15a
...
@@ -546,32 +546,31 @@ static bool parse_track_node COMPLEX_INTERFACE
...
@@ -546,32 +546,31 @@ static bool parse_track_node COMPLEX_INTERFACE
/* special case: location */
/* special case: location */
if
(
!
strcmp
(
p_handler
->
name
,
"location"
)
)
if
(
!
strcmp
(
p_handler
->
name
,
"location"
)
)
{
{
char
*
psz_uri
=
NULL
;
char
*
psz_location
=
psz_value
;
psz_uri
=
decode_URI_duplicate
(
psz_value
);
if
(
!
strncmp
(
psz_value
,
"file://"
,
7
)
)
psz_location
=
decode_URI
(
psz_value
+
7
);
if
(
!
psz_
uri
)
if
(
!
psz_
location
)
{
{
FREE_ATT
();
FREE_ATT
();
return
false
;
return
false
;
}
}
if
(
p_demux
->
p_sys
->
psz_base
&&
!
strstr
(
psz_
uri
,
"://"
)
)
if
(
p_demux
->
p_sys
->
psz_base
&&
!
strstr
(
psz_
value
,
"://"
)
)
{
{
char
*
psz_tmp
;
char
*
psz_tmp
;
if
(
asprintf
(
&
psz_tmp
,
"%s%s"
,
p_demux
->
p_sys
->
psz_base
,
if
(
asprintf
(
&
psz_tmp
,
"%s%s"
,
p_demux
->
p_sys
->
psz_base
,
psz_
uri
)
==
-
1
)
psz_
location
)
==
-
1
)
{
{
free
(
psz_uri
);
FREE_ATT
();
FREE_ATT
();
return
NULL
;
return
NULL
;
}
}
free
(
psz_uri
);
input_item_SetURI
(
p_new_input
,
psz_tmp
);
psz_uri
=
psz_tmp
;
free
(
psz_tmp
)
;
}
}
input_item_SetURI
(
p_new_input
,
psz_uri
);
else
free
(
psz_uri
);
input_item_SetURI
(
p_new_input
,
psz_location
);
input_item_CopyOptions
(
p_input_item
,
p_new_input
);
input_item_CopyOptions
(
p_input_item
,
p_new_input
);
psz_uri
=
NULL
;
FREE_ATT
();
FREE_ATT
();
p_handler
=
NULL
;
p_handler
=
NULL
;
}
}
...
@@ -652,9 +651,7 @@ static bool set_item_info SIMPLE_INTERFACE
...
@@ -652,9 +651,7 @@ static bool set_item_info SIMPLE_INTERFACE
}
}
else
if
(
!
strcmp
(
psz_name
,
"image"
)
)
else
if
(
!
strcmp
(
psz_name
,
"image"
)
)
{
{
char
*
psz_uri
=
decode_URI_duplicate
(
psz_value
);
input_item_SetArtURL
(
p_input
,
psz_value
);
input_item_SetArtURL
(
p_input
,
psz_uri
);
free
(
psz_uri
);
}
}
return
true
;
return
true
;
}
}
...
...
modules/gui/macosx/playlistinfo.m
View file @
6d44f15a
...
@@ -29,6 +29,7 @@
...
@@ -29,6 +29,7 @@
#include "intf.h"
#include "intf.h"
#include "playlistinfo.h"
#include "playlistinfo.h"
#include "playlist.h"
#include "playlist.h"
#include <vlc_url.h>
/*****************************************************************************
/*****************************************************************************
* VLCPlaylistInfo Implementation
* VLCPlaylistInfo Implementation
...
@@ -292,7 +293,7 @@ static VLCInfo *_o_sharedInstance = nil;
...
@@ -292,7 +293,7 @@ static VLCInfo *_o_sharedInstance = nil;
char
*
psz_meta
;
char
*
psz_meta
;
NSImage
*
o_image
;
NSImage
*
o_image
;
psz_meta
=
input_item_GetArtURL
(
p_item
);
psz_meta
=
input_item_GetArtURL
(
p_item
);
if
(
psz_meta
&&
!
strncmp
(
psz_meta
,
"file://"
,
7
)
)
if
(
psz_meta
&&
!
strncmp
(
psz_meta
,
"file://"
,
7
)
&&
decode_URI
(
psz_meta
+
7
)
)
o_image
=
[[
NSImage
alloc
]
initWithContentsOfFile
:
[
NSString
stringWithUTF8String
:
psz_meta
+
7
]];
o_image
=
[[
NSImage
alloc
]
initWithContentsOfFile
:
[
NSString
stringWithUTF8String
:
psz_meta
+
7
]];
else
else
o_image
=
[[
NSImage
imageNamed
:
@"noart.png"
]
retain
];
o_image
=
[[
NSImage
imageNamed
:
@"noart.png"
]
retain
];
...
...
modules/gui/qt4/input_manager.cpp
View file @
6d44f15a
...
@@ -29,6 +29,7 @@
...
@@ -29,6 +29,7 @@
#include "input_manager.hpp"
#include "input_manager.hpp"
#include <vlc_keys.h>
#include <vlc_keys.h>
#include <vlc_url.h>
#include <QApplication>
#include <QApplication>
...
@@ -589,12 +590,12 @@ void InputManager::UpdateArt()
...
@@ -589,12 +590,12 @@ void InputManager::UpdateArt()
if
(
hasInput
()
)
if
(
hasInput
()
)
{
{
char
*
psz_art
=
input_item_GetArtURL
(
input_GetItem
(
p_input
)
);
char
*
psz_art
=
input_item_GetArtURL
(
input_GetItem
(
p_input
)
);
url
=
qfu
(
psz_art
);
if
(
psz_art
&&
!
strncmp
(
psz_art
,
"file://"
,
7
)
&&
decode_URI
(
psz_art
+
7
)
)
url
=
qfu
(
psz_art
+
7
);
free
(
psz_art
);
free
(
psz_art
);
}
}
url
=
url
.
replace
(
"file://"
,
QString
(
""
)
);
/* Taglib seems to define a attachment://, It won't work yet */
url
=
url
.
replace
(
"attachment://"
,
QString
(
""
)
);
/* Update Art meta */
/* Update Art meta */
emit
artChanged
(
url
);
emit
artChanged
(
url
);
}
}
...
...
modules/meta_engine/folder.c
View file @
6d44f15a
...
@@ -98,26 +98,31 @@ static int FindMeta( vlc_object_t *p_this )
...
@@ -98,26 +98,31 @@ static int FindMeta( vlc_object_t *p_this )
case
0
:
case
0
:
/* Windows Folder.jpg */
/* Windows Folder.jpg */
snprintf
(
psz_filename
,
MAX_PATH
,
snprintf
(
psz_filename
,
MAX_PATH
,
"
file://
%sFolder.jpg"
,
psz_path
);
"%sFolder.jpg"
,
psz_path
);
break
;
break
;
case
1
:
case
1
:
/* Windows AlbumArtSmall.jpg == small version of Folder.jpg */
/* Windows AlbumArtSmall.jpg == small version of Folder.jpg */
snprintf
(
psz_filename
,
MAX_PATH
,
snprintf
(
psz_filename
,
MAX_PATH
,
"
file://
%sAlbumArtSmall.jpg"
,
psz_path
);
"%sAlbumArtSmall.jpg"
,
psz_path
);
break
;
break
;
case
2
:
case
2
:
/* KDE (?) .folder.png */
/* KDE (?) .folder.png */
snprintf
(
psz_filename
,
MAX_PATH
,
snprintf
(
psz_filename
,
MAX_PATH
,
"
file://
%s.folder.png"
,
psz_path
);
"%s.folder.png"
,
psz_path
);
break
;
break
;
}
}
if
(
utf8_stat
(
psz_filename
+
7
,
&
a
)
!=
-
1
)
if
(
utf8_stat
(
psz_filename
,
&
a
)
!=
-
1
)
{
{
input_item_SetArtURL
(
p_item
,
psz_filename
);
char
*
psz_uri
=
make_URI
(
psz_filename
);
b_have_art
=
true
;
if
(
psz_uri
)
{
input_item_SetArtURL
(
p_item
,
psz_uri
);
free
(
psz_uri
);
b_have_art
=
true
;
}
}
}
}
}
...
...
modules/misc/notify/growl.m
View file @
6d44f15a
...
@@ -58,6 +58,7 @@
...
@@ -58,6 +58,7 @@
#include
<vlc
_playlist
.
h
>
#include
<vlc
_playlist
.
h
>
#include
<vlc
_meta
.
h
>
#include
<vlc
_meta
.
h
>
#include
<vlc
_interface
.
h
>
#include
<vlc
_interface
.
h
>
#include
<vlc
_url
.
h
>
/*****************************************************************************
/*****************************************************************************
...
@@ -210,7 +211,7 @@ static int ItemChange( vlc_object_t *p_this, const char *psz_var,
...
@@ -210,7 +211,7 @@ static int ItemChange( vlc_object_t *p_this, const char *psz_var,
char *psz_arturl = input_item_GetArtURL( p_item );
char *psz_arturl = input_item_GetArtURL( p_item );
CFDataRef art = NULL;
CFDataRef art = NULL;
if( psz_arturl
&&
!strncmp( psz_arturl, "file://", 7 )
&&
if( psz_arturl
&&
!strncmp( psz_arturl, "file://", 7 )
&&
strlen( psz_arturl ) > 7
)
decode_URI( psz_arturl + 7 )
)
art = (CFDataRef) readFile( psz_arturl + 7 );
art = (CFDataRef) readFile( psz_arturl + 7 );
free( psz_title );
free( psz_title );
...
...
modules/misc/notify/notify.c
View file @
6d44f15a
...
@@ -32,6 +32,7 @@
...
@@ -32,6 +32,7 @@
#include <vlc_plugin.h>
#include <vlc_plugin.h>
#include <vlc_interface.h>
#include <vlc_interface.h>
#include <vlc_playlist.h>
#include <vlc_playlist.h>
#include <vlc_url.h>
#include <gdk-pixbuf/gdk-pixbuf.h>
#include <gdk-pixbuf/gdk-pixbuf.h>
#include <libnotify/notify.h>
#include <libnotify/notify.h>
...
@@ -221,12 +222,11 @@ static int ItemChange( vlc_object_t *p_this, const char *psz_var,
...
@@ -221,12 +222,11 @@ static int ItemChange( vlc_object_t *p_this, const char *psz_var,
vlc_object_release
(
p_input
);
vlc_object_release
(
p_input
);
if
(
psz_arturl
&&
!
strncmp
(
psz_arturl
,
"file://"
,
7
)
&&
if
(
psz_arturl
&&
!
strncmp
(
psz_arturl
,
"file://"
,
7
)
&&
strlen
(
psz_arturl
)
>
7
)
decode_URI
(
psz_arturl
+
7
)
)
{
/* scale the art to show it in notify popup */
{
/* scale the art to show it in notify popup */
GError
*
p_error
=
NULL
;
GError
*
p_error
=
NULL
;
pix
=
gdk_pixbuf_new_from_file_at_scale
(
&
psz_arturl
[
7
],
pix
=
gdk_pixbuf_new_from_file_at_scale
(
&
psz_arturl
[
7
],
72
,
72
,
TRUE
,
&
p_error
);
72
,
72
,
TRUE
,
&
p_error
);
free
(
psz_arturl
);
}
}
else
/* else we show state-of-the art logo */
else
/* else we show state-of-the art logo */
{
{
...
@@ -239,6 +239,8 @@ static int ItemChange( vlc_object_t *p_this, const char *psz_var,
...
@@ -239,6 +239,8 @@ static int ItemChange( vlc_object_t *p_this, const char *psz_var,
}
}
}
}
free
(
psz_arturl
);
/* we need to replace '&' with '&' because '&' is a keyword of
/* we need to replace '&' with '&' because '&' is a keyword of
* notification-daemon parser */
* notification-daemon parser */
const
int
i_len
=
strlen
(
psz_tmp
);
const
int
i_len
=
strlen
(
psz_tmp
);
...
...
modules/misc/playlist/xspf.c
View file @
6d44f15a
...
@@ -212,9 +212,7 @@ static void xspf_export_item( playlist_item_t *p_item, FILE *p_file,
...
@@ -212,9 +212,7 @@ static void xspf_export_item( playlist_item_t *p_item, FILE *p_file,
if
(
psz
==
NULL
)
psz
=
strdup
(
""
);
if
(
psz
==
NULL
)
psz
=
strdup
(
""
);
if
(
!
EMPTY_STR
(
psz
)
)
if
(
!
EMPTY_STR
(
psz
)
)
{
{
psz_uri
=
make_URI
(
psz
);
fprintf
(
p_file
,
"
\t\t\t
<image>%s</image>
\n
"
,
psz
);
fprintf
(
p_file
,
"
\t\t\t
<image>%s</image>
\n
"
,
psz_uri
);
free
(
psz_uri
);
}
}
free
(
psz
);
free
(
psz
);
...
...
share/lua/meta/10_googleimage.lua
View file @
6d44f15a
...
@@ -44,9 +44,5 @@ function fetch_art()
...
@@ -44,9 +44,5 @@ function fetch_art()
page
=
fd
:
read
(
65653
)
page
=
fd
:
read
(
65653
)
fd
=
nil
fd
=
nil
_
,
_
,
arturl
=
string.find
(
page
,
"imgurl=([^&]+)"
)
_
,
_
,
arturl
=
string.find
(
page
,
"imgurl=([^&]+)"
)
if
arturl
then
return
arturl
return
vlc
.
strings
.
decode_uri
(
arturl
)
else
return
nil
end
end
end
share/lua/playlist/dailymotion.lua
View file @
6d44f15a
...
@@ -41,7 +41,7 @@ function parse()
...
@@ -41,7 +41,7 @@ function parse()
if
not
line
then
break
end
if
not
line
then
break
end
if
string.match
(
line
,
"param name=\"
flashvars
\
" value=\"
.
*
video
=
" )
if
string.match
(
line
,
"param name=\"
flashvars
\
" value=\"
.
*
video
=
" )
then
then
arturl =
vlc.strings.decode_uri( find( line, "
param
name
=
\
"flashvars\"
value
=
\
".*preview=([^&]*)"
)
)
arturl =
find( line, "
param
name
=
\
"flashvars\"
value
=
\
".*preview=([^&]*)"
)
videos
=
vlc
.
strings
.
decode_uri
(
find
(
line
,
"param name=\"
flashvars
\
" value=\"
.
*
video
=
([
^
&
]
*
)
" ) )
videos
=
vlc
.
strings
.
decode_uri
(
find
(
line
,
"param name=\"
flashvars
\
" value=\"
.
*
video
=
([
^
&
]
*
)
" ) )
--[[ we get a list of different streams available, at various codecs
--[[ we get a list of different streams available, at various codecs
and resolutions:
and resolutions:
...
...
share/lua/playlist/youtube.lua
View file @
6d44f15a
...
@@ -26,7 +26,7 @@ end
...
@@ -26,7 +26,7 @@ end
function
get_arturl
(
path
,
video_id
)
function
get_arturl
(
path
,
video_id
)
if
string.match
(
vlc
.
path
,
"iurl="
)
then
if
string.match
(
vlc
.
path
,
"iurl="
)
then
return
vlc
.
strings
.
decode_uri
(
get_url_param
(
vlc
.
path
,
"iurl"
)
)
return
vlc
.
strings
(
get_url_param
(
vlc
.
path
,
"iurl"
)
)
end
end
if
not
arturl
then
if
not
arturl
then
return
"http://img.youtube.com/vi/"
..
video_id
..
"/default.jpg"
return
"http://img.youtube.com/vi/"
..
video_id
..
"/default.jpg"
...
...
src/playlist/art.c
View file @
6d44f15a
...
@@ -132,7 +132,7 @@ static char *ArtCacheName( input_item_t *p_item, const char *psz_type )
...
@@ -132,7 +132,7 @@ static char *ArtCacheName( input_item_t *p_item, const char *psz_type )
char
*
psz_ext
=
filename_sanitize
(
psz_type
?
psz_type
:
""
);
char
*
psz_ext
=
filename_sanitize
(
psz_type
?
psz_type
:
""
);
char
*
psz_filename
;
char
*
psz_filename
;
if
(
asprintf
(
&
psz_filename
,
"
file://
%s"
DIR_SEP
"art%s"
,
psz_path
,
psz_ext
)
<
0
)
if
(
asprintf
(
&
psz_filename
,
"%s"
DIR_SEP
"art%s"
,
psz_path
,
psz_ext
)
<
0
)
psz_filename
=
NULL
;
psz_filename
=
NULL
;
free
(
psz_ext
);
free
(
psz_ext
);
...
@@ -164,12 +164,19 @@ int playlist_FindArtInCache( input_item_t *p_item )
...
@@ -164,12 +164,19 @@ int playlist_FindArtInCache( input_item_t *p_item )
if
(
!
strncmp
(
psz_filename
,
"art"
,
3
)
)
if
(
!
strncmp
(
psz_filename
,
"art"
,
3
)
)
{
{
char
*
psz_file
;
char
*
psz_file
;
if
(
asprintf
(
&
psz_file
,
"
file://
%s"
DIR_SEP
"%s"
,
if
(
asprintf
(
&
psz_file
,
"%s"
DIR_SEP
"%s"
,
psz_path
,
psz_filename
)
<
0
)
psz_path
,
psz_filename
)
<
0
)
psz_file
=
NULL
;
psz_file
=
NULL
;
if
(
psz_file
)
if
(
psz_file
)
input_item_SetArtURL
(
p_item
,
psz_file
);
{
free
(
psz_file
);
char
*
psz_uri
=
make_URI
(
psz_file
);
if
(
psz_uri
)
{
input_item_SetArtURL
(
p_item
,
psz_uri
);
free
(
psz_uri
);
}
free
(
psz_file
);
}
b_found
=
true
;
b_found
=
true
;
}
}
...
@@ -192,17 +199,25 @@ int playlist_SaveArt( playlist_t *p_playlist, input_item_t *p_item,
...
@@ -192,17 +199,25 @@ int playlist_SaveArt( playlist_t *p_playlist, input_item_t *p_item,
if
(
!
psz_filename
)
if
(
!
psz_filename
)
return
VLC_EGENERIC
;
return
VLC_EGENERIC
;
char
*
psz_uri
=
make_URI
(
psz_filename
);
if
(
!
psz_uri
)
{
free
(
psz_filename
);
return
VLC_EGENERIC
;
}
/* Check if we already dumped it */
/* Check if we already dumped it */
struct
stat
s
;
struct
stat
s
;
if
(
!
utf8_stat
(
psz_filename
+
7
,
&
s
)
)
if
(
!
utf8_stat
(
psz_filename
,
&
s
)
)
{
{
input_item_SetArtURL
(
p_item
,
psz_
filename
);
input_item_SetArtURL
(
p_item
,
psz_
uri
);
free
(
psz_filename
);
free
(
psz_filename
);
free
(
psz_uri
);
return
VLC_SUCCESS
;
return
VLC_SUCCESS
;
}
}
/* Dump it otherwise */
/* Dump it otherwise */
FILE
*
f
=
utf8_fopen
(
psz_filename
+
7
,
"wb"
);
FILE
*
f
=
utf8_fopen
(
psz_filename
,
"wb"
);
if
(
f
)
if
(
f
)
{
{
if
(
fwrite
(
p_buffer
,
i_buffer
,
1
,
f
)
!=
1
)
if
(
fwrite
(
p_buffer
,
i_buffer
,
1
,
f
)
!=
1
)
...
@@ -212,11 +227,12 @@ int playlist_SaveArt( playlist_t *p_playlist, input_item_t *p_item,
...
@@ -212,11 +227,12 @@ int playlist_SaveArt( playlist_t *p_playlist, input_item_t *p_item,
else
else
{
{
msg_Dbg
(
p_playlist
,
"album art saved to %s"
,
psz_filename
);
msg_Dbg
(
p_playlist
,
"album art saved to %s"
,
psz_filename
);
input_item_SetArtURL
(
p_item
,
psz_
filename
);
input_item_SetArtURL
(
p_item
,
psz_
uri
);
}
}
fclose
(
f
);
fclose
(
f
);
}
}
free
(
psz_filename
);
free
(
psz_filename
);
free
(
psz_uri
);
return
VLC_SUCCESS
;
return
VLC_SUCCESS
;
}
}
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