From ec166301915ef5a0b61fd4e21518f79c94f9ad12 Mon Sep 17 00:00:00 2001 From: Sam Hocevar Date: Tue, 5 Nov 2002 14:52:28 +0000 Subject: [PATCH] * ./codec/dv/dv.c: moved this single file to its parent directory; removed GetFirstPES in favour of input_ExtractPES/input_DeletePES calls. --- modules/Makefile.am | 1 - modules/codec/Modules.am | 2 ++ modules/codec/{dv => }/dv.c | 38 ++++++++++++------------------------- modules/codec/dv/.cvsignore | 2 -- modules/codec/dv/Modules.am | 1 - 5 files changed, 14 insertions(+), 30 deletions(-) rename modules/codec/{dv => }/dv.c (93%) delete mode 100644 modules/codec/dv/.cvsignore delete mode 100644 modules/codec/dv/Modules.am diff --git a/modules/Makefile.am b/modules/Makefile.am index d7a0962b05..f6f8d7977e 100644 --- a/modules/Makefile.am +++ b/modules/Makefile.am @@ -17,7 +17,6 @@ EXTRA_DIST = \ codec/a52old/downmix/Modules.am \ codec/a52old/imdct/Modules.am \ codec/cinepak/Modules.am \ - codec/dv/Modules.am \ codec/faad/Modules.am \ codec/ffmpeg/Modules.am \ codec/ffmpeg/postprocessing/Modules.am \ diff --git a/modules/codec/Modules.am b/modules/codec/Modules.am index a84b054d5a..90449fec04 100644 --- a/modules/codec/Modules.am +++ b/modules/codec/Modules.am @@ -2,3 +2,5 @@ SOURCES_a52 = modules/codec/a52.c SOURCES_lpcm = modules/codec/lpcm.c SOURCES_araw = modules/codec/araw.c SOURCES_vorbis = modules/codec/vorbis.c +SOURCES_dv = modules/codec/dv.c +#SOURCES_xvid = modules/codec/xvid.c diff --git a/modules/codec/dv/dv.c b/modules/codec/dv.c similarity index 93% rename from modules/codec/dv/dv.c rename to modules/codec/dv.c index 9de067788e..d628dfbd49 100644 --- a/modules/codec/dv/dv.c +++ b/modules/codec/dv.c @@ -2,7 +2,7 @@ * dv.c: a decoder for DV video ***************************************************************************** * Copyright (C) 2002 VideoLAN - * $Id: dv.c,v 1.4 2002/11/02 17:31:37 sigmunau Exp $ + * $Id: dv.c,v 1.1 2002/11/05 14:52:28 sam Exp $ * * Authors: Samuel Hocevar * @@ -40,7 +40,6 @@ static int RunDecoder ( decoder_fifo_t * ); static int OpenDecoder ( vlc_object_t * ); static u32 GetFourCC ( dv_sample_t ); -static pes_packet_t *GetFirstPES( decoder_fifo_t * ); /***************************************************************************** * Module descriptor @@ -75,6 +74,7 @@ static int OpenDecoder ( vlc_object_t *p_this ) static int RunDecoder ( decoder_fifo_t *p_fifo ) { u8 *p_buffer; + pes_packet_t *p_pes = NULL; int i_data = 120000; int i_aspect; @@ -199,14 +199,17 @@ static int RunDecoder ( decoder_fifo_t *p_fifo ) while( !p_fifo->b_die && !p_fifo->b_error ) { mtime_t i_pts = 0; - pes_packet_t *p_pes; GetChunk( &bit_stream, p_buffer + i_data, p_decoder->frame_size - i_data ); i_data = p_decoder->frame_size; - p_pes = GetFirstPES( p_fifo ); + if( p_pes ) + { + input_DeletePES( p_fifo->p_packets_mgt, p_pes ); + } + input_ExtractPES( p_fifo, &p_pes ); if( p_pes ) { /* Don't trust the sucker */ @@ -268,6 +271,11 @@ static int RunDecoder ( decoder_fifo_t *p_fifo ) } } + if( p_pes ) + { + input_DeletePES( p_fifo->p_packets_mgt, p_pes ); + } + free( p_buffer ); CloseBitstream( &bit_stream ); @@ -291,25 +299,3 @@ static u32 GetFourCC( dv_sample_t x ) } } -static pes_packet_t *GetFirstPES( decoder_fifo_t *p_fifo ) -{ - pes_packet_t *p_pes; - - vlc_mutex_lock( &p_fifo->data_lock ); - - /* if fifo is empty wait */ - while( !p_fifo->p_first ) - { - if( p_fifo->b_die ) - { - vlc_mutex_unlock( &p_fifo->data_lock ); - return NULL; - } - vlc_cond_wait( &p_fifo->data_wait, &p_fifo->data_lock ); - } - p_pes = p_fifo->p_first; - - vlc_mutex_unlock( &p_fifo->data_lock ); - - return p_pes; -} diff --git a/modules/codec/dv/.cvsignore b/modules/codec/dv/.cvsignore deleted file mode 100644 index ec96903b9d..0000000000 --- a/modules/codec/dv/.cvsignore +++ /dev/null @@ -1,2 +0,0 @@ -.deps -.dirstamp diff --git a/modules/codec/dv/Modules.am b/modules/codec/dv/Modules.am deleted file mode 100644 index 725749ec5b..0000000000 --- a/modules/codec/dv/Modules.am +++ /dev/null @@ -1 +0,0 @@ -SOURCES_dv = modules/codec/dv/dv.c -- 2.39.2