Mercurial > mplayer.hg
annotate libmpdemux/realrtsp/xbuffer.h @ 17711:8aa18d8e5eb6
add forward_ptr to syncpoint (+0.006% overhead)
give syncpoint and frameheader their own checksums (worst case overhead increase <0.006%)
fix filestructure so that extendability is restored
move index_ptr to the fileend so that index packets arent a special case with their reserved_bytes position
-> all packets follow the same structure now
remove "optional" word from info packets, they are not more optional then index packets
split index packets
note, this is entirely optional and a muxer which has difficulty with it can always output a single index packet
remove the index MUST be at the file end if anywher rule, its not needed anymore as index_ptr will always be at the end
info frames must be keyframes
last info frame is the most correct
comments, flames?
author | michael |
---|---|
date | Wed, 01 Mar 2006 14:19:37 +0000 |
parents | 096072d234c6 |
children |
rev | line source |
---|---|
9922 | 1 /* |
2 * xbuffer code | |
3 * | |
4 * Includes a minimalistic replacement for xine_buffer functions used in | |
5 * Real streaming code. Only function needed by this code are implemented. | |
6 * | |
7 * Most code comes from xine_buffer.c Copyright (C) 2002 the xine project | |
8 * | |
9 * WARNING: do not mix original xine_buffer functions with this code! | |
10 * xbuffers behave like xine_buffers, but are not byte-compatible with them. | |
11 * You must take care of pointers returned by xbuffers functions (no macro to | |
12 * do it automatically) | |
13 * | |
14 */ | |
15 | |
16 | |
17 #ifndef _XCL_H_ | |
18 #define _XCL_H_ | |
19 | |
20 void *xbuffer_init(int chunk_size); | |
21 void *xbuffer_free(void *buf); | |
22 void *xbuffer_copyin(void *buf, int index, const void *data, int len); | |
23 void *xbuffer_ensure_size(void *buf, int size); | |
12266 | 24 void *xbuffer_strcat(void *buf, char *data); |
9922 | 25 |
26 #endif |