Commit Graph

53 Commits

Author SHA1 Message Date
reimar ca2af2d0e7 Add support for parsing audio streams (though should be easy to extend to video)
via libavcodec.
Parsing can be done at the demuxer stage (currently disabled) or at the decoder
(ad_ffmpeg, enabled).
Should allow using the libavcodec AAC, DTS, ... decoders independent of container
format.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30130 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-12-27 15:28:01 +00:00
reimar bcda7b2f99 Remove currently unneeded members accidentally added in the last revision.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30129 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-12-27 14:42:37 +00:00
reimar 52dab179cb Introduce a sh_common struct that contains the parts in common by the audio, video
and sub "stream headers".
One reason for this is to help avoid/make more obvious things like members with
the same function but different name (extradata vs. codecdata etc.), or members
with the same name but different semantics (pts for audio vs. pts for video).


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30128 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-12-27 14:40:56 +00:00
diego f077569dff Add standard license header to all files in libmpdemux.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29280 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-05-08 21:51:13 +00:00
aurel 97293969b4 Factorize vobsub idx/extradata handling.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27841 b3059339-0415-0410-9bf9-f77b7e298cf2
2008-10-27 22:51:22 +00:00
diego e0b1c9a6b7 Give a CONFIG_ prefix to preprocessor directives that lacked one and
change arbitrary prefixes to CONFIG_.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27429 b3059339-0415-0410-9bf9-f77b7e298cf2
2008-08-07 12:20:50 +00:00
diego 4b141479da Start unifying names of internal preprocessor directives.
Replace all USE_ prefixes by CONFIG_ prefixes to indicate
options which are configurable.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27373 b3059339-0415-0410-9bf9-f77b7e298cf2
2008-07-30 12:01:30 +00:00
eugeni 7cc46c2e87 Support 'default' attribute for audio and subtitle tracks.
The first default track is chosen for playback if language-based selection
failes. Additionally, for audio tracks, the first one is chosen if there are
no default tracks at all.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@26301 b3059339-0415-0410-9bf9-f77b7e298cf2
2008-03-30 16:55:46 +00:00
diego 67d7fb2015 Add missing header #includes to fix 'make checkheaders'.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@26175 b3059339-0415-0410-9bf9-f77b7e298cf2
2008-03-05 23:32:01 +00:00
eugeni 85a8aa6f8e Add language info to sh_sub_t and sh_audio_t.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@26114 b3059339-0415-0410-9bf9-f77b7e298cf2
2008-02-29 17:25:33 +00:00
diego 8efb2fa21c Add MPLAYER_ prefix to multiple inclusion guards.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@26061 b3059339-0415-0410-9bf9-f77b7e298cf2
2008-02-22 09:09:46 +00:00
diego 835c654bb0 typo fix: inited --> initialized
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@25994 b3059339-0415-0410-9bf9-f77b7e298cf2
2008-02-14 14:23:55 +00:00
eugeni 18e9531401 Add extradata to sh_sub_t.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@25680 b3059339-0415-0410-9bf9-f77b7e298cf2
2008-01-11 21:45:10 +00:00
diego fba0b66ff9 Add explanatory comments to the #endif part of multiple inclusion guards.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@25563 b3059339-0415-0410-9bf9-f77b7e298cf2
2007-12-31 16:15:50 +00:00
uau a6d6f18216 Clean up some fields in stheader.h structs
sh_video_t: void *video_out: only assigned to, never read. Remove.
sh_video_t: void *vfilter: change type to struct vf_instance_s *
sh_audio_t: void *afilter: change type to struct af_stream_s *

The latter two never hold different types so there's no reason to use
void *. Maybe they were originally defined that way because the
option of using pointers to incomplete struct types was missed (the
typedefs vf_instance_t and af_stream_t would require extra headers)?


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@24919 b3059339-0415-0410-9bf9-f77b7e298cf2
2007-11-01 06:52:14 +00:00
nicodvb 1dbfe77925 added .stream_aspect to st_video_t: if non-zero and if not specified otherwise
by the user the video pipeline will use it as current aspect ratio


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@24319 b3059339-0415-0410-9bf9-f77b7e298cf2
2007-09-01 15:54:45 +00:00
diego 3e9e4acd8d Do not use leading underscores in multiple inclusion guards, they are reserved.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@23709 b3059339-0415-0410-9bf9-f77b7e298cf2
2007-07-02 22:34:45 +00:00
diego 437e32353f Consistently use filename as multiple inclusion guard.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@23707 b3059339-0415-0410-9bf9-f77b7e298cf2
2007-07-02 21:34:39 +00:00
uau c60af33716 Move the sh_audio->delay field to mpctx->delay.
The value is related to overall a/v sync and is not used by audio
demuxers or decoders.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@22506 b3059339-0415-0410-9bf9-f77b7e298cf2
2007-03-11 06:16:14 +00:00
uau 1390d0cf93 Reorganize code to move more things out of main().
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@21093 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-11-20 09:12:07 +00:00
reimar 48c301ddbc Move sh_sub_t to stheader.h, where all the other sh structs are defined
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@20892 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-11-13 18:38:29 +00:00
reimar 89b0172dce Add forgotten new_sh_sub
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@20889 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-11-13 16:18:05 +00:00
reimar ccf75d6711 Get rid of demux_aid_vid_mismatch mess.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@19546 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-08-26 19:17:04 +00:00
uau e2727ec797 Add a new video pts tracking mode, enabled by option -correct-pts.
This mode has the following differences:
- Video timing is correct for streams with B frames, at least with some
  demuxers.
- Video filters can modify frame timestamps and insert new frames, and
  removing frames is handled better than before.
- Some things are known to break, it's not usable as the default yet.

Things should work as before when the -correct-pts option is not used.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@18922 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-07-06 06:58:17 +00:00
uau 7022f65d0c Change free_sh_audio() to take demuxer and stream id as parameters
(same as new_sh_audio()) instead of sh_audio_t *, use those to remove
the pointer from demuxer->a_streams[] before freeing it.

Some demuxers use free_sh_audio() to undo the creation of an
already-allocated audio stream in case of error. These uses were unsafe
since free_sh_audio() freed the data structure but left the pointer in
demuxer->a_streams[], leading to double free later in free_demuxer()
(and perhaps use of the freed stream before that, I didn't check).


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@18711 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-06-14 14:05:59 +00:00
uau c843190441 Change common pts variables from floats to doubles. Individual demuxers
should be changed later.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@18310 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-04-27 11:13:21 +00:00
rtognimp 6c4d9bfe51 4 - Implement a better way to calculate current audio pts and use it for
audio decoded with ad_libvorbis, ad_ffmpeg and ad_faad.

Patch by Uoti Urpala


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@18243 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-04-24 10:58:40 +00:00
corey b4e5108496 dwStart support for mplayer.
* demux_avi sets stream_delay according to dwStart
* mplayer adjusts audio_delay according to stream_delay

3 related patches are pending, and I will apply them over the next few
days if all goes well.

As I mentioned on -dev-eng, the funny indentation is in preparation for
one of those pending patches.

See:
Date: Fri, 17 Feb 2006 00:53:28 -0800
To: mplayer-dev-eng@mplayerhq.hu
Subject: [PATCH] bframes, dwStart: individual patches


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@17644 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-02-18 09:26:39 +00:00
hzoli 067c0482d9 Remove file-global mpadec, add ad_driver member to sh_audio_t instead.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@14820 b3059339-0415-0410-9bf9-f77b7e298cf2
2005-02-25 11:17:43 +00:00
alex d8c3060141 removed loader/ dependancy, imported some files from g2, also used patches from Dominik Mierzejewski
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@12342 b3059339-0415-0410-9bf9-f77b7e298cf2
2004-04-28 10:18:33 +00:00
arpi bb56123065 fixed the well-known DVD/DVB audio delay bug :)
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@8966 b3059339-0415-0410-9bf9-f77b7e298cf2
2003-01-16 22:34:46 +00:00
arpi 05b4ddb729 export imagedescription for qt video codecs
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@8159 b3059339-0415-0410-9bf9-f77b7e298cf2
2002-11-11 23:46:27 +00:00
alex 7ea0933b9e dlopen() support for ad and vd
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@8153 b3059339-0415-0410-9bf9-f77b7e298cf2
2002-11-11 17:28:41 +00:00
arpi 478bb57c0a fixed comment - noticed by Alex
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@8058 b3059339-0415-0410-9bf9-f77b7e298cf2
2002-11-02 19:59:40 +00:00
arpi 74b6f07e68 A-V sync cleanup: sh_audio->timer replaced by sh_audio->delay, it contains
delay relative to sh_video->timer (or to 0 if audioonly).
It fixes ct: drifts of very long (several hours) playback.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@8057 b3059339-0415-0410-9bf9-f77b7e298cf2
2002-11-02 19:52:59 +00:00
arpi 3053a8b7f2 aufio filter layer (libaf) integration to libmpcodecs, mplayer and mencoder
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@7605 b3059339-0415-0410-9bf9-f77b7e298cf2
2002-10-05 22:55:45 +00:00
arpi 61c5a99851 wine headers cleanup
- WAVEFORMATEX & BITMAPINFOHEADER decl moved to stheader.h
- lots of useless include wine/* removed from mplayer code
- fixed few warnings


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@7472 b3059339-0415-0410-9bf9-f77b7e298cf2
2002-09-22 00:43:14 +00:00
arpi 06855fc3fb - cosmetics, reorder
- removed sh_video->image, get_sh_video()/get_sh_audio() - they are unused and confusing


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@7468 b3059339-0415-0410-9bf9-f77b7e298cf2
2002-09-21 23:23:03 +00:00
alex d8cd6b2057 removed obsolete items
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@7233 b3059339-0415-0410-9bf9-f77b7e298cf2
2002-09-01 18:23:18 +00:00
arpi e792742f6a vf_inited flag added
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@5925 b3059339-0415-0410-9bf9-f77b7e298cf2
2002-05-01 17:30:23 +00:00
arpi 2bea9b36a7 mp_image.h and img_format.h moved to libmpcodecs
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@5608 b3059339-0415-0410-9bf9-f77b7e298cf2
2002-04-13 19:14:34 +00:00
arpi 55bafcc362 field 'vfilter' added to sh_video_t
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@5507 b3059339-0415-0410-9bf9-f77b7e298cf2
2002-04-06 22:00:50 +00:00
atmos4 086814f294 Improved MP4 parsing (finally)
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@5302 b3059339-0415-0410-9bf9-f77b7e298cf2
2002-03-24 02:25:41 +00:00
alex d8c34022bb added get_sh_video/audio and realmedia seeking
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@5085 b3059339-0415-0410-9bf9-f77b7e298cf2
2002-03-15 15:53:11 +00:00
arpi eb57e0fd47 video_out added to sh_video_t
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@4974 b3059339-0415-0410-9bf9-f77b7e298cf2
2002-03-07 02:49:46 +00:00
nick f6878753fb 're-include' possibility
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@4934 b3059339-0415-0410-9bf9-f77b7e298cf2
2002-03-03 18:47:29 +00:00
nick afb0fd5ea1 We should know size of out buffer
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@4876 b3059339-0415-0410-9bf9-f77b7e298cf2
2002-02-27 11:16:53 +00:00
arpi 40dfa55b40 image field added. 10*10l....
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@4197 b3059339-0415-0410-9bf9-f77b7e298cf2
2002-01-16 12:24:36 +00:00
arpi 2741174c2c void* context added - it should keep the codec-specific stuff (struct ptr or HANDLE)
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@3643 b3059339-0415-0410-9bf9-f77b7e298cf2
2001-12-21 16:17:24 +00:00
arpi 69c00b2c07 video frame reading cleanup
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@2568 b3059339-0415-0410-9bf9-f77b7e298cf2
2001-10-30 20:36:20 +00:00