summaryrefslogtreecommitdiffstats
path: root/libmpdemux/muxer.h
diff options
context:
space:
mode:
authorarpi <arpi@b3059339-0415-0410-9bf9-f77b7e298cf2>2003-01-19 00:33:11 +0000
committerarpi <arpi@b3059339-0415-0410-9bf9-f77b7e298cf2>2003-01-19 00:33:11 +0000
commit7a7d2cdd249a0bae74268f34c464ec0474a39894 (patch)
treed68d1e721cbc0ba1b06fbc52e3b7f201e27c363d /libmpdemux/muxer.h
parent970435ce12de15022db3f920b293799462dd7518 (diff)
downloadmpv-7a7d2cdd249a0bae74268f34c464ec0474a39894.tar.bz2
mpv-7a7d2cdd249a0bae74268f34c464ec0474a39894.tar.xz
Cleanup of the muxer API, func parameters muxer & muxer_f eliminated.
patch by Andriy N. Gritsenko <andrej@lucky.net> git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@9008 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'libmpdemux/muxer.h')
-rw-r--r--libmpdemux/muxer.h17
1 files changed, 10 insertions, 7 deletions
diff --git a/libmpdemux/muxer.h b/libmpdemux/muxer.h
index 4410209559..1b7477cc68 100644
--- a/libmpdemux/muxer.h
+++ b/libmpdemux/muxer.h
@@ -34,6 +34,8 @@ typedef struct {
// mpeg specific:
unsigned int gop_start; // frame number of this GOP start
size_t ipb[3]; // sizes of I/P/B frames
+ // muxer of that stream
+ struct muxer_t *muxer;
} muxer_stream_t;
typedef struct {
@@ -57,17 +59,18 @@ typedef struct muxer_t{
//int num_streams;
muxer_stream_t* def_v; // default video stream (for general headers)
muxer_stream_t* streams[MUXER_MAX_STREAMS];
- void (*cont_write_chunk)(struct muxer_t *,muxer_stream_t *,FILE *,size_t,unsigned int);
- void (*cont_write_header)(struct muxer_t *,FILE *);
- void (*cont_write_index)(struct muxer_t *,FILE *);
+ void (*cont_write_chunk)(muxer_stream_t *,size_t,unsigned int);
+ void (*cont_write_header)(struct muxer_t *);
+ void (*cont_write_index)(struct muxer_t *);
muxer_stream_t* (*cont_new_stream)(struct muxer_t *,int);
+ FILE* file;
} muxer_t;
-muxer_t* muxer_new_muxer(int type);
+muxer_t *muxer_new_muxer(int type,FILE *);
#define muxer_new_stream(muxer,a) muxer->cont_new_stream(muxer,a)
-#define muxer_write_chunk(muxer,a,b,c,d) muxer->cont_write_chunk(muxer,a,b,c,d)
-#define muxer_write_header(muxer,f) muxer->cont_write_header(muxer,f)
-#define muxer_write_index(muxer,f) muxer->cont_write_index(muxer,f)
+#define muxer_write_chunk(a,b,c) a->muxer->cont_write_chunk(a,b,c)
+#define muxer_write_header(muxer) muxer->cont_write_header(muxer)
+#define muxer_write_index(muxer) muxer->cont_write_index(muxer)
void muxer_init_muxer_avi(muxer_t *);
void muxer_init_muxer_mpeg(muxer_t *);