Commit 915759dc authored by Christophe Massiot's avatar Christophe Massiot

* Exploded the outdated generic decoder ;

* Updated ChangeLog and TODO.
parent 1a03af9a
...@@ -50,6 +50,13 @@ HEAD ...@@ -50,6 +50,13 @@ HEAD
* Put most builtins in plugins again due to performances issues. * Put most builtins in plugins again due to performances issues.
* Fixed the painfully slow build process (at last!). * Fixed the painfully slow build process (at last!).
* Added new dummy input plugin. * Added new dummy input plugin.
* Wrote an ES input plug-in for .mpg files which didn't work.
* Fixed a bug in GetChunk() for very small chunks of data (hence a bug
in the SPU decoder).
* Reactivated SDL parachute in non-debug mode (because of a memory
leakage).
* Added IDEALX developer documentation in doc/.
* Removed the outdated generic decoder.
0.2.80 0.2.80
Tue, 5 Jun 2001 04:41:06 +0200 Tue, 5 Jun 2001 04:41:06 +0200
......
...@@ -30,7 +30,6 @@ AC3_SPDIF := ac3_spdif ac3_iec958 ...@@ -30,7 +30,6 @@ AC3_SPDIF := ac3_spdif ac3_iec958
LPCM_DECODER := lpcm_decoder_thread LPCM_DECODER := lpcm_decoder_thread
AUDIO_DECODER := audio_decoder adec_generic adec_layer1 adec_layer2 adec_math AUDIO_DECODER := audio_decoder adec_generic adec_layer1 adec_layer2 adec_math
SPU_DECODER := spu_decoder SPU_DECODER := spu_decoder
#GEN_DECODER := generic_decoder
VIDEO_PARSER := video_parser vpar_headers vpar_blocks vpar_synchro video_fifo VIDEO_PARSER := video_parser vpar_headers vpar_blocks vpar_synchro video_fifo
VIDEO_DECODER := video_decoder VIDEO_DECODER := video_decoder
MISC := mtime tests modules netutils MISC := mtime tests modules netutils
...@@ -44,7 +43,6 @@ C_OBJ := $(INTERFACE:%=src/interface/%.o) \ ...@@ -44,7 +43,6 @@ C_OBJ := $(INTERFACE:%=src/interface/%.o) \
$(LPCM_DECODER:%=src/lpcm_decoder/%.o) \ $(LPCM_DECODER:%=src/lpcm_decoder/%.o) \
$(AUDIO_DECODER:%=src/audio_decoder/%.o) \ $(AUDIO_DECODER:%=src/audio_decoder/%.o) \
$(SPU_DECODER:%=src/spu_decoder/%.o) \ $(SPU_DECODER:%=src/spu_decoder/%.o) \
$(GEN_DECODER:%=src/generic_decoder/%.o) \
$(VIDEO_PARSER:%=src/video_parser/%.o) \ $(VIDEO_PARSER:%=src/video_parser/%.o) \
$(VIDEO_DECODER:%=src/video_decoder/%.o) \ $(VIDEO_DECODER:%=src/video_decoder/%.o) \
$(MISC:%=src/misc/%.o) $(MISC:%=src/misc/%.o)
......
...@@ -144,7 +144,7 @@ Difficulty: Hard ...@@ -144,7 +144,7 @@ Difficulty: Hard
Urgency: Important Urgency: Important
Description: Write stream zones support Description: Write stream zones support
For random access we need to know where stream descriptors are valid For random access we need to know where stream descriptors are valid
and reside (essentially DVD plugin). -> Meuuh and reside (essentially DVD plugin).
Status: Done (stef) Status: Done (stef)
Task: 0x4d Task: 0x4d
...@@ -161,7 +161,7 @@ Description: Update documentation ...@@ -161,7 +161,7 @@ Description: Update documentation
The input structures have undergone a major restructuration with The input structures have undergone a major restructuration with
input-II. It might be a good idea to reflect thoses changes in the input-II. It might be a good idea to reflect thoses changes in the
documentation. documentation.
Status: Todo Status: Done 16 Jul 2001 (Meuuh)
Task: 0x4b Task: 0x4b
Difficulty: Guru Difficulty: Guru
...@@ -176,8 +176,7 @@ Difficulty: Medium ...@@ -176,8 +176,7 @@ Difficulty: Medium
Urgency: Normal Urgency: Normal
Description: Write ES input plugin Description: Write ES input plugin
We need to be able to read .mpg video streams, or .mp* audio streams. We need to be able to read .mpg video streams, or .mp* audio streams.
More information -> Meuuh Status: Done 27 Jun 2001 (Meuuh)
Status: Todo
Task: 0x49 Task: 0x49
Difficulty: Easy Difficulty: Easy
......
This diff is collapsed.
/*****************************************************************************
* generic_decoder.h : generic decoder thread
*****************************************************************************
* Copyright (C) 1999, 2000 VideoLAN
* $Id: generic_decoder.h,v 1.6 2001/03/21 13:42:34 sam Exp $
*
* Authors: Vincent Seguin <seguin@via.ecp.fr>
*
* 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
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA.
*****************************************************************************
/*****************************************************************************
* Requires:
* "config.h"
* "common.h"
* "mtime.h"
* "threads.h"
* "input.h"
* "decoder_fifo.h"
* XXX??
*****************************************************************************/
/*****************************************************************************
* gdec_cfg_t: generic decoder configuration structure
*****************************************************************************
* This structure is passed as an initializer when a generic decoder thread is
* created.
*****************************************************************************/
typedef struct gdec_cfg_s
{
u64 i_properties;
int i_actions; /* decoder actions */
char * psz_base_filename; /* base demux file name */
} gdec_cfg_t;
/* Properties flags */
#define GDEC_CFG_ACTIONS (1 << 0)
#define GDEC_CFG_FILENAME (1 << 1)
/*****************************************************************************
* gdec_thread_t: generic decoder thread descriptor
*****************************************************************************
* This type describes a generic decoder thread.
*****************************************************************************/
typedef struct gdec_thread_s
{
/* Thread properties and locks */
boolean_t b_die; /* `die' flag */
boolean_t b_error; /* `error' flag */
boolean_t b_active; /* `active' flag */
vlc_thread_t thread_id; /* id for thread functions */
/* Thread configuration */
int i_actions; /* decoder actions */
/* Input properties */
input_thread_t * p_input; /* input thread */
decoder_fifo_t fifo; /* PES input fifo */
/* XXX?? status info */
int * pi_status;
/* Files array - these files are used to extract ES streams from a
* demultiplexed stream */
/* XXX?? */
#ifdef STATS
/* Statistics */
count_t c_loops; /* number of loops */
count_t c_idle_loops; /* number of idle loops */
count_t c_pes; /* number of PES packets read */
#endif
} gdec_thread_t;
/* Decoder actions - this flags select which actions the decoder will perform
* when it receives a PES packet */
#define GDEC_IDENTIFY (1 << 0) /* update input's ES tables */
#define GDEC_SAVE (1 << 1) /* save all PES to a same file */
#define GDEC_SAVE_DEMUX (1 << 2) /* save PES to files by stream id */
#define GDEC_PRINT (1 << 3) /* print PES informations */
/*****************************************************************************
* Prototypes
*****************************************************************************/
/* Thread management functions */
gdec_thread_t * gdec_CreateThread ( gdec_cfg_t *p_cfg,
input_thread_t *p_input, int *pi_status );
void gdec_DestroyThread ( gdec_thread_t *p_gdec, int *pi_status );
/* Time management functions */
/* XXX?? */
/* Dynamic thread settings */
/* XXX?? */
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