Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
V
vlc-gpu
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-gpu
Commits
31e42cb1
Commit
31e42cb1
authored
May 21, 2001
by
Tony Castley
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Updated with new changes for playlist management
parent
ab1d6024
Changes
1
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
126 additions
and
47 deletions
+126
-47
plugins/beos/intf_beos.cpp
plugins/beos/intf_beos.cpp
+126
-47
No files found.
plugins/beos/intf_beos.cpp
View file @
31e42cb1
...
@@ -2,7 +2,7 @@
...
@@ -2,7 +2,7 @@
* intf_beos.cpp: beos interface
* intf_beos.cpp: beos interface
*****************************************************************************
*****************************************************************************
* Copyright (C) 1999, 2000, 2001 VideoLAN
* Copyright (C) 1999, 2000, 2001 VideoLAN
* $Id: intf_beos.cpp,v 1.
29 2001/05/10 06:47:31 sam
Exp $
* $Id: intf_beos.cpp,v 1.
30 2001/05/21 12:44:23 tcastley
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>
...
@@ -180,7 +180,7 @@ InterfaceWindow::InterfaceWindow( BRect frame, const char *name,
...
@@ -180,7 +180,7 @@ InterfaceWindow::InterfaceWindow( BRect frame, const char *name,
new
BMessage
(
START_PLAYBACK
));
new
BMessage
(
START_PLAYBACK
));
p_view
->
AddChild
(
p_play
);
p_view
->
AddChild
(
p_play
);
p_play
->
SetPlaying
();
/* p_play->SetPlaying(); */
/* Fast Foward */
/* Fast Foward */
ButtonRect
.
SetLeftTop
(
BPoint
(
xStart
,
yStart
));
ButtonRect
.
SetLeftTop
(
BPoint
(
xStart
,
yStart
));
...
@@ -255,10 +255,10 @@ void InterfaceWindow::MessageReceived( BMessage * p_message )
...
@@ -255,10 +255,10 @@ void InterfaceWindow::MessageReceived( BMessage * p_message )
switch
(
p_message
->
what
)
switch
(
p_message
->
what
)
{
{
//
case B_ABOUT_REQUESTED:
case
B_ABOUT_REQUESTED
:
//
alert = new BAlert(VOUT_TITLE, "BeOS " VOUT_TITLE "\n\n<www.videolan.org>", "Ok");
alert
=
new
BAlert
(
VOUT_TITLE
,
"BeOS "
VOUT_TITLE
"
\n\n
<www.videolan.org>"
,
"Ok"
);
//
alert->Go();
alert
->
Go
();
//
break;
break
;
case
OPEN_FILE
:
case
OPEN_FILE
:
if
(
file_panel
)
if
(
file_panel
)
...
@@ -273,13 +273,13 @@ void InterfaceWindow::MessageReceived( BMessage * p_message )
...
@@ -273,13 +273,13 @@ void InterfaceWindow::MessageReceived( BMessage * p_message )
case
OPEN_DVD
:
case
OPEN_DVD
:
const
char
*
psz_device
;
const
char
*
psz_device
;
char
psz_
method
[
B_FILE_NAME_LENGTH
+
4
];
char
psz_
source
[
B_FILE_NAME_LENGTH
+
4
];
if
(
p_message
->
FindString
(
"device"
,
&
psz_device
)
!=
B_ERROR
)
if
(
p_message
->
FindString
(
"device"
,
&
psz_device
)
!=
B_ERROR
)
{
{
snprintf
(
psz_
method
,
B_FILE_NAME_LENGTH
+
4
,
snprintf
(
psz_
source
,
B_FILE_NAME_LENGTH
+
4
,
"dvd:%s"
,
psz_device
);
"dvd:%s"
,
psz_device
);
psz_
method
[
strlen
(
psz_method
)
]
=
'\0'
;
psz_
source
[
strlen
(
psz_source
)
]
=
'\0'
;
intf_PlaylistAdd
(
p_main
->
p_playlist
,
PLAYLIST_END
,
psz_method
);
intf_PlaylistAdd
(
p_main
->
p_playlist
,
PLAYLIST_END
,
(
char
*
)
psz_source
);
}
}
break
;
break
;
...
@@ -295,33 +295,42 @@ void InterfaceWindow::MessageReceived( BMessage * p_message )
...
@@ -295,33 +295,42 @@ void InterfaceWindow::MessageReceived( BMessage * p_message )
p_aout_bank
->
pp_aout
[
i_index
]
->
i_volume
=
0
;
p_aout_bank
->
pp_aout
[
i_index
]
->
i_volume
=
0
;
}
}
vlc_mutex_unlock
(
&
p_aout_bank
->
lock
);
vlc_mutex_unlock
(
&
p_aout_bank
->
lock
);
snooze
(
400000
);
snooze
(
400000
);
input_SetStatus
(
p_intf
->
p_input
,
INPUT_STATUS_END
);
/* end playing item */
p_intf
->
p_input
->
b_eof
=
1
;
/* update playlist */
vlc_mutex_lock
(
&
p_main
->
p_playlist
->
change_lock
);
p_main
->
p_playlist
->
i_index
--
;
p_main
->
p_playlist
->
b_stopped
=
1
;
vlc_mutex_unlock
(
&
p_main
->
p_playlist
->
change_lock
);
}
}
break
;
break
;
case
START_PLAYBACK
:
case
START_PLAYBACK
:
// starts playing in normal mode
/* starts playing in normal mode */
// if (p_intf->p_input != NULL )
/* if (p_intf->p_input != NULL )
//
// if (p_main->p_aout != NULL)
if (p_main->p_aout != NULL)
// {
{
// p_main->p_aout->i_vol = vol_val;
p_main->p_aout->i_vol = vol_val;
// }
}
// snooze(400000);
snooze(400000);
// input_SetStatus(p_intf->p_input, INPUT_STATUS_PLAY);
input_SetStatus(p_intf->p_input, INPUT_STATUS_PLAY);
// playback_status = PLAYING;
playback_status = PLAYING;
// }
}
// break;
break;
*/
case
PAUSE_PLAYBACK
:
case
PAUSE_PLAYBACK
:
/
/ pause the playback
/
* toggle between pause and play */
if
(
p_intf
->
p_input
!=
NULL
)
if
(
p_intf
->
p_input
!=
NULL
)
{
{
/
/ mute the volume if currently playing
/
* pause if currently playing */
if
(
playback_status
==
PLAYING
)
if
(
playback_status
==
PLAYING
)
{
{
/* mute the sound */
vlc_mutex_lock
(
&
p_aout_bank
->
lock
);
vlc_mutex_lock
(
&
p_aout_bank
->
lock
);
for
(
i_index
=
0
;
i_index
<
p_aout_bank
->
i_count
;
i_index
++
)
for
(
i_index
=
0
;
i_index
<
p_aout_bank
->
i_count
;
i_index
++
)
{
{
...
@@ -330,11 +339,18 @@ void InterfaceWindow::MessageReceived( BMessage * p_message )
...
@@ -330,11 +339,18 @@ void InterfaceWindow::MessageReceived( BMessage * p_message )
p_aout_bank
->
pp_aout
[
i_index
]
->
i_volume
=
0
;
p_aout_bank
->
pp_aout
[
i_index
]
->
i_volume
=
0
;
}
}
vlc_mutex_unlock
(
&
p_aout_bank
->
lock
);
vlc_mutex_unlock
(
&
p_aout_bank
->
lock
);
/* pause the movie */
input_SetStatus
(
p_intf
->
p_input
,
INPUT_STATUS_PAUSE
);
vlc_mutex_lock
(
&
p_main
->
p_playlist
->
change_lock
);
p_main
->
p_playlist
->
b_stopped
=
0
;
vlc_mutex_unlock
(
&
p_main
->
p_playlist
->
change_lock
);
playback_status
=
PAUSED
;
playback_status
=
PAUSED
;
}
}
else
else
// restore the volume
{
{
/* Play after pausing */
/* Restore the volume */
vlc_mutex_lock
(
&
p_aout_bank
->
lock
);
vlc_mutex_lock
(
&
p_aout_bank
->
lock
);
for
(
i_index
=
0
;
i_index
<
p_aout_bank
->
i_count
;
i_index
++
)
for
(
i_index
=
0
;
i_index
<
p_aout_bank
->
i_count
;
i_index
++
)
{
{
...
@@ -343,18 +359,40 @@ void InterfaceWindow::MessageReceived( BMessage * p_message )
...
@@ -343,18 +359,40 @@ void InterfaceWindow::MessageReceived( BMessage * p_message )
p_aout_bank
->
pp_aout
[
i_index
]
->
i_savedvolume
=
0
;
p_aout_bank
->
pp_aout
[
i_index
]
->
i_savedvolume
=
0
;
}
}
vlc_mutex_unlock
(
&
p_aout_bank
->
lock
);
vlc_mutex_unlock
(
&
p_aout_bank
->
lock
);
snooze
(
400000
);
/* Start playing */
input_SetStatus
(
p_intf
->
p_input
,
INPUT_STATUS_PLAY
);
p_main
->
p_playlist
->
b_stopped
=
0
;
playback_status
=
PLAYING
;
playback_status
=
PLAYING
;
}
}
}
snooze
(
400000
);
else
input_SetStatus
(
p_intf
->
p_input
,
INPUT_STATUS_PAUSE
);
{
/* Play a new file */
vlc_mutex_lock
(
&
p_main
->
p_playlist
->
change_lock
);
if
(
p_main
->
p_playlist
->
b_stopped
)
{
if
(
p_main
->
p_playlist
->
i_size
)
{
vlc_mutex_unlock
(
&
p_main
->
p_playlist
->
change_lock
);
intf_PlaylistJumpto
(
p_main
->
p_playlist
,
p_main
->
p_playlist
->
i_index
);
playback_status
=
PLAYING
;
}
else
{
vlc_mutex_unlock
(
&
p_main
->
p_playlist
->
change_lock
);
}
}
}
}
break
;
break
;
case
FASTER_PLAY
:
case
FASTER_PLAY
:
/
/ cycle the fast playback modes
/
* cycle the fast playback modes */
if
(
p_intf
->
p_input
!=
NULL
)
if
(
p_intf
->
p_input
!=
NULL
)
{
{
/* mute the sound */
vlc_mutex_lock
(
&
p_aout_bank
->
lock
);
vlc_mutex_lock
(
&
p_aout_bank
->
lock
);
for
(
i_index
=
0
;
i_index
<
p_aout_bank
->
i_count
;
i_index
++
)
for
(
i_index
=
0
;
i_index
<
p_aout_bank
->
i_count
;
i_index
++
)
{
{
...
@@ -363,16 +401,21 @@ void InterfaceWindow::MessageReceived( BMessage * p_message )
...
@@ -363,16 +401,21 @@ void InterfaceWindow::MessageReceived( BMessage * p_message )
p_aout_bank
->
pp_aout
[
i_index
]
->
i_volume
=
0
;
p_aout_bank
->
pp_aout
[
i_index
]
->
i_volume
=
0
;
}
}
vlc_mutex_unlock
(
&
p_aout_bank
->
lock
);
vlc_mutex_unlock
(
&
p_aout_bank
->
lock
);
snooze
(
400000
);
snooze
(
400000
);
/* change the fast play mode */
input_SetStatus
(
p_intf
->
p_input
,
INPUT_STATUS_FASTER
);
input_SetStatus
(
p_intf
->
p_input
,
INPUT_STATUS_FASTER
);
vlc_mutex_lock
(
&
p_main
->
p_playlist
->
change_lock
);
p_main
->
p_playlist
->
b_stopped
=
0
;
vlc_mutex_unlock
(
&
p_main
->
p_playlist
->
change_lock
);
}
}
break
;
break
;
case
SLOWER_PLAY
:
case
SLOWER_PLAY
:
/
/ cycle the slow playback modes
/
* cycle the slow playback modes */
if
(
p_intf
->
p_input
!=
NULL
)
if
(
p_intf
->
p_input
!=
NULL
)
{
{
/* mute the sound */
vlc_mutex_lock
(
&
p_aout_bank
->
lock
);
vlc_mutex_lock
(
&
p_aout_bank
->
lock
);
for
(
i_index
=
0
;
i_index
<
p_aout_bank
->
i_count
;
i_index
++
)
for
(
i_index
=
0
;
i_index
<
p_aout_bank
->
i_count
;
i_index
++
)
{
{
...
@@ -381,18 +424,22 @@ void InterfaceWindow::MessageReceived( BMessage * p_message )
...
@@ -381,18 +424,22 @@ void InterfaceWindow::MessageReceived( BMessage * p_message )
p_aout_bank
->
pp_aout
[
i_index
]
->
i_volume
=
0
;
p_aout_bank
->
pp_aout
[
i_index
]
->
i_volume
=
0
;
}
}
vlc_mutex_unlock
(
&
p_aout_bank
->
lock
);
vlc_mutex_unlock
(
&
p_aout_bank
->
lock
);
snooze
(
400000
);
snooze
(
400000
);
/* change the slower play */
input_SetStatus
(
p_intf
->
p_input
,
INPUT_STATUS_SLOWER
);
input_SetStatus
(
p_intf
->
p_input
,
INPUT_STATUS_SLOWER
);
vlc_mutex_lock
(
&
p_main
->
p_playlist
->
change_lock
);
p_main
->
p_playlist
->
b_stopped
=
0
;
vlc_mutex_unlock
(
&
p_main
->
p_playlist
->
change_lock
);
}
}
break
;
break
;
case
SEEK_PLAYBACK
:
case
SEEK_PLAYBACK
:
/
/ handled by semaphores;
/
* handled by semaphores */
break
;
break
;
case
VOLUME_CHG
:
case
VOLUME_CHG
:
/
/ adjust the volume
/
* adjust the volume */
vlc_mutex_lock
(
&
p_aout_bank
->
lock
);
vlc_mutex_lock
(
&
p_aout_bank
->
lock
);
for
(
i_index
=
0
;
i_index
<
p_aout_bank
->
i_count
;
i_index
++
)
for
(
i_index
=
0
;
i_index
<
p_aout_bank
->
i_count
;
i_index
++
)
{
{
...
@@ -409,7 +456,7 @@ void InterfaceWindow::MessageReceived( BMessage * p_message )
...
@@ -409,7 +456,7 @@ void InterfaceWindow::MessageReceived( BMessage * p_message )
break
;
break
;
case
VOLUME_MUTE
:
case
VOLUME_MUTE
:
/
/ mute
/
* toggle muting */
vlc_mutex_lock
(
&
p_aout_bank
->
lock
);
vlc_mutex_lock
(
&
p_aout_bank
->
lock
);
for
(
i_index
=
0
;
i_index
<
p_aout_bank
->
i_count
;
i_index
++
)
for
(
i_index
=
0
;
i_index
<
p_aout_bank
->
i_count
;
i_index
++
)
{
{
...
@@ -432,16 +479,30 @@ void InterfaceWindow::MessageReceived( BMessage * p_message )
...
@@ -432,16 +479,30 @@ void InterfaceWindow::MessageReceived( BMessage * p_message )
case
SELECT_CHANNEL
:
case
SELECT_CHANNEL
:
{
{
int32
i
=
p_message
->
FindInt32
(
"channel"
);
int32
i
=
p_message
->
FindInt32
(
"channel"
);
if
(
i
==
-
1
)
{
input_ChangeES
(
p_intf
->
p_input
,
NULL
,
AUDIO_ES
);
}
else
{
input_ChangeES
(
p_intf
->
p_input
,
input_ChangeES
(
p_intf
->
p_input
,
p_intf
->
p_input
->
stream
.
pp_es
[
i
],
1
);
p_intf
->
p_input
->
stream
.
pp_es
[
i
],
AUDIO_ES
);
}
}
}
break
;
break
;
case
SELECT_SUBTITLE
:
case
SELECT_SUBTITLE
:
{
{
int32
i
=
p_message
->
FindInt32
(
"subtitle"
);
int32
i
=
p_message
->
FindInt32
(
"subtitle"
);
if
(
i
==
-
1
)
{
input_ChangeES
(
p_intf
->
p_input
,
NULL
,
SPU_ES
);
}
else
{
input_ChangeES
(
p_intf
->
p_input
,
input_ChangeES
(
p_intf
->
p_input
,
p_intf
->
p_input
->
stream
.
pp_es
[
i
],
2
);
p_intf
->
p_input
->
stream
.
pp_es
[
i
],
SPU_ES
);
}
}
}
break
;
break
;
...
@@ -453,9 +514,8 @@ void InterfaceWindow::MessageReceived( BMessage * p_message )
...
@@ -453,9 +514,8 @@ void InterfaceWindow::MessageReceived( BMessage * p_message )
{
{
BPath
path
(
&
ref
);
BPath
path
(
&
ref
);
intf_PlaylistAdd
(
p_main
->
p_playlist
,
intf_PlaylistAdd
(
p_main
->
p_playlist
,
PLAYLIST_END
,
path
.
Path
()
);
PLAYLIST_END
,
(
char
*
)
path
.
Path
()
);
}
}
}
}
break
;
break
;
...
@@ -630,15 +690,33 @@ int LanguageMenu::GetChannels()
...
@@ -630,15 +690,33 @@ int LanguageMenu::GetChannels()
{
{
char
*
psz_name
;
char
*
psz_name
;
bool
b_active
;
bool
b_active
;
bool
b_found
;
BMessage
*
msg
;
int
i
;
int
i
;
es_descriptor_t
*
p_es
;
es_descriptor_t
*
p_es
=
NULL
;
/* Insert the null */
if
(
kind
==
AUDIO_ES
)
//audio
{
msg
=
new
BMessage
(
SELECT_CHANNEL
);
msg
->
AddInt32
(
"channel"
,
-
1
);
}
else
{
msg
=
new
BMessage
(
SELECT_SUBTITLE
);
msg
->
AddInt32
(
"subtitle"
,
-
1
);
}
BMenuItem
*
menu_item
;
menu_item
=
new
BMenuItem
(
"None"
,
msg
);
AddItem
(
menu_item
);
menu_item
->
SetMarked
(
TRUE
);
if
(
p_intf
->
p_input
==
NULL
)
if
(
p_intf
->
p_input
==
NULL
)
{
{
return
1
;
return
1
;
}
}
vlc_mutex_lock
(
&
p_intf
->
p_input
->
stream
.
stream_lock
);
for
(
i
=
0
;
i
<
p_intf
->
p_input
->
stream
.
i_selected_es_number
;
i
++
)
for
(
i
=
0
;
i
<
p_intf
->
p_input
->
stream
.
i_selected_es_number
;
i
++
)
{
{
if
(
kind
==
p_intf
->
p_input
->
stream
.
pp_selected_es
[
i
]
->
i_cat
)
if
(
kind
==
p_intf
->
p_input
->
stream
.
pp_selected_es
[
i
]
->
i_cat
)
...
@@ -652,7 +730,6 @@ int LanguageMenu::GetChannels()
...
@@ -652,7 +730,6 @@ int LanguageMenu::GetChannels()
if
(
kind
==
p_intf
->
p_input
->
stream
.
pp_es
[
i
]
->
i_cat
)
if
(
kind
==
p_intf
->
p_input
->
stream
.
pp_es
[
i
]
->
i_cat
)
{
{
psz_name
=
p_intf
->
p_input
->
stream
.
pp_es
[
i
]
->
psz_desc
;
psz_name
=
p_intf
->
p_input
->
stream
.
pp_es
[
i
]
->
psz_desc
;
BMessage
*
msg
;
if
(
kind
==
AUDIO_ES
)
//audio
if
(
kind
==
AUDIO_ES
)
//audio
{
{
msg
=
new
BMessage
(
SELECT_CHANNEL
);
msg
=
new
BMessage
(
SELECT_CHANNEL
);
...
@@ -670,6 +747,8 @@ int LanguageMenu::GetChannels()
...
@@ -670,6 +747,8 @@ int LanguageMenu::GetChannels()
menu_item
->
SetMarked
(
b_active
);
menu_item
->
SetMarked
(
b_active
);
}
}
}
}
vlc_mutex_unlock
(
&
p_intf
->
p_input
->
stream
.
stream_lock
);
}
}
/*****************************************************************************
/*****************************************************************************
...
...
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