diff options
author | wm4 <wm4@nowhere> | 2012-11-05 17:02:04 +0100 |
---|---|---|
committer | wm4 <wm4@nowhere> | 2012-11-12 20:06:14 +0100 |
commit | d4bdd0473d6f43132257c9fb3848d829755167a3 (patch) | |
tree | 8021c2f7da1841393c8c832105e20cd527826d6c /libmpdemux/ebml.h | |
parent | bd48deba77bd5582c5829d6fe73a7d2571088aba (diff) | |
download | mpv-d4bdd0473d6f43132257c9fb3848d829755167a3.tar.bz2 mpv-d4bdd0473d6f43132257c9fb3848d829755167a3.tar.xz |
Rename directories, move files (step 1 of 2) (does not compile)
Tis drops the silly lib prefixes, and attempts to organize the tree in
a more logical way. Make the top-level directory less cluttered as
well.
Renames the following directories:
libaf -> audio/filter
libao2 -> audio/out
libvo -> video/out
libmpdemux -> demux
Split libmpcodecs:
vf* -> video/filter
vd*, dec_video.* -> video/decode
mp_image*, img_format*, ... -> video/
ad*, dec_audio.* -> audio/decode
libaf/format.* is moved to audio/ - this is similar to how mp_image.*
is located in video/.
Move most top-level .c/.h files to core. (talloc.c/.h is left on top-
level, because it's external.) Park some of the more annoying files
in compat/. Some of these are relicts from the time mplayer used
ffmpeg internals.
sub/ is not split, because it's too much of a mess (subtitle code is
mixed with OSD display and rendering).
Maybe the organization of core is not ideal: it mixes playback core
(like mplayer.c) and utility helpers (like bstr.c/h). Should the need
arise, the playback core will be moved somewhere else, while core
contains all helper and common code.
Diffstat (limited to 'libmpdemux/ebml.h')
-rw-r--r-- | libmpdemux/ebml.h | 107 |
1 files changed, 0 insertions, 107 deletions
diff --git a/libmpdemux/ebml.h b/libmpdemux/ebml.h deleted file mode 100644 index 866e620c61..0000000000 --- a/libmpdemux/ebml.h +++ /dev/null @@ -1,107 +0,0 @@ -/* - * This file is part of MPlayer. - * - * MPlayer 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. - * - * MPlayer 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 MPlayer; if not, write to the Free Software Foundation, Inc., - * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - */ - -#ifndef MPLAYER_EBML_H -#define MPLAYER_EBML_H - -#include <inttypes.h> -#include <stddef.h> -#include <stdbool.h> - -#include "stream/stream.h" -#include "bstr.h" - - -/* EBML version supported */ -#define EBML_VERSION 1 - -enum ebml_elemtype { - EBML_TYPE_SUBELEMENTS, - EBML_TYPE_UINT, - EBML_TYPE_SINT, - EBML_TYPE_FLOAT, - EBML_TYPE_STR, - EBML_TYPE_BINARY, - EBML_TYPE_EBML_ID, -}; - -struct ebml_field_desc { - uint32_t id; - bool multiple; - int offset; - int count_offset; - const struct ebml_elem_desc *desc; -}; - -struct ebml_elem_desc { - char *name; - enum ebml_elemtype type; - int size; - int field_count; - const struct ebml_field_desc *fields; -}; - -struct ebml_parse_ctx { - void *talloc_ctx; - int bytes_read; - bool has_errors; - bool no_error_messages; -}; - -#include "ebml_types.h" - -#define EBML_ID_INVALID 0xffffffff - - -/* matroska track types */ -#define MATROSKA_TRACK_VIDEO 0x01 /* rectangle-shaped pictures aka video */ -#define MATROSKA_TRACK_AUDIO 0x02 /* anything you can hear */ -#define MATROSKA_TRACK_COMPLEX 0x03 /* audio+video in same track used by DV */ -#define MATROSKA_TRACK_LOGO 0x10 /* overlay-pictures displayed over video*/ -#define MATROSKA_TRACK_SUBTITLE 0x11 /* text-subtitles */ -#define MATROSKA_TRACK_CONTROL 0x20 /* control-codes for menu or other stuff*/ - -#ifndef UINT64_MAX -#define UINT64_MAX 18446744073709551615ULL -#endif - -#ifndef INT64_MAX -#define INT64_MAX 9223372036854775807LL -#endif - -#define EBML_UINT_INVALID UINT64_MAX -#define EBML_INT_INVALID INT64_MAX -#define EBML_FLOAT_INVALID -1000000000.0 - - -uint32_t ebml_read_id (stream_t *s, int *length); -uint64_t ebml_read_vlen_uint (uint8_t *buffer, int *length); -int64_t ebml_read_vlen_int (uint8_t *buffer, int *length); -uint64_t ebml_read_length (stream_t *s, int *length); -uint64_t ebml_read_uint (stream_t *s, uint64_t *length); -int64_t ebml_read_int (stream_t *s, uint64_t *length); -double ebml_read_float (stream_t *s, uint64_t *length); -char *ebml_read_ascii (stream_t *s, uint64_t *length); -char *ebml_read_utf8 (stream_t *s, uint64_t *length); -int ebml_read_skip (stream_t *s, uint64_t *length); -uint32_t ebml_read_master (stream_t *s, uint64_t *length); - -int ebml_read_element(struct stream *s, struct ebml_parse_ctx *ctx, - void *target, const struct ebml_elem_desc *desc); - -#endif /* MPLAYER_EBML_H */ |