summaryrefslogtreecommitdiffstats
path: root/libmpdemux/stheader.h
Commit message (Collapse)AuthorAgeFilesLines
* demux_mkv, ad_ffmpeg: use Matroska OutputSamplingFrequency if availableUoti Urpala2010-11-211-0/+1
| | | | | | | | | | | | | | | | | | Use the value of the OutputSamplingFrequency element instead of the SamplingFrequency element as the "container samplerate". In most cases this only removes a warning, as those typically differ for SBR AAC files and there was already a special case detecting this in ad_ffmpeg. The implementation adds a new "container_out_samplerate" field to the sh_audio struct. Reusing the existing "samplerate" field and the equivalent inside the 'wf' struct and just setting those to the new value instead would probably work (at least I'm not aware of any codec that would need the original SamplingFrequency for initialization). However using a separate field also avoids some ugliness: the 'wf' struct may not exist (though most demuxers create it), and the 'samplerate' field is overwritten to reflect the final value decided by codec when decoding is first initialized.
* demux_lavf: print subtitle type in more casesreimar2010-11-021-0/+2
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@32006 b3059339-0415-0410-9bf9-f77b7e298cf2
* demuxer.c: add new_sh_sub_sid_langUoti Urpala2010-11-021-0/+2
| | | | | | Allocates a new sh_sub and specifies language at the same time. I don't think this is a particularly good API but add it for easier compatibility with some svn changes.
* cleanup: Add const qualifiers for struct ad_functions pointersreimar2010-11-021-1/+1
| | | | | | | The ad_functions structs are in rodata, mark some pointers to them const. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@31606 b3059339-0415-0410-9bf9-f77b7e298cf2
* Merge svn changes up to r30136Uoti Urpala2009-12-301-22/+26
|\ | | | | | | Ignore another broken correct-pts change in 30134.
| * Add support for parsing audio streams (though should be easy to extend to video)reimar2009-12-271-0/+4
| | | | | | | | | | | | | | | | | | | | | | 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
| * Remove currently unneeded members accidentally added in the last revision.reimar2009-12-271-4/+0
| | | | | | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30129 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Introduce a sh_common struct that contains the parts in common by the audio, ↵reimar2009-12-271-19/+25
| | | | | | | | | | | | | | | | | | | | | | | | 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
* | core: Add support for decoder reordering of pts valuesUoti Urpala2009-11-211-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add a mode where libavcodec's reordered_opaque feature is used to associate container packet timestamps with decoded frames. This should improve behavior at least for MPEG files with interlaced h264; the previous code does not cope well with the libavformat demuxer producing two field packets with separate timestamps but the libavcodec h264 decoder only producing a single output frame for those two packets (so half the timestamps have no associated output frame). The current libavformat mpeg demuxer seems to finally work with interlaced h264 files and produce valid timestamps which are useful with a mode like this. By default MPlayer now selects between this new mode and the old one automatically based on the number of timestamp problems they cause; by default the new mode is used if both seem to work. The new option -pts-association-mode can be used to force a particular mode. If correct-pts mode is disabled this has no effect on timing. Also remove the "EXPERIMENTAL" marker from the manpage description of -correct-pts.
* | Change libass type names to match upstream renamesUoti Urpala2009-07-291-1/+1
| |
* | Merge svn changes up to r29304Uoti Urpala2009-07-071-0/+18
|\|
| * Add standard license header to all files in libmpdemux.diego2009-05-081-0/+18
| | | | | | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29280 b3059339-0415-0410-9bf9-f77b7e298cf2
* | stheader.h: Allow inclusion before demuxer.hUoti Urpala2009-04-191-4/+5
| | | | | | | | | | | | stheader.h used 'demuxer_t *' without including demuxer.h, causing compilation to fail if demuxer.h had not been included first. Use 'struct demuxer *' instead so the type does not need to be defined.
* | Merge svn changes up to r27841Uoti Urpala2008-10-281-6/+0
|\| | | | | | | | | Conflicts: mplayer.c
| * Factorize vobsub idx/extradata handling.aurel2008-10-271-6/+0
| | | | | | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27841 b3059339-0415-0410-9bf9-f77b7e298cf2
* | Merge svn changes up to r27441Uoti Urpala2008-08-081-2/+2
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: cfg-common-opts.h command.c configure input/input.c libmpcodecs/dec_video.c libmpcodecs/vd.c libmpdemux/stheader.h libvo/sub.c libvo/video_out.c libvo/vo_xv.c libvo/vosub_vidix.c libvo/x11_common.c libvo/x11_common.h mp_core.h mplayer.c stream/stream.h
| * Give a CONFIG_ prefix to preprocessor directives that lacked one anddiego2008-08-071-2/+2
| | | | | | | | | | | | | | change arbitrary prefixes to CONFIG_. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27429 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Start unifying names of internal preprocessor directives.diego2008-07-301-1/+1
| | | | | | | | | | | | | | | | 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
* | Make video decoder description structs constUoti Urpala2008-04-251-1/+1
| | | | | | | | | | | | This makes the per-decoder struct vd_functions and its ->info struct constants. Same for the mpcodecs_vd_drivers[] table of pointers to those structs.
* | Remove global vo_flagsUoti Urpala2008-04-251-0/+1
| | | | | | | | Move the information to struct sh_video field.
* | Store video decoder functions in struct sh_video fieldUoti Urpala2008-04-251-0/+1
| | | | | | | | | | | | Remove the global variable mpvdec and move the video decoder pointer to struct sh_video field vd_driver. Audio already had a similar ad_driver field from before.
* | Remove _s/_st suffix from some struct namesUoti Urpala2008-04-251-5/+5
| | | | | | | | | | Since the names are always used after the keyword "struct" having a suffix as in "struct demuxer_st" is almost completely pointless.
* | Remove some unnecessary recursive includesUoti Urpala2008-04-231-6/+3
| | | | | | | | | | | | | | | | Remove some #include lines from headers, some of those removals made possible by using incomplete struct types instead of typedefs. Include mp_osd.h in mplayer.c and command.c after removing it from mp_core.h. Remove "#ifdef USE_ASS" around some "struct ass_track_s *" fields which will now compile even without ASS support.
* | Add option pointer to demuxers and stheader.h structsUoti Urpala2008-04-231-0/+4
| |
* | Declare demuxer *_streams fields with proper typesUoti Urpala2008-04-231-3/+3
|/ | | | | | | | Give sh_audio_t, sh_video_t and sh_sub_t which before had typedef names only a matching struct name (without _t) too. Change the a_streams, v_streams and s_streams demuxer fields from void * to struct sh_audio *, struct sh_video * and struct sh_sub *. Remove a now unnecessary cast from mplayer.c.
* Support 'default' attribute for audio and subtitle tracks.eugeni2008-03-301-0/+2
| | | | | | | | | 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
* Add missing header #includes to fix 'make checkheaders'.diego2008-03-051-0/+1
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@26175 b3059339-0415-0410-9bf9-f77b7e298cf2
* Add language info to sh_sub_t and sh_audio_t.eugeni2008-02-291-0/+2
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@26114 b3059339-0415-0410-9bf9-f77b7e298cf2
* Add MPLAYER_ prefix to multiple inclusion guards.diego2008-02-221-3/+3
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@26061 b3059339-0415-0410-9bf9-f77b7e298cf2
* typo fix: inited --> initializeddiego2008-02-141-3/+3
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@25994 b3059339-0415-0410-9bf9-f77b7e298cf2
* Add extradata to sh_sub_t.eugeni2008-01-111-0/+2
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@25680 b3059339-0415-0410-9bf9-f77b7e298cf2
* Add explanatory comments to the #endif part of multiple inclusion guards.diego2007-12-311-1/+1
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@25563 b3059339-0415-0410-9bf9-f77b7e298cf2
* Clean up some fields in stheader.h structsuau2007-11-011-3/+2
| | | | | | | | | | | | | | 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
* added .stream_aspect to st_video_t: if non-zero and if not specified otherwisenicodvb2007-09-011-0/+1
| | | | | | | 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
* Do not use leading underscores in multiple inclusion guards, they are reserved.diego2007-07-021-2/+2
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@23709 b3059339-0415-0410-9bf9-f77b7e298cf2
* Consistently use filename as multiple inclusion guard.diego2007-07-021-2/+2
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@23707 b3059339-0415-0410-9bf9-f77b7e298cf2
* Move the sh_audio->delay field to mpctx->delay.uau2007-03-111-1/+0
| | | | | | | | 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
* Reorganize code to move more things out of main().uau2006-11-201-0/+2
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@21093 b3059339-0415-0410-9bf9-f77b7e298cf2
* Move sh_sub_t to stheader.h, where all the other sh structs are definedreimar2006-11-131-0/+14
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@20892 b3059339-0415-0410-9bf9-f77b7e298cf2
* Add forgotten new_sh_subreimar2006-11-131-0/+2
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@20889 b3059339-0415-0410-9bf9-f77b7e298cf2
* Get rid of demux_aid_vid_mismatch mess.reimar2006-08-261-2/+6
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@19546 b3059339-0415-0410-9bf9-f77b7e298cf2
* Add a new video pts tracking mode, enabled by option -correct-pts.uau2006-07-061-0/+2
| | | | | | | | | | | | | | 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
* Change free_sh_audio() to take demuxer and stream id as parametersuau2006-06-141-1/+1
| | | | | | | | | | | | | | (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
* Change common pts variables from floats to doubles. Individual demuxersuau2006-04-271-3/+3
| | | | | | | should be changed later. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@18310 b3059339-0415-0410-9bf9-f77b7e298cf2
* 4 - Implement a better way to calculate current audio pts and use it forrtognimp2006-04-241-0/+2
| | | | | | | | | 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
* dwStart support for mplayer.corey2006-02-181-0/+2
| | | | | | | | | | | | | | | | | | | * 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
* Remove file-global mpadec, add ad_driver member to sh_audio_t instead.hzoli2005-02-251-0/+1
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@14820 b3059339-0415-0410-9bf9-f77b7e298cf2
* removed loader/ dependancy, imported some files from g2, also used patches ↵alex2004-04-281-37/+2
| | | | | | from Dominik Mierzejewski git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@12342 b3059339-0415-0410-9bf9-f77b7e298cf2
* fixed the well-known DVD/DVB audio delay bug :)arpi2003-01-161-0/+3
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@8966 b3059339-0415-0410-9bf9-f77b7e298cf2
* export imagedescription for qt video codecsarpi2002-11-111-0/+1
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@8159 b3059339-0415-0410-9bf9-f77b7e298cf2
* dlopen() support for ad and vdalex2002-11-111-0/+6
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@8153 b3059339-0415-0410-9bf9-f77b7e298cf2
* fixed comment - noticed by Alexarpi2002-11-021-2/+2
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@8058 b3059339-0415-0410-9bf9-f77b7e298cf2
* A-V sync cleanup: sh_audio->timer replaced by sh_audio->delay, it containsarpi2002-11-021-1/+1
| | | | | | | | 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
* aufio filter layer (libaf) integration to libmpcodecs, mplayer and mencoderarpi2002-10-051-3/+9
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@7605 b3059339-0415-0410-9bf9-f77b7e298cf2
* wine headers cleanuparpi2002-09-221-5/+37
| | | | | | | | | - 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
* - cosmetics, reorderarpi2002-09-211-31/+30
| | | | | | | - 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
* removed obsolete itemsalex2002-09-011-13/+0
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@7233 b3059339-0415-0410-9bf9-f77b7e298cf2
* vf_inited flag addedarpi2002-05-011-0/+1
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@5925 b3059339-0415-0410-9bf9-f77b7e298cf2
* mp_image.h and img_format.h moved to libmpcodecsarpi2002-04-131-1/+1
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@5608 b3059339-0415-0410-9bf9-f77b7e298cf2
* field 'vfilter' added to sh_video_tarpi2002-04-061-0/+1
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@5507 b3059339-0415-0410-9bf9-f77b7e298cf2
* Improved MP4 parsing (finally)atmos42002-03-241-0/+2
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@5302 b3059339-0415-0410-9bf9-f77b7e298cf2
* added get_sh_video/audio and realmedia seekingalex2002-03-151-0/+4