[vlc-devel] commit: Cleanup media player ( Rémi Denis-Courmont )
git version control
git at videolan.org
Sat Feb 21 17:15:15 CET 2009
vlc | branch: master | Rémi Denis-Courmont <rdenis at simphalempin.com> | Sat Feb 21 16:37:14 2009 +0200| [b6cada70eb95dad0934fe65de8ed01dbb792b1c2] | committer: Rémi Denis-Courmont
Cleanup media player
> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=b6cada70eb95dad0934fe65de8ed01dbb792b1c2
---
bindings/cil/src/libvlc.cs | 120 ++++++++++++++++++++++++++++++++++++++++++++
bindings/cil/src/player.cs | 51 ++++++-------------
2 files changed, 135 insertions(+), 36 deletions(-)
diff --git a/bindings/cil/src/libvlc.cs b/bindings/cil/src/libvlc.cs
index 6f66b58..6087453 100644
--- a/bindings/cil/src/libvlc.cs
+++ b/bindings/cil/src/libvlc.cs
@@ -138,5 +138,125 @@ namespace VideoLAN.LibVLC
/*[DllImport ("libvlc.dll", EntryPoint="libvlc_media_get_user_data")]
public static extern
IntPtr MediaIsPreparsed (MediaHandle media, NativeException ex);*/
+
+ /* media_player.c */
+ [DllImport ("libvlc.dll", EntryPoint="libvlc_media_player_new")]
+ public static extern
+ PlayerHandle PlayerCreate (InstanceHandle inst, NativeException ex);
+
+ [DllImport ("libvlc.dll",
+ EntryPoint="libvlc_media_player_new_from_media")]
+ public static extern
+ PlayerHandle PlayerCreateFromMedia (MediaHandle media,
+ NativeException ex);
+
+ [DllImport ("libvlc.dll", EntryPoint="libvlc_media_player_release")]
+ public static extern
+ void PlayerRelease (IntPtr ptr);
+
+ /* PlayerRetain */
+
+ [DllImport ("libvlc.dll",
+ EntryPoint="libvlc_media_player_set_media")]
+ public static extern
+ void PlayerSetMedia (PlayerHandle player, MediaHandle media,
+ NativeException ex);
+
+ /*[DllImport ("libvlc.dll",
+ EntryPoint="libvlc_media_player_get_media")]
+ public static extern
+ MediaHandle PlayerGetMedia (PlayerHandle player,
+ NativeException ex);*/
+
+ /*[DllImport ("libvlc.dll",
+ EntryPoint="libvlc_media_player_event_manager")]
+ public static extern
+ EventManagerHandle PlayerGetEventManager (PlayerHandle media,
+ NativeException ex);*/
+ [DllImport ("libvlc.dll",
+ EntryPoint="libvlc_media_player_is_playing")]
+ public static extern
+ int PlayerIsPlaying (PlayerHandle player, NativeException ex);
+
+ [DllImport ("libvlc.dll",
+ EntryPoint="libvlc_media_player_play")]
+ public static extern
+ void PlayerPlay (PlayerHandle player, NativeException ex);
+
+ [DllImport ("libvlc.dll",
+ EntryPoint="libvlc_media_player_pause")]
+ public static extern
+ void PlayerPause (PlayerHandle player, NativeException ex);
+
+ [DllImport ("libvlc.dll",
+ EntryPoint="libvlc_media_player_stop")]
+ public static extern
+ void PlayerStop (PlayerHandle player, NativeException ex);
+
+ [DllImport ("libvlc.dll",
+ EntryPoint="libvlc_media_player_set_xwindow")]
+ public static extern
+ void PlayerSetXWindow (PlayerHandle player, int xid,
+ NativeException ex);
+
+ [DllImport ("libvlc.dll",
+ EntryPoint="libvlc_media_player_get_xwindow")]
+ public static extern
+ int PlayerGetXWindow (PlayerHandle player,
+ NativeException ex);
+
+ [DllImport ("libvlc.dll",
+ EntryPoint="libvlc_media_player_set_hwnd")]
+ public static extern
+ void PlayerSetHWND (PlayerHandle player, SafeHandle hwnd,
+ NativeException ex);
+
+ [DllImport ("libvlc.dll",
+ EntryPoint="libvlc_media_player_get_hwnd")]
+ public static extern
+ IntPtr PlayerGetHWND (PlayerHandle player, NativeException ex);
+
+ [DllImport ("libvlc.dll",
+ EntryPoint="libvlc_media_player_get_length")]
+ public static extern
+ long PlayerGetLength (PlayerHandle player, NativeException ex);
+
+ [DllImport ("libvlc.dll", EntryPoint="libvlc_media_player_get_time")]
+ public static extern
+ long PlayerGetTime (PlayerHandle player, NativeException ex);
+
+ [DllImport ("libvlc.dll", EntryPoint="libvlc_media_player_set_time")]
+ public static extern
+ void PlayerSetTime (PlayerHandle player, long time,
+ NativeException ex);
+
+ [DllImport ("libvlc.dll",
+ EntryPoint="libvlc_media_player_get_position")]
+ public static extern
+ float PlayerGetPosition (PlayerHandle player, NativeException ex);
+
+ [DllImport ("libvlc.dll",
+ EntryPoint="libvlc_media_player_set_position")]
+ public static extern
+ void PlayerSetPosition (PlayerHandle player, float position,
+ NativeException ex);
+
+ [DllImport ("libvlc.dll",
+ EntryPoint="libvlc_media_player_get_chapter")]
+ public static extern
+ int PlayerGetChapter (PlayerHandle player, NativeException ex);
+
+ [DllImport ("libvlc.dll",
+ EntryPoint="libvlc_media_player_set_chapter")]
+ public static extern
+ void PlayerSetChapter (PlayerHandle player, int chapter,
+ NativeException ex);
+
+ [DllImport ("libvlc.dll",
+ EntryPoint="libvlc_media_player_get_chapter_count")]
+ public static extern
+ int PlayerGetChapterCounter (PlayerHandle player, NativeException ex);
+
+ /* PlayerWillPlay */
};
};
diff --git a/bindings/cil/src/player.cs b/bindings/cil/src/player.cs
index ce1d325..3e8c80e 100644
--- a/bindings/cil/src/player.cs
+++ b/bindings/cil/src/player.cs
@@ -35,34 +35,14 @@ using System.Runtime.InteropServices;
namespace VideoLAN.LibVLC
{
/**
- * @brief MediaPlayerHandle: unmanaged LibVLC media player pointer
+ * @brief PlayerHandle: unmanaged LibVLC media player pointer
* @ingroup Internals
*/
- internal sealed class MediaPlayerHandle : NonNullHandle
+ internal sealed class PlayerHandle : NonNullHandle
{
- [DllImport ("libvlc.dll",
- EntryPoint="libvlc_media_player_new")]
- internal static extern
- MediaPlayerHandle Create (InstanceHandle inst, NativeException ex);
- [DllImport ("libvlc.dll",
- EntryPoint="libvlc_media_player_new_from_media")]
- internal static extern
- MediaPlayerHandle Create (MediaHandle media, NativeException ex);
-
- [DllImport ("libvlc.dll",
- EntryPoint="libvlc_media_player_release")]
- internal static extern void Release (IntPtr ptr);
-
- [DllImport ("libvlc.dll",
- EntryPoint="libvlc_media_player_set_media")]
- internal static extern
- MediaPlayerHandle SetMedia (MediaPlayerHandle player,
- MediaHandle media,
- NativeException ex);
-
protected override void Destroy ()
{
- Release (handle);
+ LibVLC.PlayerRelease (handle);
}
};
@@ -71,13 +51,13 @@ namespace VideoLAN.LibVLC
* @ingroup API
* Use this class to play a media.
*/
- public class MediaPlayer : BaseObject
+ public class Player : BaseObject
{
- internal MediaPlayerHandle Handle
+ internal PlayerHandle Handle
{
get
{
- return handle as MediaPlayerHandle;
+ return handle as PlayerHandle;
}
}
@@ -96,35 +76,34 @@ namespace VideoLAN.LibVLC
{
MediaHandle mh = (value != null) ? value.Handle : null;
- MediaPlayerHandle.SetMedia (Handle, mh, null);
+ LibVLC.PlayerSetMedia (Handle, mh, null);
media = value;
}
}
/**
- * Creates an empty MediaPlayer object.
+ * Creates a player with no medias.
* An input media will be needed before this media player can be used.
*
* @param instance VLC instance
*/
- public MediaPlayer (VLC instance)
+ public Player (VLC instance)
{
this.media = null;
- handle = MediaPlayerHandle.Create (instance.Handle, ex);
- ex.Raise ();
+ handle = LibVLC.PlayerCreate (instance.Handle, ex);
+ Raise ();
}
/**
- * Creates a MediaPlayer object from a Media object.
- * This allows playing the specified media.
+ * Creates a player object for a given a media.
*
* @param media media object
*/
- public MediaPlayer (Media media)
+ public Player (Media media)
{
this.media = media;
- handle = MediaPlayerHandle.Create (media.Handle, ex);
- ex.Raise ();
+ handle = LibVLC.PlayerCreateFromMedia (media.Handle, ex);
+ Raise ();
}
};
More information about the vlc-devel
mailing list