mpv/libmpdemux
rfelker 4eb1b755bb Fix the ogg fourcc nightmare!!!
The problem: once upon a time, windows idiots decided to try to store
vorbis-in-ogg-in-avi. Of course this failed miserably, but they used
the audio format tag 0xfffe for "extended" to do this. Later someone
working on MPlayer somehow decided 0xfffe was the format for vorbis,
which is nonsense, and now that's conflicting with real wav files with
extended audio format. This patch changes demux_ogg (and mkv) to use
sane fourcc's for vorbis and theora and gets rid of the 0xfffe
nonsense so hopefully wav files with extended audio will work now.
If there are problems, we'll have to find workarounds...and drive an
18-wheeler full of cola thru the house of whoever wrote this 0xfffe
nonsense in MPlayer to begin with...


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@14844 b3059339-0415-0410-9bf9-f77b7e298cf2
2005-02-27 18:11:17 +00:00
..
realrtsp fix security vulnerability reported by iDEFENSE 2004-12-15 18:16:24 +00:00
.cvsignore
Makefile added a stream module for the vstream client library 2005-02-27 04:25:12 +00:00
README
ai_alsa.c
ai_alsa1x.c ALSA 1.x audio out driver 2004-01-11 17:07:32 +00:00
ai_oss.c fix some 10ls in sample rate handlin 2004-01-29 12:43:54 +00:00
asf.h
asf_mmst_streaming.c remove all setlocale calls, they break the behaviour of sscanf and 2005-01-20 13:22:53 +00:00
asf_streaming.c fix for streams that do not send a bitrate 2005-02-03 20:13:44 +00:00
asfheader.c fix stream selection and -bandwidth for mms-over-http. 2004-12-25 11:31:32 +00:00
audio_in.c ALSA 1.x audio out driver 2004-01-11 17:07:32 +00:00
audio_in.h ALSA 1.x audio out driver 2004-01-11 17:07:32 +00:00
aviheader.c switch from DIVX -> FMP4 fourcc for libavcodec 2005-02-22 20:24:18 +00:00
aviheader.h x86_64 fix by John Stebbins <john@stebbins.name> 2004-07-12 08:55:10 +00:00
aviprint.c removed loader/ dependancy, imported some files from g2, also used patches from Dominik Mierzejewski 2004-04-28 10:18:33 +00:00
bswap.h
cache2.c prevent segfault on shmem failer 2004-07-26 22:06:30 +00:00
cdd.h
cdda.c cdda: endianness fix 2003-12-16 07:35:04 +00:00
cddb.c potentially exploitable buffer overflow with maliciously crafted cd toc 2004-04-26 09:33:35 +00:00
cdinfo.c
config.h
cookies.c using more common function strchr instead index 2003-12-09 11:27:10 +00:00
cookies.h Send HTTP Cookies (reading from mozilla/netscape files) support by Dave Lambley <mplayer-dev-eng@dlambley.freeserve.co.uk>. Disabled by default. 2003-12-08 13:25:35 +00:00
cue_read.c string handling security fixes 2004-06-25 16:49:53 +00:00
cue_read.h
demux_asf.c Move generic length and percent pos calculation to demuxer.c 2005-01-15 16:11:45 +00:00
demux_audio.c Fix possible hang when playing broken MP3 from linear stream and remove 2005-01-29 12:55:56 +00:00
demux_avi.c Move generic length and percent pos calculation to demuxer.c 2005-01-15 16:11:45 +00:00
demux_avs.c 10l 2005-02-13 21:36:56 +00:00
demux_avs.h avisynth demuxer patch by Gianluigi Tiesi <mplayer at netfarm.it> 2005-02-13 13:39:19 +00:00
demux_demuxers.c
demux_film.c
demux_fli.c Pass header to codec in extradata (needed by ffmpeg fli decoder) 2004-01-25 17:36:30 +00:00
demux_gif.c
demux_lavf.c discard lavf packets with wrong ids 2005-01-30 09:13:28 +00:00
demux_lmlm4.c 100l 2004-01-16 03:56:25 +00:00
demux_mf.c
demux_mkv.c Fix the ogg fourcc nightmare!!! 2005-02-27 18:11:17 +00:00
demux_mov.c Mp3On4 demuxer support 2005-02-15 21:04:33 +00:00
demux_mpg.c Move generic length and percent pos calculation to demuxer.c 2005-01-15 16:11:45 +00:00
demux_nsv.c avoid always skipping first junk with a "sync lost" message 2004-09-09 19:28:54 +00:00
demux_nuv.c
demux_ogg.c Fix the ogg fourcc nightmare!!! 2005-02-27 18:11:17 +00:00
demux_pva.c
demux_rawaudio.c needed for a/v sync with compressed audio (e.g. raw .mp2 or .ac3 file) 2004-04-26 03:11:08 +00:00
demux_rawdv.c
demux_rawvideo.c y420 vs i420 typo 2004-12-16 23:54:59 +00:00
demux_real.c Do not read any more data at eof: if got eof in the middle of an audio 2005-01-24 21:57:07 +00:00
demux_realaud.c
demux_roq.c
demux_rtp.cpp Updated to conform to a small change in the LIVE.COM API. 2004-07-20 02:12:08 +00:00
demux_rtp.h Added support for handling multiplexed audio+video RTP streams. 2004-02-22 06:19:24 +00:00
demux_rtp_codec.cpp
demux_rtp_internal.h LIVE.COM tests moved to ./configure 2004-08-09 08:22:10 +00:00
demux_smjpeg.c
demux_ts.c 50000l: fixed various memleaks; CC discontibuities aren't necessarily error conditions 2005-02-25 22:27:46 +00:00
demux_ty.c Move generic length and percent pos calculation to demuxer.c 2005-01-15 16:11:45 +00:00
demux_ty_osd.c
demux_viv.c make stupid gcc versions happy 2004-03-31 05:40:31 +00:00
demux_vqf.c TwinVQ decoder and demuxer 2004-12-29 19:51:56 +00:00
demux_xmms.c removing AFMT_ dependancy 2004-12-27 17:55:06 +00:00
demux_xmms_plugin.h
demux_y4m.c fix bug reported by Leonardo Giordani: sh->aspect is not pixel aspect but movie aspect 2004-06-03 09:52:25 +00:00
demuxer.c avisynth demuxer patch by Gianluigi Tiesi <mplayer at netfarm.it> 2005-02-13 13:39:19 +00:00
demuxer.h avisynth demuxer patch by Gianluigi Tiesi <mplayer at netfarm.it> 2005-02-13 13:39:19 +00:00
dvb_defaults.h new configuration structure, gcc warn silencing 2004-04-26 21:22:33 +00:00
dvb_tune.c added support for ATSC tuner and conf.file 2005-01-06 09:43:10 +00:00
dvbin.c added support for ATSC tuner and conf.file 2005-01-06 09:43:10 +00:00
dvbin.h added support for ATSC tuner and conf.file 2005-01-06 09:43:10 +00:00
dvdnav_stream.c
dvdnav_stream.h
ebml.c 100l, no endian conversion on floats! 2005-01-13 21:56:06 +00:00
ebml.h freebsd fix (btw, why does it needs this int_max shit? 2004-01-25 16:17:38 +00:00
extension.c swf and flv through libavformat 2005-02-21 17:36:42 +00:00
frequencies.c
frequencies.h
genres.h more genre IDs by Bernd Ernesti <mplayer@lists.veego.de> 2004-08-22 14:43:42 +00:00
help_mp.h
http.c free http field_name to fix memleak 2005-01-11 17:49:59 +00:00
http.h
matroska.h Handle missing palettes in the info part of VobSubs in Matroska files correctly by giving mplayer a NULL pointer. This way it will use a default palette instead of black only. Patch by Csillag Kristof (fenwick () freemail ! hu) 2005-01-21 18:25:44 +00:00
mf.c
mf.h
mp3_hdr.c
mp3_hdr.h
mp_msg.h
mpeg_hdr.c framerate autodetection for H264 in raw/ts streams 2005-02-24 20:02:41 +00:00
mpeg_hdr.h framerate autodetection for H264 in raw/ts streams 2005-02-24 20:02:41 +00:00
ms_hdr.h Better protection against double definition of MPEGLAYER3WAVEFORMAT 2004-08-09 15:53:10 +00:00
muxer.c initial, extremely experimental, libavformat muxer; don't expect anything to work yet 2005-02-21 23:18:31 +00:00
muxer.h initial, extremely experimental, libavformat muxer; don't expect anything to work yet 2005-02-21 23:18:31 +00:00
muxer_avi.c new mpeg muxer compatible with dvd/[s]vcd; small changes in the muxer layer (sanity checks in the muxer_init functions) 2005-02-21 21:45:49 +00:00
muxer_lavf.c initial, extremely experimental, libavformat muxer; don't expect anything to work yet 2005-02-21 23:18:31 +00:00
muxer_mpeg.c soft telecine support! :)) patch by nico 2005-02-27 06:24:19 +00:00
muxer_rawvideo.c new mpeg muxer compatible with dvd/[s]vcd; small changes in the muxer layer (sanity checks in the muxer_init functions) 2005-02-21 21:45:49 +00:00
netstream.h tcp fragging bugfix by Song Du <freewizard at gmail.com> 2004-06-25 15:21:43 +00:00
network.c added support for raw udp:// streaming 2005-02-17 20:55:57 +00:00
network.h enable seeking in http streams 2004-02-17 12:30:45 +00:00
nuppelvideo.h
open.c added a stream module for the vstream client library 2005-02-27 04:25:12 +00:00
parse_es.c
parse_es.h
parse_mp4.c
parse_mp4.h Extended support for other object type IDs in the ESDS. This enables e.g. MPEG2 video in the MP4 container. 2004-11-15 15:04:57 +00:00
pnm.c Security fixes ported from upstream (xine) 2004-12-15 21:27:14 +00:00
pnm.h
qtpalette.h static tables 2004-06-25 17:03:59 +00:00
rtp.c Make rtp:// cohexist with LIVE.COM 2004-07-11 22:47:49 +00:00
rtp.h Make rtp:// cohexist with LIVE.COM 2004-07-11 22:47:49 +00:00
stheader.h Remove file-global mpadec, add ad_driver member to sh_audio_t instead. 2005-02-25 11:17:43 +00:00
stream.c added a stream module for the vstream client library 2005-02-27 04:25:12 +00:00
stream.h added a stream module for the vstream client library 2005-02-27 04:25:12 +00:00
stream_file.c mingw stdin fixes 2004-07-31 11:08:47 +00:00
stream_ftp.c
stream_netstream.c
stream_null.c
stream_vcd.c enable vcd for all darwin based sys not only mac osx 2004-10-18 21:05:14 +00:00
stream_vstream.c more on tivo vstream support.. 1000l to Joey for forgetting this file and breaking MPlayer build! :) 2005-02-27 05:53:12 +00:00
test.c
tv.c several sets of headers declare global variables in them, which causes multiple definition errors with gcc 4.x 2005-01-29 12:24:43 +00:00
tv.h several sets of headers declare global variables in them, which causes multiple definition errors with gcc 4.x 2005-01-29 12:24:43 +00:00
tvi_bsdbt848.c removing AFMT_ dependancy 2004-12-27 17:30:15 +00:00
tvi_def.h
tvi_dummy.c and more and more stupidity 2004-05-01 18:30:38 +00:00
tvi_v4l.c removing AFMT_ dependancy 2004-12-27 17:30:15 +00:00
tvi_v4l2.c removing AFMT_ dependancy 2004-12-27 17:30:15 +00:00
url.c uber 10l found by Ilia <chest4l at mail.ru> 2004-06-25 14:57:01 +00:00
url.h
vcd_read.h
vcd_read_darwin.h fix build on darwin ppc 2004-11-01 17:57:00 +00:00
vcd_read_fbsd.h
vcd_read_nbsd.h OpenBSD portability patches from the OpenBSD ports tree 2004-07-11 22:23:57 +00:00
video.c framerate autodetection for H264 in raw/ts streams 2005-02-24 20:02:41 +00:00
videodev2.h
yuv4mpeg.c replace almost obsolete email address: snel@phys.uu.nl -> rsnel@cube.dyndns.org 2005-01-08 14:32:26 +00:00
yuv4mpeg.h replace almost obsolete email address: snel@phys.uu.nl -> rsnel@cube.dyndns.org 2005-01-08 14:32:26 +00:00
yuv4mpeg_intern.h
yuv4mpeg_ratio.c

README

libmpdemux - MPlayer's input/demuxer layer  (C) A'rpi / MPlayer team
==========================================

NOTE: It is not in the final form yet! API may change...

Stream input layer:
===================
#include "stream.h"

Supported modes:
- file (by 2048 byte sectors) including STDIN (if filename "-")
- VCD disk (by 2324 byte mode2 sectors)
- network (buggy, mpg/avi download-like streaming works, asf not)
- DVD disk using with libdvdread 0.8 or 0.9

Note: optional CACHE layer with read-ahead and seek-back buffer (not finished)

Demuxer layer:
==============
#include "demuxer.h"

Supported formats:
- MPEG (PS,PES,VOB,ES), including VCD disk image files (.ISO/.BIN)
- AVI, with or without index, interleaved and non-interleaved formats
- ASF v1.0 (aka .wmv/.wma)
- Quicktime MOV - including compressed headers, CBR and VBR

Others:
=======
#include "stheader.h" - audio and video stream structs used by header parsers
#include "parse_es.h" - Mpeg ES stream parser

Using it outside of mplayer tree:
=================================
It uses a few things from mplayer tree:
config.h - system-dependent options, see ./configure
mp_msg.c/.h - mplayer's message printing code - copy it or impement your own
help_mp.h - error/info message texts
bswap.h - little/big endian conversion

If you use it in your project - please tell me!

A'rpi - arpi@thot.banki.hu