Commit 2ea2975b authored by Eric Petit's avatar Eric Petit

- now vlc no longer tries to use overlay if another application already

   uses it
 - clean up
parent 07ace065
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
* InterfaceWindow.h: BeOS interface window class prototype * InterfaceWindow.h: BeOS interface window class prototype
***************************************************************************** *****************************************************************************
* Copyright (C) 1999, 2000, 2001 VideoLAN * Copyright (C) 1999, 2000, 2001 VideoLAN
* $Id: InterfaceWindow.h,v 1.3 2002/10/28 16:55:05 titer Exp $ * $Id: InterfaceWindow.h,v 1.4 2002/10/30 00:59:21 titer Exp $
* *
* Authors: Jean-Marc Dressler <polux@via.ecp.fr> * Authors: Jean-Marc Dressler <polux@via.ecp.fr>
* Tony Castley <tcastley@mail.powerup.com.au> * Tony Castley <tcastley@mail.powerup.com.au>
...@@ -124,7 +124,6 @@ class InterfaceWindow : public BWindow ...@@ -124,7 +124,6 @@ class InterfaceWindow : public BWindow
void _StoreSettings(); void _StoreSettings();
intf_thread_t* p_intf; intf_thread_t* p_intf;
es_descriptor_t* p_audio_es;
es_descriptor_t* p_spu_es; es_descriptor_t* p_spu_es;
input_thread_t* fInputThread; input_thread_t* fInputThread;
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
* vout_beos.cpp: beos video output display method * vout_beos.cpp: beos video output display method
***************************************************************************** *****************************************************************************
* Copyright (C) 2000, 2001 VideoLAN * Copyright (C) 2000, 2001 VideoLAN
* $Id: VideoOutput.cpp,v 1.4 2002/10/29 17:33:11 titer Exp $ * $Id: VideoOutput.cpp,v 1.5 2002/10/30 00:59:22 titer Exp $
* *
* Authors: Jean-Marc Dressler <polux@via.ecp.fr> * Authors: Jean-Marc Dressler <polux@via.ecp.fr>
* Samuel Hocevar <sam@zoy.org> * Samuel Hocevar <sam@zoy.org>
...@@ -486,7 +486,8 @@ VideoWindow::_AllocateBuffers(int width, int height, int* mode) ...@@ -486,7 +486,8 @@ VideoWindow::_AllocateBuffers(int width, int height, int* mode)
{ {
if (noOverlay) break; if (noOverlay) break;
bitmap[0] = new BBitmap ( bitmapFrame, bitmap[0] = new BBitmap ( bitmapFrame,
B_BITMAP_WILL_OVERLAY, B_BITMAP_WILL_OVERLAY |
B_BITMAP_RESERVE_OVERLAY_CHANNEL,
colspace[i].colspace); colspace[i].colspace);
if(bitmap[0] && bitmap[0]->InitCheck() == B_OK) if(bitmap[0] && bitmap[0]->InitCheck() == B_OK)
......
...@@ -2,12 +2,13 @@ ...@@ -2,12 +2,13 @@
* intf_vlc_wrapper.h: BeOS plugin for vlc (derived from MacOS X port ) * intf_vlc_wrapper.h: BeOS plugin for vlc (derived from MacOS X port )
***************************************************************************** *****************************************************************************
* Copyright (C) 2001 VideoLAN * Copyright (C) 2001 VideoLAN
* $Id: VlcWrapper.cpp,v 1.8 2002/10/29 17:33:11 titer Exp $ * $Id: VlcWrapper.cpp,v 1.9 2002/10/30 00:59:22 titer Exp $
* *
* Authors: Florian G. Pflug <fgp@phlo.org> * Authors: Florian G. Pflug <fgp@phlo.org>
* Jon Lech Johansen <jon-vl@nanocrew.net> * Jon Lech Johansen <jon-vl@nanocrew.net>
* Tony Casltey <tony@castley.net> * Tony Casltey <tony@castley.net>
* Stephan Aßmus <stippi@yellowbites.com> * Stephan Aßmus <stippi@yellowbites.com>
* Eric Petit <titer@videolan.org>
* *
* This program is free software{} you can redistribute it and/or modify * 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 * it under the terms of the GNU General Public License as published by
...@@ -33,16 +34,6 @@ ...@@ -33,16 +34,6 @@
#include "VlcWrapper.h" #include "VlcWrapper.h"
Intf_VLCWrapper *Intf_VLCWrapper::getVLCWrapper(intf_thread_t *p_interface)
{
static Intf_VLCWrapper *one_wrapper;
if (one_wrapper == NULL )
{
one_wrapper = new Intf_VLCWrapper(p_interface);
}
return one_wrapper;
}
Intf_VLCWrapper::Intf_VLCWrapper(intf_thread_t *p_interface) Intf_VLCWrapper::Intf_VLCWrapper(intf_thread_t *p_interface)
{ {
p_intf = p_interface; p_intf = p_interface;
...@@ -52,47 +43,6 @@ Intf_VLCWrapper::~Intf_VLCWrapper() ...@@ -52,47 +43,6 @@ Intf_VLCWrapper::~Intf_VLCWrapper()
{ {
} }
#if 0
bool Intf_VLCWrapper::manage()
{
/* p_main->p_intf->pf_manage( p_intf ); */
if ( p_intf->b_die )
{
// exit the lot
return( 1 );
}
if ( p_intf->p_sys->p_input != NULL )
{
vlc_mutex_lock( &p_intf->p_sys->p_input->stream.stream_lock );
if( !p_intf->p_sys->p_input->b_die )
{
/* New input or stream map change */
if( p_intf->p_sys->p_input->stream.b_changed ||
p_intf->p_sys->i_part !=
p_intf->p_sys->p_input->stream.p_selected_area->i_part )
{
setupMenus();
p_intf->p_sys->b_disabled_menus = 0;
}
}
vlc_mutex_unlock( &p_intf->p_sys->p_input->stream.stream_lock );
}
else if ( !p_intf->p_sys->b_disabled_menus )
{
setupMenus();
p_intf->p_sys->b_disabled_menus = 1;
}
return( 0 );
}
#endif
void Intf_VLCWrapper::quit()
{
p_intf->b_die = 1;
}
/* playlist control */ /* playlist control */
bool Intf_VLCWrapper::playlistPlay() bool Intf_VLCWrapper::playlistPlay()
{ {
...@@ -131,7 +81,6 @@ void Intf_VLCWrapper::playlistStop() ...@@ -131,7 +81,6 @@ void Intf_VLCWrapper::playlistStop()
playlist_t *p_playlist = playlist_t *p_playlist =
(playlist_t *)vlc_object_find( p_intf, VLC_OBJECT_PLAYLIST, (playlist_t *)vlc_object_find( p_intf, VLC_OBJECT_PLAYLIST,
FIND_ANYWHERE ); FIND_ANYWHERE );
playlist_Stop( p_playlist ); playlist_Stop( p_playlist );
vlc_object_release( p_playlist ); vlc_object_release( p_playlist );
} }
...@@ -609,16 +558,6 @@ bool Intf_VLCWrapper::has_audio() ...@@ -609,16 +558,6 @@ bool Intf_VLCWrapper::has_audio()
return( p_intf->p_sys->p_aout != NULL ); return( p_intf->p_sys->p_aout != NULL );
} }
//void Intf_VLCWrapper::fullscreen()
//{
// if( p_vout_bank->pp_vout[0] != NULL )
// {
// p_vout_bank->pp_vout[0]->i_changes |= VOUT_FULLSCREEN_CHANGE;
// }
//}
void Intf_VLCWrapper::eject(){}
/* playback info */ /* playback info */
const char* Intf_VLCWrapper::getTimeAsString() const char* Intf_VLCWrapper::getTimeAsString()
...@@ -800,7 +739,6 @@ void Intf_VLCWrapper::toggleTitle(int i_title) ...@@ -800,7 +739,6 @@ void Intf_VLCWrapper::toggleTitle(int i_title)
p_intf->p_sys->p_input->stream.pp_areas[i_title] ); p_intf->p_sys->p_input->stream.pp_areas[i_title] );
vlc_mutex_lock( &p_intf->p_sys->p_input->stream.stream_lock ); vlc_mutex_lock( &p_intf->p_sys->p_input->stream.stream_lock );
//setupMenus();
vlc_mutex_unlock( &p_intf->p_sys->p_input->stream.stream_lock ); vlc_mutex_unlock( &p_intf->p_sys->p_input->stream.stream_lock );
} }
...@@ -815,7 +753,6 @@ void Intf_VLCWrapper::toggleChapter(int i_chapter) ...@@ -815,7 +753,6 @@ void Intf_VLCWrapper::toggleChapter(int i_chapter)
p_intf->p_sys->p_input->stream.p_selected_area ); p_intf->p_sys->p_input->stream.p_selected_area );
vlc_mutex_lock( &p_intf->p_sys->p_input->stream.stream_lock ); vlc_mutex_lock( &p_intf->p_sys->p_input->stream.stream_lock );
// setupMenus();
vlc_mutex_unlock( &p_intf->p_sys->p_input->stream.stream_lock ); vlc_mutex_unlock( &p_intf->p_sys->p_input->stream.stream_lock );
} }
} }
...@@ -885,8 +822,6 @@ void Intf_VLCWrapper::toggleSubtitle(int i_subtitle) ...@@ -885,8 +822,6 @@ void Intf_VLCWrapper::toggleSubtitle(int i_subtitle)
} }
} }
void Intf_VLCWrapper::setupMenus(){}
int Intf_VLCWrapper::inputGetStatus() int Intf_VLCWrapper::inputGetStatus()
{ {
return 0; return 0;
......
...@@ -2,12 +2,13 @@ ...@@ -2,12 +2,13 @@
* intf_vlc_wrapper.h: BeOS plugin for vlc (derived from MacOS X port ) * intf_vlc_wrapper.h: BeOS plugin for vlc (derived from MacOS X port )
***************************************************************************** *****************************************************************************
* Copyright (C) 2001 VideoLAN * Copyright (C) 2001 VideoLAN
* $Id: VlcWrapper.h,v 1.5 2002/10/28 19:42:24 titer Exp $ * $Id: VlcWrapper.h,v 1.6 2002/10/30 00:59:22 titer Exp $
* *
* Authors: Florian G. Pflug <fgp@phlo.org> * Authors: Florian G. Pflug <fgp@phlo.org>
* Jon Lech Johansen <jon-vl@nanocrew.net> * Jon Lech Johansen <jon-vl@nanocrew.net>
* Tony Casltey <tony@castley.net> * Tony Castley <tony@castley.net>
* Stephan Aßmus <stippi@yellowbites.com> * Stephan Aßmus <stippi@yellowbites.com>
* Eric Petit <titer@videolan.org>
* *
* This program is free software; you can redistribute it and/or modify * 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 * it under the terms of the GNU General Public License as published by
...@@ -30,12 +31,11 @@ class InterfaceWindow; ...@@ -30,12 +31,11 @@ class InterfaceWindow;
class Intf_VLCWrapper; class Intf_VLCWrapper;
/***************************************************************************** /*****************************************************************************
* intf_sys_t: description and status of FB interface * intf_sys_t: internal variables of the BeOS interface
*****************************************************************************/ *****************************************************************************/
struct intf_sys_t struct intf_sys_t
{ {
InterfaceWindow * p_window; InterfaceWindow * p_window;
char i_key;
input_thread_t * p_input; input_thread_t * p_input;
playlist_t * p_playlist; playlist_t * p_playlist;
...@@ -52,17 +52,21 @@ struct intf_sys_t ...@@ -52,17 +52,21 @@ struct intf_sys_t
Intf_VLCWrapper * p_vlc_wrapper; Intf_VLCWrapper * p_vlc_wrapper;
}; };
/* Intf_VLCWrapper is a singleton class /*****************************************************************************
(only one instance at any time) */ * Intf_VLCWrapper
*****************************************************************************
* This class makes the link between the BeOS interface and the vlc core.
* There is only one Intf_VLCWrapper instance at any time, which is stored
* in p_intf->p_sys->p_vlc_wrapper
*****************************************************************************/
class Intf_VLCWrapper class Intf_VLCWrapper
{ {
public: public:
static Intf_VLCWrapper *getVLCWrapper(intf_thread_t *p_if); Intf_VLCWrapper( intf_thread_t *p_intf );
~Intf_VLCWrapper(); ~Intf_VLCWrapper();
/* static bool manage(); */
void quit();
int inputGetStatus(); int inputGetStatus();
void inputSeek();
/* playlist control */ /* playlist control */
bool playlistPlay(); bool playlistPlay();
...@@ -70,33 +74,28 @@ public: ...@@ -70,33 +74,28 @@ public:
void playlistStop(); void playlistStop();
void playlistNext(); void playlistNext();
void playlistPrev(); void playlistPrev();
/* void playlistJumpTo( int pos ); void playlistJumpTo( int );
int playlistCurrentPos();
int playlistSize(); int playlistSize();
playlistLock(); int playlistCurrentPos();
playlistUnlock();*/ void playlistLock();
void playlistUnlock();
void playlistSkip(int i); void playlistSkip(int i);
void playlistGoto(int i); void playlistGoto(int i);
void loop();
/* Playback Modes bool playlistPlaying();
PLAYLIST_REPEAT_CURRENT BList* playlistAsArray();
PLAYLIST_FORWARD void getPlaylistInfo( int32& currentIndex,
PLAYLIST_BACKWARD int32& maxIndex );
PLAYLIST_FORWARD_LOOP void getTitleInfo( int32& currentIndex,
PLAYLIST_BACKWARD_LOOP int32& maxIndex );
PLAYLIST_RANDOM void getChapterInfo( int32& currentIndex,
PLAYLIST_REVERSE_RANDOM int32& maxIndex );
*/
void getNavCapabilities( bool* canSkipPrev, void getNavCapabilities( bool* canSkipPrev,
bool* canSkipNext ); bool* canSkipNext );
void navigatePrev(); void navigatePrev();
void navigateNext(); void navigateNext();
// void channelNext();
// void channelPrev();
// void loop();
/* Stream Control */ /* Stream Control */
void playSlower(); void playSlower();
void playFaster(); void playFaster();
...@@ -110,26 +109,11 @@ public: ...@@ -110,26 +109,11 @@ public:
bool is_playing(); bool is_playing();
void maxvolume(); void maxvolume();
bool has_audio(); bool has_audio();
// void fullscreen();
void eject();
int getStatus();
void setStatus(int status);
void inputSeek();
/* playback info */ /* playback info */
const char* getTimeAsString(); const char* getTimeAsString();
float getTimeAsFloat(); float getTimeAsFloat();
void setTimeAsFloat( float i_offset ); void setTimeAsFloat( float i_offset );
bool playlistPlaying();
BList* playlistAsArray();
void getPlaylistInfo( int32& currentIndex,
int32& maxIndex );
void getTitleInfo( int32& currentIndex,
int32& maxIndex );
void getChapterInfo( int32& currentIndex,
int32& maxIndex );
/* open file/disc/network */ /* open file/disc/network */
void openFiles( BList *o_files, bool replace = true ); void openFiles( BList *o_files, bool replace = true );
...@@ -147,18 +131,8 @@ public: ...@@ -147,18 +131,8 @@ public:
void toggleSubtitle( int i_subtitle ); void toggleSubtitle( int i_subtitle );
void channelNext(); void channelNext();
void channelPrev(); void channelPrev();
void setupMenus();
void playlistJumpTo( int );
int playlistSize();
int playlistCurrentPos();
void playlistLock();
void playlistUnlock();
void loop();
//private: private:
Intf_VLCWrapper( intf_thread_t *p_intf );
es_descriptor_t * p_audio_es;
intf_thread_t *p_intf; intf_thread_t *p_intf;
}; };
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment