#include "race.h"
#include "mmfile.h"
#include "int_types.h"
#include "macros.h"
#include "utils.h"
#include "logging.h"
#include <math.h>
#include <assert.h>
#include <stdio.h>
#include <memory.h>
#include <stdlib.h>
#include <limits.h>
#include <ogg/ogg.h>
#include <vorbis/codec.h>
#include <theora/theora.h>
#include <SDL.h>
Go to the source code of this file.
Functions | |
static int | get_packet (mm_file *mf, ogg_packet *pkt, enum stream_type type) |
static int | get_page (mm_file *mf, ogg_page *pg) |
-- | |
static int | init_theora (mm_file *mf, ogg_page *pg) |
static int | init_vorbis (mm_file *mf, ogg_page *pg) |
LOG_DEFAULT_CATEGORY (multimedia) | |
int | mm_audio_info (const mm_file *mf, unsigned *channels, unsigned *rate) |
| |
int | mm_close (mm_file *mf) |
int | mm_decode_audio (mm_file *mf, void *buf, int buflen) |
int | mm_decode_video (mm_file *mf, SDL_Overlay *ovl) |
unsigned | mm_ignore (mm_file *mf, unsigned mask) |
int | mm_open (mm_file *mf, const char *fname) |
int | mm_open_fp (mm_file *mf, FILE *file) |
int | mm_video_info (const mm_file *mf, unsigned *width, unsigned *height, float *fps) |
| |
static int | yuv_to_overlay (const mm_file *mf, const yuv_buffer *yuv, SDL_Overlay *ovl) |
static int get_packet | ( | mm_file * | mf, | |
ogg_packet * | pkt, | |||
enum stream_type | type | |||
) | [static] |
Definition at line 78 of file mmfile.c.
References mm_file::audio, mm_file::drop_packets, mm_file::end_of_stream, get_page(), INFO2, MEDIA_AUDIO, MEDIA_VIDEO, other, mm_file::video, and WARNING2.
Referenced by mm_decode_audio(), and mm_decode_video().
static int get_page | ( | mm_file * | mf, | |
ogg_page * | pg | |||
) | [static] |
--
0 on end of file
1 on successful page read
Definition at line 44 of file mmfile.c.
References bufsize, ERROR1, mm_file::file, and mm_file::sync.
Referenced by get_packet(), init_theora(), init_vorbis(), and mm_open_fp().
static int init_theora | ( | mm_file * | mf, | |
ogg_page * | pg | |||
) | [static] |
Definition at line 146 of file mmfile.c.
References get_page(), INFO1, mm_file::video, mm_file::video_ctx, mm_file::video_info, and xmalloc().
Referenced by mm_open_fp().
static int init_vorbis | ( | mm_file * | mf, | |
ogg_page * | pg | |||
) | [static] |
Definition at line 218 of file mmfile.c.
References mm_file::audio, mm_file::audio_blk, mm_file::audio_ctx, mm_file::audio_info, get_page(), INFO1, and xmalloc().
Referenced by mm_open_fp().
LOG_DEFAULT_CATEGORY | ( | multimedia | ) |
int mm_audio_info | ( | const mm_file * | mf, | |
unsigned * | channels, | |||
unsigned * | rate | |||
) |
Definition at line 514 of file mmfile.c.
Referenced by load_audio_file(), main(), mm_decode_audio(), and mm_open_fp().
int mm_close | ( | mm_file * | mf | ) |
Definition at line 438 of file mmfile.c.
Referenced by AbzFrame(), load_audio_file(), LoadNewsAnim(), main(), mm_open_fp(), News(), PlaySequence(), and Replay().
int mm_decode_video | ( | mm_file * | mf, | |
SDL_Overlay * | ovl | |||
) |
Definition at line 527 of file mmfile.c.
Referenced by AbzFrame(), LoadNewsAnim(), main(), PlayNewsAnim(), PlaySequence(), and Replay().
int mm_open | ( | mm_file * | mf, | |
const char * | fname | |||
) |
int mm_open_fp | ( | mm_file * | mf, | |
FILE * | file | |||
) |
Definition at line 366 of file mmfile.c.
Referenced by AbzFrame(), load_audio_file(), LoadNewsAnim(), mm_open(), PlaySequence(), and Replay().
int mm_video_info | ( | const mm_file * | mf, | |
unsigned * | width, | |||
unsigned * | height, | |||
float * | fps | |||
) |
Definition at line 494 of file mmfile.c.
Referenced by AbzFrame(), LoadNewsAnim(), main(), mm_open_fp(), PlaySequence(), and Replay().
static int yuv_to_overlay | ( | const mm_file * | mf, | |
const yuv_buffer * | yuv, | |||
SDL_Overlay * | ovl | |||
) | [static] |
Definition at line 295 of file mmfile.c.
References min, mm_file::video_info, and WARNING1.
Referenced by mm_decode_video().