Commit 091aff73 authored by Laurent Aimar's avatar Laurent Aimar

* all : demuxers *have to* set pf_demux_control. (demux_vaControlDefault

 is a generic handler)
 * avi, mp4 : begin to implement a specific pf_demux_control.
parent fce2672f
......@@ -2,7 +2,7 @@
* a52.c : Raw a52 Stream input module for vlc
*****************************************************************************
* Copyright (C) 2001 VideoLAN
* $Id: a52sys.c,v 1.4 2003/08/01 00:04:28 fenrir Exp $
* $Id: a52sys.c,v 1.5 2003/09/07 22:48:29 fenrir Exp $
*
* Authors: Laurent Aimar <fenrir@via.ecp.fr>
*
......@@ -29,8 +29,6 @@
#include <vlc/vlc.h>
#include <vlc/input.h>
#include <ninput.h>
/*****************************************************************************
* Module descriptor
*****************************************************************************/
......@@ -129,6 +127,7 @@ static int Open( vlc_object_t * p_this )
}
p_input->pf_demux = Demux;
p_input->pf_demux_control = demux_vaControlDefault;
p_input->p_demux_data = p_sys = malloc( sizeof( demux_sys_t ) );
p_sys->i_time = 0;
......
......@@ -2,7 +2,7 @@
* aac.c : Raw aac Stream input module for vlc
*****************************************************************************
* Copyright (C) 2001 VideoLAN
* $Id: aac.c,v 1.2 2003/08/01 00:40:05 fenrir Exp $
* $Id: aac.c,v 1.3 2003/09/07 22:48:29 fenrir Exp $
*
* Authors: Laurent Aimar <fenrir@via.ecp.fr>
*
......@@ -29,8 +29,6 @@
#include <vlc/vlc.h>
#include <vlc/input.h>
#include <ninput.h>
/*****************************************************************************
* Module descriptor
*****************************************************************************/
......@@ -136,6 +134,7 @@ static int Open( vlc_object_t * p_this )
}
p_input->pf_demux = Demux;
p_input->pf_demux_control = demux_vaControlDefault;
p_input->p_demux_data = p_sys = malloc( sizeof( demux_sys_t ) );
p_sys->i_time = 0;
......
......@@ -2,7 +2,7 @@
* asf.c : ASFv01 file input module for vlc
*****************************************************************************
* Copyright (C) 2002-2003 VideoLAN
* $Id: asf.c,v 1.36 2003/08/25 23:36:16 fenrir Exp $
* $Id: asf.c,v 1.37 2003/09/07 22:48:29 fenrir Exp $
*
* Authors: Laurent Aimar <fenrir@via.ecp.fr>
*
......@@ -28,7 +28,6 @@
#include <vlc/vlc.h>
#include <vlc/input.h>
#include "ninput.h"
#include "codecs.h" /* BITMAPINFOHEADER, WAVEFORMATEX */
#include "libasf.h"
......@@ -117,7 +116,8 @@ static int Open( vlc_object_t * p_this )
}
/* Set p_input field */
p_input->pf_demux = Demux;
p_input->pf_demux = Demux;
p_input->pf_demux_control = demux_vaControlDefault;
p_input->p_demux_data = p_sys = malloc( sizeof( demux_sys_t ) );
memset( p_sys, 0, sizeof( demux_sys_t ) );
p_sys->i_time = -1;
......
......@@ -2,7 +2,7 @@
* libasf.c :
*****************************************************************************
* Copyright (C) 2001 VideoLAN
* $Id: libasf.c,v 1.17 2003/08/24 15:05:27 fenrir Exp $
* $Id: libasf.c,v 1.18 2003/09/07 22:48:29 fenrir Exp $
* Authors: Laurent Aimar <fenrir@via.ecp.fr>
*
* This program is free software; you can redistribute it and/or modify
......@@ -24,7 +24,6 @@
#include <vlc/vlc.h>
#include <vlc/input.h>
#include "ninput.h"
#include "codecs.h" /* BITMAPINFOHEADER, WAVEFORMATEX */
#include "libasf.h"
......
......@@ -2,7 +2,7 @@
* au.c : au file input module for vlc
*****************************************************************************
* Copyright (C) 2001-2003 VideoLAN
* $Id: au.c,v 1.5 2003/08/22 20:32:27 fenrir Exp $
* $Id: au.c,v 1.6 2003/09/07 22:48:29 fenrir Exp $
*
* Authors: Laurent Aimar <fenrir@via.ecp.fr>
*
......@@ -30,7 +30,6 @@
#include <vlc/input.h>
#include <codecs.h>
#include <ninput.h>
/*****************************************************************************
* Module descriptor
......@@ -320,6 +319,7 @@ static int Open( vlc_object_t * p_this )
(mtime_t)p_sys->wf.nSamplesPerSec;
p_input->pf_demux = DemuxPCM;
p_input->pf_demux_control = demux_vaControlDefault;
}
/* create one program */
......
......@@ -2,7 +2,7 @@
* avi.c : AVI file Stream input module for vlc
*****************************************************************************
* Copyright (C) 2001 VideoLAN
* $Id: avi.c,v 1.59 2003/08/23 11:46:06 fenrir Exp $
* $Id: avi.c,v 1.60 2003/09/07 22:48:29 fenrir Exp $
* Authors: Laurent Aimar <fenrir@via.ecp.fr>
*
* This program is free software; you can redistribute it and/or modify
......@@ -27,7 +27,6 @@
#include <vlc/vlc.h>
#include <vlc/input.h>
#include "ninput.h"
#include "codecs.h"
#include "../util/sub.h"
......@@ -58,6 +57,7 @@ vlc_module_end();
/*****************************************************************************
* Local prototypes
*****************************************************************************/
static int Control ( input_thread_t *, int, va_list );
static int Seek ( input_thread_t *, mtime_t, int );
static int Demux_Seekable ( input_thread_t * );
static int Demux_UnSeekable( input_thread_t *p_input );
......@@ -159,6 +159,7 @@ static int Open( vlc_object_t * p_this )
}
stream_Control( p_avi->s, STREAM_CAN_FASTSEEK, &p_avi->b_seekable );
p_input->pf_demux_control = Control;
p_input->pf_demux = Demux_Seekable;
/* For unseekable stream, automaticaly use Demux_UnSeekable */
if( !p_avi->b_seekable || config_GetInt( p_input, "avi-interleaved" ) )
......@@ -460,7 +461,6 @@ static int Open( vlc_object_t * p_this )
{
msg_Warn( p_input, "broken or missing index, 'seek' will be axproximative or will have strange behavour" );
}
/* fix some BeOS MediaKit generated file */
for( i = 0 ; i < p_avi->i_streams; i++ )
{
......@@ -656,7 +656,7 @@ static int Demux_Seekable( input_thread_t *p_input )
msg_Warn( p_input, "no track selected, exiting..." );
return( 0 );
}
#if 0
if( p_input->stream.p_selected_program->i_synchro_state == SYNCHRO_REINIT )
{
mtime_t i_date;
......@@ -678,7 +678,7 @@ static int Demux_Seekable( input_thread_t *p_input )
subtitle_Seek( p_avi->p_sub, p_avi->i_time );
}
}
#endif
/* wait for the good time */
......@@ -1131,8 +1131,7 @@ static int Demux_UnSeekable( input_thread_t *p_input )
*****************************************************************************
* Returns -1 in case of error, 0 in case of EOF, 1 otherwise
*****************************************************************************/
static int Seek ( input_thread_t *p_input,
mtime_t i_date, int i_percent )
static int Seek( input_thread_t *p_input, mtime_t i_date, int i_percent )
{
demux_sys_t *p_avi = p_input->p_demux_data;
......@@ -1184,7 +1183,7 @@ static int Seek ( input_thread_t *p_input,
return( -1 );
}
/* be sure that the index exit */
/* be sure that the index exist */
if( AVI_StreamChunkSet( p_input,
i_stream,
0 ) )
......@@ -1253,6 +1252,93 @@ static int Seek ( input_thread_t *p_input,
}
}
/*****************************************************************************
* Control:
*****************************************************************************
*
*****************************************************************************/
static int Control( input_thread_t *p_input, int i_query, va_list args )
{
demux_sys_t *p_sys = p_input->p_demux_data;
double f, *pf;
int64_t i64, *pi64;
switch( i_query )
{
case DEMUX_GET_POSITION:
pf = (double*)va_arg( args, double * );
if( p_sys->i_length > 0 )
{
*pf = (double)p_sys->i_time / (double)( p_sys->i_length * (mtime_t)1000000 );
return VLC_SUCCESS;
}
else if( stream_Size( p_sys->s ) > 0 )
{
unsigned int i;
int64_t i_tmp;
i64 = 0;
/* search the more advanced selected es */
for( i = 0; i < p_sys->i_streams; i++ )
{
#define tk p_sys->pp_info[i]
if( tk->b_activated && tk->i_idxposc < tk->i_idxnb )
{
i_tmp = tk->p_index[tk->i_idxposc].i_pos +
tk->p_index[tk->i_idxposc].i_length + 8;
if( i_tmp > i64 )
{
i64 = i_tmp;
}
}
#undef tk
}
*pf = (double)i64 / (double)stream_Size( p_sys->s );
return VLC_SUCCESS;
}
else
{
*pf = 0.0;
return VLC_SUCCESS;
}
case DEMUX_SET_POSITION:
if( p_sys->b_seekable )
{
int i_ret;
f = (double)va_arg( args, double );
i64 = (mtime_t)(1000000.0 * p_sys->i_length * f );
i_ret = Seek( p_input, i64, (int)(f * 100) );
if( p_sys->p_sub )
{
subtitle_Seek( p_sys->p_sub, p_sys->i_time );
}
return i_ret;
}
else
{
return demux_vaControlDefault( p_input, i_query, args );
}
case DEMUX_GET_TIME:
pi64 = (int64_t*)va_arg( args, int64_t * );
*pi64 = p_sys->i_time;
return VLC_SUCCESS;
case DEMUX_SET_TIME:
msg_Err( p_input, "FIXME DEMUX_SET_TIME to be implemented" );
return VLC_EGENERIC;
/* return demux_vaControlDefault( p_input, i_query, args ); */
case DEMUX_GET_LENGTH:
pi64 = (int64_t*)va_arg( args, int64_t * );
*pi64 = p_sys->i_length * (mtime_t)1000000;
return VLC_SUCCESS;
default:
return demux_vaControlDefault( p_input, i_query, args );
}
return VLC_EGENERIC;
}
/*****************************************************************************
* Function to convert pts to chunk or byte
......
......@@ -2,7 +2,7 @@
* libavi.c :
*****************************************************************************
* Copyright (C) 2001 VideoLAN
* $Id: libavi.c,v 1.25 2003/08/30 02:03:44 fenrir Exp $
* $Id: libavi.c,v 1.26 2003/09/07 22:48:29 fenrir Exp $
* Authors: Laurent Aimar <fenrir@via.ecp.fr>
*
* This program is free software; you can redistribute it and/or modify
......@@ -24,7 +24,6 @@
#include <vlc/vlc.h>
#include <vlc/input.h>
#include "ninput.h"
#include "codecs.h" /* BITMAPINFOHEADER */
#include "libavi.h"
......
......@@ -2,7 +2,7 @@
* demuxdump.c : Pseudo demux module for vlc (dump raw stream)
*****************************************************************************
* Copyright (C) 2001 VideoLAN
* $Id: demuxdump.c,v 1.9 2003/05/15 22:27:37 massiot Exp $
* $Id: demuxdump.c,v 1.10 2003/09/07 22:48:29 fenrir Exp $
*
* Authors: Laurent Aimar <fenrir@via.ecp.fr>
*
......@@ -84,6 +84,7 @@ static int Activate( vlc_object_t * p_this )
/* Set the demux function */
p_input->pf_demux = Demux;
p_input->pf_demux_control = demux_vaControlDefault;
/* Initialize access plug-in structures. */
if( p_input->i_mtu == 0 )
......
......@@ -2,7 +2,7 @@
* flac.c : FLAC demuc module for vlc
*****************************************************************************
* Copyright (C) 2001 VideoLAN
* $Id: flac.c,v 1.4 2003/08/17 13:56:26 gbazin Exp $
* $Id: flac.c,v 1.5 2003/09/07 22:48:29 fenrir Exp $
*
* Authors: Sigmund Augdal <sigmunau@idi.ntnu.no>
*
......@@ -72,6 +72,7 @@ static int Init( vlc_object_t * p_this )
}
p_input->pf_demux = Demux;
p_input->pf_demux_control = demux_vaControlDefault;
p_input->pf_rewind = NULL;
/* Have a peep at the show. */
......
......@@ -2,7 +2,7 @@
* mkv.cpp : matroska demuxer
*****************************************************************************
* Copyright (C) 2001 VideoLAN
* $Id: mkv.cpp,v 1.25 2003/08/26 19:43:51 hartman Exp $
* $Id: mkv.cpp,v 1.26 2003/09/07 22:48:29 fenrir Exp $
*
* Authors: Laurent Aimar <fenrir@via.ecp.fr>
*
......@@ -36,7 +36,6 @@
#include <codecs.h> /* BITMAPINFOHEADER, WAVEFORMATEX */
#include "iso_lang.h"
#include "ninput.h"
#include <iostream>
#include <cassert>
......@@ -300,6 +299,7 @@ static int Open( vlc_object_t * p_this )
/* Set the demux function */
p_input->pf_demux = Demux;
p_input->pf_demux_control = demux_vaControlDefault;
/* peek the begining */
if( input_Peek( p_input, &p_peek, 4 ) < 4 )
......
......@@ -2,7 +2,7 @@
* libmp4.c : LibMP4 library for mp4 module for vlc
*****************************************************************************
* Copyright (C) 2001 VideoLAN
* $Id: libmp4.c,v 1.31 2003/08/17 23:02:52 fenrir Exp $
* $Id: libmp4.c,v 1.32 2003/09/07 22:48:29 fenrir Exp $
* Authors: Laurent Aimar <fenrir@via.ecp.fr>
*
* This program is free software; you can redistribute it and/or modify
......@@ -519,7 +519,7 @@ int MP4_ReadBoxCommon( MP4_Stream_t *p_stream, MP4_Box_t *p_box )
/*****************************************************************************
* MP4_MP4_NextBox : Go to the next box
* MP4_NextBox : Go to the next box
*****************************************************************************
* if p_box == NULL, go to the next box in witch we are( at the begining ).
*****************************************************************************/
......@@ -566,7 +566,7 @@ int MP4_GotoBox( MP4_Stream_t *p_stream, MP4_Box_t *p_box )
* after called one of theses functions, file position is unknown
* you need to call MP4_GotoBox to go where you want
*****************************************************************************/
int MP4_ReadBoxContainerRaw( MP4_Stream_t *p_stream, MP4_Box_t *p_container )
static int MP4_ReadBoxContainerRaw( MP4_Stream_t *p_stream, MP4_Box_t *p_container )
{
MP4_Box_t *p_box;
......@@ -607,7 +607,7 @@ int MP4_ReadBoxContainerRaw( MP4_Stream_t *p_stream, MP4_Box_t *p_container )
}
int MP4_ReadBoxContainer( MP4_Stream_t *p_stream, MP4_Box_t *p_container )
static int MP4_ReadBoxContainer( MP4_Stream_t *p_stream, MP4_Box_t *p_container )
{
if( p_container->i_size <= (size_t)MP4_BOX_HEADERSIZE(p_container ) + 8 )
{
......@@ -621,12 +621,12 @@ int MP4_ReadBoxContainer( MP4_Stream_t *p_stream, MP4_Box_t *p_container )
return( MP4_ReadBoxContainerRaw( p_stream, p_container ) );
}
void MP4_FreeBox_Common( input_thread_t *p_input, MP4_Box_t *p_box )
static void MP4_FreeBox_Common( MP4_Box_t *p_box )
{
/* Up to now do nothing */
}
int MP4_ReadBoxSkip( MP4_Stream_t *p_stream, MP4_Box_t *p_box )
static int MP4_ReadBoxSkip( MP4_Stream_t *p_stream, MP4_Box_t *p_box )
{
/* XXX sometime moov is hiden in a free box */
if( p_box->p_father && p_box->p_father->i_type == VLC_FOURCC( 'r', 'o', 'o', 't' )&&
......@@ -662,7 +662,7 @@ int MP4_ReadBoxSkip( MP4_Stream_t *p_stream, MP4_Box_t *p_box )
return( 1 );
}
int MP4_ReadBox_ftyp( MP4_Stream_t *p_stream, MP4_Box_t *p_box )
static int MP4_ReadBox_ftyp( MP4_Stream_t *p_stream, MP4_Box_t *p_box )
{
MP4_READBOX_ENTER( MP4_Box_data_ftyp_t );
......@@ -688,13 +688,13 @@ int MP4_ReadBox_ftyp( MP4_Stream_t *p_stream, MP4_Box_t *p_box )
MP4_READBOX_EXIT( 1 );
}
void MP4_FreeBox_ftyp( input_thread_t *p_input, MP4_Box_t *p_box )
static void MP4_FreeBox_ftyp( MP4_Box_t *p_box )
{
FREE( p_box->data.p_ftyp->i_compatible_brands );
}
int MP4_ReadBox_mvhd( MP4_Stream_t *p_stream, MP4_Box_t *p_box )
static int MP4_ReadBox_mvhd( MP4_Stream_t *p_stream, MP4_Box_t *p_box )
{
unsigned int i;
#ifdef MP4_VERBOSE
......@@ -766,7 +766,7 @@ int MP4_ReadBox_mvhd( MP4_Stream_t *p_stream, MP4_Box_t *p_box )
MP4_READBOX_EXIT( 1 );
}
int MP4_ReadBox_tkhd( MP4_Stream_t *p_stream, MP4_Box_t *p_box )
static int MP4_ReadBox_tkhd( MP4_Stream_t *p_stream, MP4_Box_t *p_box )
{
unsigned int i;
#ifdef MP4_VERBOSE
......@@ -830,7 +830,7 @@ int MP4_ReadBox_tkhd( MP4_Stream_t *p_stream, MP4_Box_t *p_box )
}
int MP4_ReadBox_mdhd( MP4_Stream_t *p_stream, MP4_Box_t *p_box )
static int MP4_ReadBox_mdhd( MP4_Stream_t *p_stream, MP4_Box_t *p_box )
{
unsigned int i;
uint16_t i_language;
......@@ -883,7 +883,7 @@ int MP4_ReadBox_mdhd( MP4_Stream_t *p_stream, MP4_Box_t *p_box )
}
int MP4_ReadBox_hdlr( MP4_Stream_t *p_stream, MP4_Box_t *p_box )
static int MP4_ReadBox_hdlr( MP4_Stream_t *p_stream, MP4_Box_t *p_box )
{
MP4_READBOX_ENTER( MP4_Box_data_hdlr_t );
......@@ -904,12 +904,12 @@ int MP4_ReadBox_hdlr( MP4_Stream_t *p_stream, MP4_Box_t *p_box )
MP4_READBOX_EXIT( 1 );
}
void MP4_FreeBox_hdlr( input_thread_t *p_input, MP4_Box_t *p_box )
static void MP4_FreeBox_hdlr( MP4_Box_t *p_box )
{
FREE( p_box->data.p_hdlr->psz_name );
}
int MP4_ReadBox_vmhd( MP4_Stream_t *p_stream, MP4_Box_t *p_box )
static int MP4_ReadBox_vmhd( MP4_Stream_t *p_stream, MP4_Box_t *p_box )
{
unsigned int i;
......@@ -933,7 +933,7 @@ int MP4_ReadBox_vmhd( MP4_Stream_t *p_stream, MP4_Box_t *p_box )
MP4_READBOX_EXIT( 1 );
}
int MP4_ReadBox_smhd( MP4_Stream_t *p_stream, MP4_Box_t *p_box )
static int MP4_ReadBox_smhd( MP4_Stream_t *p_stream, MP4_Box_t *p_box )
{
MP4_READBOX_ENTER( MP4_Box_data_smhd_t );
......@@ -953,7 +953,7 @@ int MP4_ReadBox_smhd( MP4_Stream_t *p_stream, MP4_Box_t *p_box )
}
int MP4_ReadBox_hmhd( MP4_Stream_t *p_stream, MP4_Box_t *p_box )
static int MP4_ReadBox_hmhd( MP4_Stream_t *p_stream, MP4_Box_t *p_box )
{
MP4_READBOX_ENTER( MP4_Box_data_hmhd_t );
......@@ -977,7 +977,7 @@ int MP4_ReadBox_hmhd( MP4_Stream_t *p_stream, MP4_Box_t *p_box )
MP4_READBOX_EXIT( 1 );
}
int MP4_ReadBox_url( MP4_Stream_t *p_stream, MP4_Box_t *p_box )
static int MP4_ReadBox_url( MP4_Stream_t *p_stream, MP4_Box_t *p_box )
{
MP4_READBOX_ENTER( MP4_Box_data_url_t );
......@@ -993,12 +993,12 @@ int MP4_ReadBox_url( MP4_Stream_t *p_stream, MP4_Box_t *p_box )
}
void MP4_FreeBox_url( input_thread_t *p_input, MP4_Box_t *p_box )
static void MP4_FreeBox_url( MP4_Box_t *p_box )
{
FREE( p_box->data.p_url->psz_location )
}
int MP4_ReadBox_urn( MP4_Stream_t *p_stream, MP4_Box_t *p_box )
static int MP4_ReadBox_urn( MP4_Stream_t *p_stream, MP4_Box_t *p_box )
{
MP4_READBOX_ENTER( MP4_Box_data_urn_t );
......@@ -1014,14 +1014,14 @@ int MP4_ReadBox_urn( MP4_Stream_t *p_stream, MP4_Box_t *p_box )
#endif
MP4_READBOX_EXIT( 1 );
}
void MP4_FreeBox_urn( input_thread_t *p_input, MP4_Box_t *p_box )
static void MP4_FreeBox_urn( MP4_Box_t *p_box )
{
FREE( p_box->data.p_urn->psz_name );
FREE( p_box->data.p_urn->psz_location );
}
int MP4_ReadBox_dref( MP4_Stream_t *p_stream, MP4_Box_t *p_box )
static int MP4_ReadBox_dref( MP4_Stream_t *p_stream, MP4_Box_t *p_box )
{
MP4_READBOX_ENTER( MP4_Box_data_dref_t );
......@@ -1041,7 +1041,7 @@ int MP4_ReadBox_dref( MP4_Stream_t *p_stream, MP4_Box_t *p_box )
}
int MP4_ReadBox_stts( MP4_Stream_t *p_stream, MP4_Box_t *p_box )
static int MP4_ReadBox_stts( MP4_Stream_t *p_stream, MP4_Box_t *p_box )
{
unsigned int i;
MP4_READBOX_ENTER( MP4_Box_data_stts_t );
......@@ -1068,13 +1068,13 @@ int MP4_ReadBox_stts( MP4_Stream_t *p_stream, MP4_Box_t *p_box )
MP4_READBOX_EXIT( 1 );
}
void MP4_FreeBox_stts( input_thread_t *p_input, MP4_Box_t *p_box )
static void MP4_FreeBox_stts( MP4_Box_t *p_box )
{
FREE( p_box->data.p_stts->i_sample_count );
FREE( p_box->data.p_stts->i_sample_delta );
}
int MP4_ReadBox_ctts( MP4_Stream_t *p_stream, MP4_Box_t *p_box )
static int MP4_ReadBox_ctts( MP4_Stream_t *p_stream, MP4_Box_t *p_box )
{
unsigned int i;
MP4_READBOX_ENTER( MP4_Box_data_ctts_t );
......@@ -1102,7 +1102,7 @@ int MP4_ReadBox_ctts( MP4_Stream_t *p_stream, MP4_Box_t *p_box )
MP4_READBOX_EXIT( 1 );
}
void MP4_FreeBox_ctts( input_thread_t *p_input, MP4_Box_t *p_box )
static void MP4_FreeBox_ctts( MP4_Box_t *p_box )
{
FREE( p_box->data.p_ctts->i_sample_count );
FREE( p_box->data.p_ctts->i_sample_offset );
......@@ -1123,7 +1123,7 @@ static int MP4_ReadLengthDescriptor( uint8_t **pp_peek, int64_t *i_read )
return( i_len );
}
int MP4_ReadBox_esds( MP4_Stream_t *p_stream, MP4_Box_t *p_box )
static int MP4_ReadBox_esds( MP4_Stream_t *p_stream, MP4_Box_t *p_box )
{
#define es_descriptor p_box->data.p_esds->es_descriptor
unsigned int i_len;
......@@ -1209,7 +1209,7 @@ int MP4_ReadBox_esds( MP4_Stream_t *p_stream, MP4_Box_t *p_box )
#undef es_descriptor
}
void MP4_FreeBox_esds( input_thread_t *p_input, MP4_Box_t *p_box )
static void MP4_FreeBox_esds( MP4_Box_t *p_box )
{
FREE( p_box->data.p_esds->es_descriptor.psz_URL );
if( p_box->data.p_esds->es_descriptor.p_decConfigDescr )
......@@ -1219,7 +1219,7 @@ void MP4_FreeBox_esds( input_thread_t *p_input, MP4_Box_t *p_box )
FREE( p_box->data.p_esds->es_descriptor.p_decConfigDescr );
}
int MP4_ReadBox_sample_soun( MP4_Stream_t *p_stream, MP4_Box_t *p_box )
static int MP4_ReadBox_sample_soun( MP4_Stream_t *p_stream, MP4_Box_t *p_box )
{
unsigned int i;
......@@ -1301,7 +1301,7 @@ int MP4_ReadBox_sample_soun( MP4_Stream_t *p_stream, MP4_Box_t *p_box )
}
int MP4_ReadBox_sample_vide( MP4_Stream_t *p_stream, MP4_Box_t *p_box )
static int MP4_ReadBox_sample_vide( MP4_Stream_t *p_stream, MP4_Box_t *p_box )
{
unsigned int i;
......@@ -1367,7 +1367,7 @@ int MP4_ReadBox_sample_vide( MP4_Stream_t *p_stream, MP4_Box_t *p_box )
}
int MP4_ReadBox_stsd( MP4_Stream_t *p_stream, MP4_Box_t *p_box )
static int MP4_ReadBox_stsd( MP4_Stream_t *p_stream, MP4_Box_t *p_box )
{
MP4_READBOX_ENTER( MP4_Box_data_stsd_t );
......@@ -1389,7 +1389,7 @@ int MP4_ReadBox_stsd( MP4_Stream_t *p_stream, MP4_Box_t *p_box )
}
int MP4_ReadBox_stsz( MP4_Stream_t *p_stream, MP4_Box_t *p_box )
static int MP4_ReadBox_stsz( MP4_Stream_t *p_stream, MP4_Box_t *p_box )
{
unsigned int i;
......@@ -1421,12 +1421,12 @@ int MP4_ReadBox_stsz( MP4_Stream_t *p_stream, MP4_Box_t *p_box )
MP4_READBOX_EXIT( 1 );
}
void MP4_FreeBox_stsz( input_thread_t *p_input, MP4_Box_t *p_box )
static void MP4_FreeBox_stsz( MP4_Box_t *p_box )
{
FREE( p_box->data.p_stsz->i_entry_size );
}
int MP4_ReadBox_stsc( MP4_Stream_t *p_stream, MP4_Box_t *p_box )
static int MP4_ReadBox_stsc( MP4_Stream_t *p_stream, MP4_Box_t *p_box )
{
unsigned int i;
......@@ -1458,14 +1458,14 @@ int MP4_ReadBox_stsc( MP4_Stream_t *p_stream, MP4_Box_t *p_box )
MP4_READBOX_EXIT( 1 );
}
void MP4_FreeBox_stsc( input_thread_t *p_input, MP4_Box_t *p_box )