Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
Menu
Open sidebar
Steve Lhomme
VLC
Commits
322cfc68
Commit
322cfc68
authored
Jun 13, 2001
by
Stéphane Borel
Browse files
*the dvd netlist no longer stops when the fifo is empty ; it just waits
that there are free vectors again
parent
495436e7
Changes
3
Hide whitespace changes
Inline
Side-by-side
plugins/dvd/dvd_netlist.c
View file @
322cfc68
/*****************************************************************************
* dvd_netlist.c: Specific netlist for DVD packets
*
---
*
****************************************************************************
* The original is in src/input.
* There is only one major change from input_netlist.c : data is now a
* pointer to an offset in iovec ; and iovec has a reference counter. It
* will only be given back to netlist when refcount is zero.
*****************************************************************************
* Copyright (C) 1998, 1999, 2000, 2001 VideoLAN
* $Id: dvd_netlist.c,v 1.
9
2001/06/
0
3
12:47:21 sam
Exp $
* $Id: dvd_netlist.c,v 1.
10
2001/06/
1
3
00:03:08 stef
Exp $
*
* Authors: Henri Fallon <henri@videolan.org>
* Stphane Borel <stef@videolan.org>
...
...
@@ -238,9 +238,9 @@ dvd_netlist_t * DVDNetlistInit( int i_nb_iovec, int i_nb_data, int i_nb_pes,
/*****************************************************************************
* DVDGetiovec: returns an iovec pointer for a readv() operation
*****************************************************************************
* We return an iovec vector, so that readv can read many packets at a time
,
*
and we set pp_data
to direct to the fifo pointer
, which will allow us
* to get the corresponding data_packet.
* We return an iovec vector, so that readv can read many packets at a time
.
*
pp_data will be set
to direct to the fifo pointer
in DVDMviovec, which
*
will allow us
to get the corresponding data_packet.
*****************************************************************************/
struct
iovec
*
DVDGetiovec
(
void
*
p_method_data
)
{
...
...
@@ -249,23 +249,21 @@ struct iovec * DVDGetiovec( void * p_method_data )
/* cast */
p_netlist
=
(
dvd_netlist_t
*
)
p_method_data
;
/* check */
if
(
(
/* check
that we have enough free iovec
*/
while
(
(
(
p_netlist
->
i_iovec_end
-
p_netlist
->
i_iovec_start
)
&
p_netlist
->
i_nb_iovec
)
<
p_netlist
->
i_read_once
)
{
intf_ErrMsg
(
"Empty iovec FIFO (%d:%d). Unable to allocate memory"
,
p_netlist
->
i_iovec_start
,
p_netlist
->
i_iovec_end
);
return
(
NULL
);
intf_WarnMsg
(
12
,
"input info: waiting for free iovec"
);
msleep
(
INPUT_IDLE_SLEEP
);
}
if
(
(
while
(
(
(
p_netlist
->
i_data_end
-
p_netlist
->
i_data_start
)
&
p_netlist
->
i_nb_data
)
<
p_netlist
->
i_read_once
)
{
intf_ErrMsg
(
"Empty data FIFO (%d:%d). Unable to allocate memory"
,
p_netlist
->
i_data_start
,
p_netlist
->
i_data_end
);
return
(
NULL
);
intf_WarnMsg
(
12
,
"input info: waiting for free data packet"
);
msleep
(
INPUT_IDLE_SLEEP
);
}
/* readv only takes contiguous buffers
* so, as a solution, we chose to have a FIFO a bit longer
...
...
plugins/dvd/input_dvd.c
View file @
322cfc68
...
...
@@ -10,7 +10,7 @@
* -dvd_udf to find files
*****************************************************************************
* Copyright (C) 1998-2001 VideoLAN
* $Id: input_dvd.c,v 1.7
1
2001/06/1
2 22:14:44 sam
Exp $
* $Id: input_dvd.c,v 1.7
2
2001/06/1
3 00:03:08 stef
Exp $
*
* Author: Stphane Borel <stef@via.ecp.fr>
*
...
...
@@ -99,7 +99,7 @@
#define DVD_DATA_READ_ONCE (4 * DVD_BLOCK_READ_ONCE)
/* Size of netlist */
#define DVD_NETLIST_SIZE 2
048
#define DVD_NETLIST_SIZE 2
56
/*****************************************************************************
* Local prototypes
...
...
src/audio_output/aout_spdif.c
View file @
322cfc68
...
...
@@ -2,7 +2,7 @@
* aout_spdif: ac3 passthrough output
*****************************************************************************
* Copyright (C) 2001 VideoLAN
* $Id: aout_spdif.c,v 1.1
3
2001/06/1
2 18:16:49
stef Exp $
* $Id: aout_spdif.c,v 1.1
4
2001/06/1
3 00:03:08
stef Exp $
*
* Authors: Michel Kaempf <maxx@via.ecp.fr>
* Stphane Borel <stef@via.ecp.fr>
...
...
@@ -74,6 +74,7 @@ void aout_SpdifThread( aout_thread_t * p_aout )
* last significant frame */
i_blank
=
0
;
mdelta
=
0
;
mplay
=
0
;
/* Compute the theorical duration of an ac3 frame */
...
...
@@ -141,7 +142,7 @@ void aout_SpdifThread( aout_thread_t * p_aout )
if
(
i_frame
)
{
mwait
(
mplay
);
mwait
(
mplay
+
SLEEP_TIME
);
}
else
{
...
...
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