]> git.sesse.net Git - vlc/commitdiff
VLCKit: url support for VLCMedia
authorMalte Tancred <malte@frontbase.com>
Fri, 5 Jun 2009 13:04:40 +0000 (15:04 +0200)
committerDerk-Jan Hartman <hartman@videolan.org>
Fri, 5 Jun 2009 13:04:40 +0000 (15:04 +0200)
The class VLCMedia used only the trailing path part of the URL it was handed. I changed the roles of initWithPath: and initWithURL: by letting initWithPath: create an NSURL, and initWithURL: hand the complete URL to libvlc_media_new. With this change I'm able to play network streams, not just local movie files.

Signed-off-by: Derk-Jan Hartman <hartman@videolan.org>
THANKS
projects/macosx/framework/Sources/VLCMedia.m

diff --git a/THANKS b/THANKS
index ef25a8316c561412884304bd2d7b0ac98cc8d3f1..66fc913e9cc74a1bf9083b431da103f4dffe1357 100644 (file)
--- a/THANKS
+++ b/THANKS
@@ -178,6 +178,7 @@ Ludovic Fauvet <etix # l0cal dot com> - Qt4 patch
 Lukas Durfina <lukas.durfina at gmail.com> - Qt4: full screen controller. Teletext button fix. Various fixes.
 Luqman Hakim <ovdl qt rocketmail dot com> - Indonesian translation
 Mahrazi Mohd Kamal <mahrazi at gmail.com> - Malay Translation
+Malte Tancred <malte at frontbase dot com> - VLCKit patch for URLs
 Marc Nolette <nolette at videotron.ca> - PVR support in DirectShow input
 Marco Munderloh <Marco.Munderloh at web.de> - HTTP fix for Win32 to URL filenames
 Marián Hikaník <podnety _at_ mojepreklady _dot_ net> - Slovak localisation
index 37561783b13206e363ee8c7ff59587167152d1f8..a55a0428072d0e3cbdb7cf58ded6f2b6ce32f385 100644 (file)
@@ -168,12 +168,12 @@ static void HandleMediaSubItemAdded(const libvlc_event_t * event, void * self)
     return [[[VLCMedia alloc] initAsNodeWithName:aName] autorelease];
 }
 
-- (id)initWithURL:(NSURL *)anURL
+- (id)initWithPath:(NSString *)aPath
 {
-    return [self initWithPath:[anURL path]];
+    return [self initWithURL:[NSURL fileURLWithPath:aPath isDirectory:NO]];
 }
 
-- (id)initWithPath:(NSString *)aPath
+- (id)initWithURL:(NSURL *)anURL
 {        
     if (self = [super init])
     {
@@ -181,7 +181,7 @@ static void HandleMediaSubItemAdded(const libvlc_event_t * event, void * self)
         libvlc_exception_init(&ex);
         
         p_md = libvlc_media_new([VLCLibrary sharedInstance],
-                                           [aPath UTF8String],
+                                           [[anURL absoluteString] UTF8String],
                                            &ex);
         catch_exception(&ex);