summaryrefslogtreecommitdiffstats
path: root/libmpdemux/demux_ogg.c
diff options
context:
space:
mode:
authorUoti Urpala <uau@glyph.nonexistent.invalid>2010-03-10 00:00:06 +0200
committerUoti Urpala <uau@glyph.nonexistent.invalid>2010-03-10 00:00:06 +0200
commitc37f09693d0edb632c80f8f38ecdb2faf3547f7f (patch)
tree44df07eacb522a97bbecd7a3a0f93e8d6a933003 /libmpdemux/demux_ogg.c
parent22a06c4ae5672c1dd629918d0a279b8af24e35c3 (diff)
parent2aafb808284d74edab6e5320e1114f5c74d5881e (diff)
downloadmpv-c37f09693d0edb632c80f8f38ecdb2faf3547f7f.tar.bz2
mpv-c37f09693d0edb632c80f8f38ecdb2faf3547f7f.tar.xz
Merge svn changes up to r30643
Diffstat (limited to 'libmpdemux/demux_ogg.c')
-rw-r--r--libmpdemux/demux_ogg.c70
1 files changed, 33 insertions, 37 deletions
diff --git a/libmpdemux/demux_ogg.c b/libmpdemux/demux_ogg.c
index 2bd6781cf2..e453f61ad4 100644
--- a/libmpdemux/demux_ogg.c
+++ b/libmpdemux/demux_ogg.c
@@ -32,6 +32,9 @@
#include "demuxer.h"
#include "stheader.h"
#include "ffmpeg_files/intreadwrite.h"
+#include "aviprint.h"
+#include "demux_mov.h"
+#include "demux_ogg.h"
#define FOURCC_VORBIS mmioFOURCC('v', 'r', 'b', 's')
#define FOURCC_SPEEX mmioFOURCC('s', 'p', 'x', ' ')
@@ -177,7 +180,8 @@ extern char *dvdsub_lang, *audio_lang;
static subtitle ogg_sub;
//FILE* subout;
-static void demux_ogg_add_sub (ogg_stream_t* os,ogg_packet* pack) {
+static void demux_ogg_add_sub(ogg_stream_t *os, ogg_packet *pack)
+{
int lcv;
char *packet = pack->packet;
@@ -365,7 +369,32 @@ static int demux_ogg_check_lang(const char *clang, const char *langlist)
return 0;
}
-static int demux_ogg_sub_reverse_id(demuxer_t *demuxer, int id);
+/** \brief Change the current subtitle stream and return its ID.
+
+ \param demuxer The demuxer whose subtitle stream will be changed.
+ \param new_num The number of the new subtitle track. The number must be
+ between 0 and ogg_d->n_text - 1.
+
+ \returns The Ogg stream number ( = page serial number) of the newly selected
+ track.
+*/
+static int demux_ogg_sub_id(demuxer_t *demuxer, int index)
+{
+ ogg_demuxer_t *ogg_d = demuxer->priv;
+ return (index < 0) ? index : (index >= ogg_d->n_text) ? -1 : ogg_d->text_ids[index];
+}
+
+/** \brief Translate the ogg track number into the subtitle number.
+ * \param demuxer The demuxer about whose subtitles we are inquiring.
+ * \param id The ogg track number of the subtitle track.
+ */
+static int demux_ogg_sub_reverse_id(demuxer_t *demuxer, int id) {
+ ogg_demuxer_t *ogg_d = demuxer->priv;
+ int i;
+ for (i = 0; i < ogg_d->n_text; i++)
+ if (ogg_d->text_ids[i] == id) return i;
+ return -1;
+}
/// Try to print out comments and also check for LANGUAGE= tag
static void demux_ogg_check_comments(demuxer_t *d, ogg_stream_t *os, int id, vorbis_comment *vc)
@@ -513,7 +542,8 @@ static int demux_ogg_add_packet(demux_stream_t* ds,ogg_stream_t* os,int id,ogg_p
/// if -forceidx build a table of all syncpoints to make seeking easier
/// otherwise try to get at least the final_granulepos
-static void demux_ogg_scan_stream(demuxer_t* demuxer) {
+static void demux_ogg_scan_stream(demuxer_t *demuxer)
+{
ogg_demuxer_t* ogg_d = demuxer->priv;
stream_t *s = demuxer->stream;
ogg_sync_state* sync = &ogg_d->sync;
@@ -635,40 +665,6 @@ static void demux_ogg_scan_stream(demuxer_t* demuxer) {
}
-void print_wave_header(WAVEFORMATEX *h, int verbose_level);
-void print_video_header(BITMAPINFOHEADER *h, int verbose_level);
-
-/* defined in demux_mov.c */
-unsigned int store_ughvlc(unsigned char *s, unsigned int v);
-
-/** \brief Change the current subtitle stream and return its ID.
-
- \param demuxer The demuxer whose subtitle stream will be changed.
- \param new_num The number of the new subtitle track. The number must be
- between 0 and ogg_d->n_text - 1.
-
- \returns The Ogg stream number ( = page serial number) of the newly selected
- track.
-*/
-int demux_ogg_sub_id(demuxer_t *demuxer, int index) {
- ogg_demuxer_t *ogg_d = demuxer->priv;
- return (index < 0) ? index : (index >= ogg_d->n_text) ? -1 : ogg_d->text_ids[index];
-}
-
-/** \brief Translate the ogg track number into the subtitle number.
- * \param demuxer The demuxer about whose subtitles we are inquiring.
- * \param id The ogg track number of the subtitle track.
- */
-static int demux_ogg_sub_reverse_id(demuxer_t *demuxer, int id) {
- ogg_demuxer_t *ogg_d = demuxer->priv;
- int i;
- for (i = 0; i < ogg_d->n_text; i++)
- if (ogg_d->text_ids[i] == id) return i;
- return -1;
-}
-
-static void demux_close_ogg(demuxer_t* demuxer);
-
static void fixup_vorbis_wf(sh_audio_t *sh, ogg_demuxer_t *od)
{
int i, offset;