Commit Graph

93 Commits

Author SHA1 Message Date
Uoti Urpala c8b3088c18 audio: move ready-for-ao data buffer from decoder to AO
Move the buffer storing audio data ready to be fed to the audio output
driver from the audio decoder object to the AO object. This will help
encoding code deal with end of input, and may also be useful to
improve other general gapless audio behavior (as AOs which do not
accept chunks smaller than a certain size may keep them in the buffer
while the decoder changes).

Less data may be dropped now when changing audio filters or switching
timeline parts.
2011-07-02 09:22:32 +03:00
Hans-Kristian Arntzen 48e8556298 ao_rsound: add new RSound audio output driver 2011-06-26 06:19:42 +03:00
Uoti Urpala bdcf4ddf35 ao: fix crash after ao init failure (from recent 3a5fd15fa2)
If opening an audio output driver using the old API failed the
"global_ao" variable was not set back to NULL as it should have been.
This caused an assert failure the next time there was an attempt to
open such an AO (either due to fallback to another AO after the
failure or after moving to another file). Fix.
2011-05-16 01:32:26 +03:00
Uoti Urpala 40f6ab5064 ao_pcm, core: use new API in ao_pcm, change timing with it
Change ao_pcm to use the new audio output driver API and clean up some
of the code. Rewrite the logic controlling how playback timing works
when using -ao pcm. Deprecate the "fast" suboption; its only effect
now is to print a warning, but it's still accepted so that specifying
it is not an error.

Before, timing with -ao pcm and video enabled had two possible
modes. In the default mode playback speed was rather arbitrary - not
realtime, but not particularly fast. -ao pcm:fast tried to play back
at maximum video playback speed - mostly succeeding, but not quite
guaranteed to work in all cases. Now the default is to play at
realtime speed. The -benchmark option can now be used to get faster
playback (same as the video-only case). In the audio-only case
playback is always maximum speed.
2011-05-05 21:34:17 +03:00
Uoti Urpala 3a5fd15fa2 audio output: add a new AO driver API
Add a new audio output driver API. The main change is the addition of
a context struct where data can be kept instead of using globals. The
old API remains available. This commit does not yet convert any driver
to use the new API.
2011-05-05 01:39:53 +03:00
Uoti Urpala df7825eb31 cleanup: reindent audio_out.[ch]
Reindent audio_out.c and audio_out.h. Also remove trailing '_s' from
two struct names (which are not currently used anywhere) and make the
audio_out_drivers[] table static.
2011-05-04 21:09:08 +03:00
Uoti Urpala 2a7c5a1365 audio: change external AO interface to "ao_[method](ao, ...)"
Make the outside interface of audio output handling similar to the
video output one. An AO object is first created, and then methods
called with ao_[methodname](ao, args...). However internally libao2/
still holds all data in globals, and trying to create multiple
simultaneous AO instances won't work.
2011-04-09 03:03:22 +03:00
Uoti Urpala b138ca43ca vo_dxr2, ao_dxr2: drop dxr2 support
dxr2 support had been broken quite a while and nobody noticed. There
were finally commits to fix it in the svn repo, but rather than apply
those I'll just drop dxr2 support.
2011-01-31 16:03:10 +02:00
cboesch fe3c4810e1 cleanup: remove NULL checks before free() all over the code
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@32624 b3059339-0415-0410-9bf9-f77b7e298cf2
2010-11-14 13:11:20 +02:00
Uoti Urpala 00323c06e2 Delete things related to old translation system
Remove the help/ subdirectory, configure code to create toplevel
help_mp.h, and all the '#include "help_mp.h"' lines from .c files.
2010-03-10 03:47:14 +02:00
Uoti Urpala f1b6cdbe9d Merge svn changes up to r30484 2010-03-09 19:24:47 +02:00
komh f275d3d32c Add OS/2 KAI audio driver support
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30481 b3059339-0415-0410-9bf9-f77b7e298cf2
2010-02-01 14:09:53 +00:00
Uoti Urpala 0eb321bf2c Remove trailing whitespace from most files 2009-07-07 02:34:35 +03:00
Amar Takhar e306174952 Translation system changes part 2: replace macros by strings
Replace all MSGTR_ macros in the source by the corresponding English
string.
2009-07-07 01:38:20 +03:00
Amar Takhar b5972d6f14 Translation system changes part 1: wrap translated strings
Replace mp_msg() calls which have a translated string as the format
argument with mp_tmsg and add _() around all other translated strings.
2009-07-07 01:28:07 +03:00
Uoti Urpala 1db1773ec2 Merge svn changes up to r29277 2009-05-08 23:50:26 +03:00
diego e3ec5b1fd3 Rename macosx audio output driver to coreaudio.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29251 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-05-04 14:53:47 +00:00
Uoti Urpala e0172b96e3 Merge svn changes up to r28862 2009-03-07 01:04:41 +02:00
reimar 54c1d83197 Make audio_out_* structs const so they end up in .rodata
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@28859 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-03-06 19:58:16 +00:00
diego 23599b030c DART audio output driver for OS/2 by KO Myung-Hun, komh chollian net
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@28775 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-03-01 11:36:39 +00:00
Uoti Urpala ccf4d9e96c Merge svn changes up to r28403 2009-01-31 04:52:15 +02:00
diego c1cd81818a Add standard license headers.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@28378 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-01-26 15:06:44 +00:00
Uoti Urpala 9f7c6291a5 Remove special error message for -ao alsa1x and alsa9
Those variants were removed in 2004. Remove the special handling of
those ao names and treat them like any other unrecognized ao name.
This removes a questionable exit_player() call.
2008-08-12 14:57:18 +03:00
diego 024b6efdf1 Introduce CONFIG_ALSA preprocessor directive for ALSA 0.9 and 1.x.
Use it in all the places that checked for either ALSA 0.9 or 1.x.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27422 b3059339-0415-0410-9bf9-f77b7e298cf2
2008-08-06 23:19:29 +00:00
diego 473e2824cb Rename all preprocessor directives related to Apple / Mac OS X.
Switch them from a HAVE_ to a CONFIG_ prefix.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27420 b3059339-0415-0410-9bf9-f77b7e298cf2
2008-08-06 07:42:26 +00:00
diego f83e779ee4 Rename some audio-output-related preprocessor directives.
Switch them from a HAVE_ prefix to a CONFIG_ prefix.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27419 b3059339-0415-0410-9bf9-f77b7e298cf2
2008-08-05 16:32:47 +00:00
diego 02135001b4 Change a bunch of video/audio-output-specific preprocessor directives from
a HAVE_ prefix to a CONFIG_ prefix.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27402 b3059339-0415-0410-9bf9-f77b7e298cf2
2008-08-03 15:21:40 +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
corey 5eee4632d3 Add verbose messages about trying and searching for audio output drivers.
Add messages showing why a specified audio output driver failed to be used.

Based on a patch from Bryan Henderson, giraffedata [[]] gmail :: com


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27123 b3059339-0415-0410-9bf9-f77b7e298cf2
2008-06-22 19:25:54 +00:00
diego f9da8542dd Introduce a separate definition for Mac OS X coreaudio support.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@26240 b3059339-0415-0410-9bf9-f77b7e298cf2
2008-03-15 08:54:21 +00:00
diego 2922e18092 Merge two #ifdefs.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@26134 b3059339-0415-0410-9bf9-f77b7e298cf2
2008-03-01 09:45:38 +00:00
diego a09376d67b cosmetics: reindent, detabify
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@26133 b3059339-0415-0410-9bf9-f77b7e298cf2
2008-03-01 09:04:00 +00:00
diego 4485a60c38 Remove duplicate extern declaration.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@26132 b3059339-0415-0410-9bf9-f77b7e298cf2
2008-03-01 08:56:28 +00:00
diego 77eb726c3d Remove pointless #ifdefs around extern declarations.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@26039 b3059339-0415-0410-9bf9-f77b7e298cf2
2008-02-20 08:51:53 +00:00
reimar 6921ab9e24 ao_functions_t should be const, part 1
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@25945 b3059339-0415-0410-9bf9-f77b7e298cf2
2008-02-01 20:11:14 +00:00
reimar 855b2427e9 Replace Polyp- by PulseAudio output.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@24809 b3059339-0415-0410-9bf9-f77b7e298cf2
2007-10-18 13:34:26 +00:00
ben b61b018062 v4l2 audio/video outputs for linux 2.6.22+ kernels (outputs formerly known as ivtv)
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@23925 b3059339-0415-0410-9bf9-f77b7e298cf2
2007-07-29 19:20:55 +00:00
uau 2ad89c5956 Move mpeg aos to the end of the autodetection list. At least mpegpes
should be there since it now works without the corresponding vo but is
not a particularly good ao overall.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@19415 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-08-16 20:04:43 +00:00
ben 6e33f2b9ad added audio output for ivtv cards
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@19229 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-07-28 21:36:03 +00:00
reynaldo 3a406e94d7 Get ride of the several if(identify) messy lines and rearangment of some of the output, both patches by Kiriuja mplayer-patches AT en-directo_net, his changes are barely unrelated, nevertheless Im commiting them thogeter just for the sake of my mental healt, I had both patches already applied on my local three
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@18238 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-04-24 07:20:34 +00:00
reynaldo bf25812a43 Part1 of several printf2mp_msg changes in patch from Otvos Attila oattila AT chello DOT hu
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@17995 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-03-30 06:40:58 +00:00
aurel acf99ed75b fix compilation without openal
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@17635 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-02-16 22:35:04 +00:00
reimar 8424c24317 OpenAL audio support, actual output is mono-only (no positioning yet).
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@17634 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-02-16 20:45:25 +00:00
rathann e7db4ccf1a Patch by Stefan Huehner / stefan % huehner ! org \
patch replaces '()' for the correct '(void)' in function
declarations/prototypes which have no parameters. The '()' syntax tell
thats there is a variable list of arguments, so that the compiler cannot
check this. The extra CFLAG '-Wstrict-declarations' shows those cases.

Comments about a similar patch applied to ffmpeg:

That in C++ these mean the same, but in ANSI C the semantics are
different; function() is an (obsolete) K&R C style forward declaration,
it basically means that the function can have any number and any types
of parameters, effectively completely preventing the compiler from doing
any sort of type checking. -- Erik Slagter

Defining functions with unspecified arguments is allowed but bad.
With arguments unspecified the compiler can't report an error/warning
if the function is called with incorrect arguments. -- Måns Rullgård


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@17567 b3059339-0415-0410-9bf9-f77b7e298cf2
2006-02-09 14:08:03 +00:00
diego 8723503a71 ao_macosx is a native audio output driver and should thus have priority
over non-native outputs drivers like ao_sdl and the like.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@16733 b3059339-0415-0410-9bf9-f77b7e298cf2
2005-10-11 23:07:53 +00:00
gpoirier 9dd8f241ac adds some more -identify output, patch by kiriuja < mplayer DASH patches PAM en DASH directo POUM net>
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@15790 b3059339-0415-0410-9bf9-f77b7e298cf2
2005-06-20 23:07:35 +00:00
rathann e3b183dc3f - fix gcc warnings, strlcat/strlcpy prototypes
- fix bad sscanf usage in geometry.c


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@15059 b3059339-0415-0410-9bf9-f77b7e298cf2
2005-04-06 11:57:10 +00:00
reimar 0fdaa5ab30 Do not use audio plugins anymore
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@14255 b3059339-0415-0410-9bf9-f77b7e298cf2
2004-12-27 19:34:42 +00:00
alex 507121f7fe removing AFMT_ dependancy
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@14246 b3059339-0415-0410-9bf9-f77b7e298cf2
2004-12-27 17:30:15 +00:00
diego 67a1fd4053 Make include paths consistent.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@14124 b3059339-0415-0410-9bf9-f77b7e298cf2
2004-12-07 02:24:15 +00:00