Commit Graph

508 Commits

Author SHA1 Message Date
twinaphex
07ee234d5d (Audio) Set write_avail and buffer functions to NULL so far 2014-09-09 21:44:39 +02:00
twinaphex
8df3a51790 (Audio) Implement missing use_float function for audio drivers 2014-09-09 21:42:10 +02:00
twinaphex
c6c1fbbf0a Style nits 2014-09-09 05:56:12 +02:00
Lioncash
6b84ccdcef Make some functions static 2014-09-06 00:10:52 -04:00
Twinaphex
66427db631 Merge pull request #942 from lioncash/unused
Remove some unused variables.
2014-09-06 03:40:56 +02:00
Lioncash
ab1ab62a6d Fix some printf specifiers to the correct signed-ness 2014-09-05 19:43:32 -04:00
Lioncash
a7aa077cc6 Remove some unused variables. 2014-09-05 19:27:46 -04:00
Mike Robinson
addbcc6487 Fix buffer overflow in JACK audio driver
retroarch.c:flush_rewind_audio() can potentially send up to
audio_data.rewind_buf of 2048 frames (4096 samples) to audio_flush().

rarch_resampler_process() can potentially multiply the number of
frames by AUDIO_MAX_RATIO, to 32768 frames.

audio/jack.c:write_buffer() allocates a buffer of only 2048 frames on
the stack, which can overflow. This reliably happens when rewinding in
slow motion.

Multiply the JACK driver buffer by AUDIO_MAX_RATIO to prevent overflow.

However, DSP can also adjust the number of frames without limit. There
is no DSP_MAX_RATIO, so check the number of frames in
audio/jack.c:write_buffer() and truncate if they will not fit the
buffer. This will cause garbled audio, but in practice it is unlikely
to occur (DSP plugins do not usually add frames, flush_rewind_audio()
does not usually send the maximum possible number of frames).
2014-08-31 15:50:34 +01:00
twinaphex
b1871b54c3 (audio/dsp_filter.c/audio/sinc.c) Remove more extraneous elses 2014-08-27 03:31:19 +02:00
twinaphex
cec2afe6cb Get rid of some extraneous elses 2014-08-27 03:11:06 +02:00
twinaphex
5c2006c072 Remove extraneous elses 2014-08-27 02:06:39 +02:00
Higor Eurípedes
e88f3b4355 (SDL) Fix double initialization
Signed-off-by: Higor Eurípedes <heuripedes@gmail.com>
2014-08-19 16:55:32 -03:00
twinaphex
0bd97eb1ba (SoftFilter) Bump up API version - start supporting config files
(stub for now)
2014-08-19 17:05:47 +02:00
twinaphex
9203160abe Move xenon drivers to input/audio 2014-08-15 21:11:26 +02:00
twinaphex
4a17a7b832 (GX) Build fix 2014-08-15 21:08:56 +02:00
twinaphex
49e9e97f38 Refactor resampler.c 2014-08-15 18:17:44 +02:00
twinaphex
88af50ab82 Add null drivers 2014-08-14 03:05:44 +02:00
Higor Eurípedes
16e0d24e17 (SDL*) Properly initialize SDL library/subsystems 2014-08-11 19:47:30 -03:00
Higor Eurípedes
f53b67aab7 (SDL2) Use sdl_audio.c as audio driver 2014-08-10 19:54:49 -03:00
twinaphex
fbb0b57cae Use __ARM_NEON__ define instead of HAVE_NEON 2014-07-26 20:18:37 +02:00
Themaister
cae625e489 Copy def_audio_resampler, not def_audio. 2014-07-18 19:17:59 +02:00
twinaphex
dbf239f8d4 (Settings data) Add default audio resampler option 2014-07-18 19:11:53 +02:00
Themaister
d3ffe3292a Use correct resampler fallback. 2014-07-18 18:39:35 +02:00
twinaphex
df448d37da Make find_resampler_driver more robust 2014-07-18 18:23:19 +02:00
twinaphex
6f32841647 Rename g_extern.verbose to g_extern.verbosity to avoid
collisions on OSX
2014-07-18 00:39:31 +02:00
aliaspider
67fa60f81d (PSP) increase audio buffer size and chunk size. 2014-07-14 02:36:13 +01:00
aliaspider
ba7cefc529 (PSP) add BIG_STACK makefile option
fix overflow in VFPU resampler when input_frames is 0
add support for GU_PSM_5551 pixel format when using hardware rendering
2014-06-29 05:45:36 +01:00
twinaphex
9bfb76e7fb (PSP) Add initial version of PSP pthread wrapper - very incomplete right now 2014-06-29 01:05:13 +02:00
Themaister
89f052f5e5 Fix some Win32 build issues. 2014-06-17 17:52:00 +02:00
twinaphex
6fdefb4ab7 (Android) Build fix 2014-06-13 02:16:41 +02:00
twinaphex
ddf0dcb165 (Android) Build fixes/cleanups to frontend 2014-06-13 01:10:14 +02:00
twinaphex
2a32a397c9 (Xbox 1) Take out unnecessary audio DSP effect option 2014-06-11 00:55:14 +02:00
twinaphex
353bbb5f83 (GX) Make gx_audio.c and platform_gx.c more generic 2014-06-04 18:54:40 +02:00
twinaphex
9fc7db8db9 (GX) Make gx_audio.c more backwards/forwards compatible 2014-06-04 02:01:15 +02:00
twinaphex
9911aac09c Add performance.h header include in audio/dsp_filter.c 2014-06-01 22:12:57 +02:00
twinaphex
35716e981c Move alsa_qsa.c to audio/ 2014-06-01 16:12:36 +02:00
twinaphex
f36589cf11 Update some comments 2014-06-01 15:33:42 +02:00
Themaister
716adbb85a Fix lfo_ptr increment. 2014-06-01 14:35:12 +02:00
Themaister
cea2b160cd Add Chorus DSP. 2014-06-01 14:32:01 +02:00
Themaister
1d36ab8c49 Fix up some IIR presets. 2014-05-30 23:17:24 +02:00
Themaister
0ca79f964f Make dumping EQ filter coefficients a config option. 2014-05-30 19:04:40 +02:00
twinaphex
c3f19c13bf (GX) Audio driver - some cleanups 2014-05-30 00:24:09 +02:00
Themaister
49d47e1aaf Revert "Avoid buffer overflow in EQ."
Derp. It's already twice size.
2014-05-29 20:30:34 +02:00
Themaister
47f4486507 Avoid buffer overflow in EQ. 2014-05-29 20:08:59 +02:00
Themaister
87810fe9c6 Create a correct linear phase filter. 2014-05-29 10:35:09 +02:00
twinaphex
839c121ecd (Xbox 1) Add C++ ifdef __cplusplus extern "C" header guards 2014-05-28 21:45:58 +02:00
Themaister
bafae15635 Add missing EQ.dsp. 2014-05-28 18:07:03 +02:00
Themaister
748cd81ba8 Fix stale comment in eq.c. 2014-05-28 17:50:03 +02:00
Themaister
244b072ab8 Fix Android build. 2014-05-28 10:40:24 +02:00
Themaister
0c83bf7d0b Merge branch 'master' of github.com:libretro/RetroArch into eq-dsp
Conflicts:
	griffin/griffin.c
2014-05-28 10:38:04 +02:00
Themaister
7bf6554661 Add EQ to griffin. 2014-05-28 10:37:21 +02:00
Themaister
31249ab9da Some fixes to EQ. 2014-05-28 10:36:13 +02:00
twinaphex
152e022b5b (Android) Fix build 2014-05-28 04:15:52 +02:00
Themaister
902c92acfc Read config in EQ. 2014-05-28 00:30:03 +02:00
Themaister
95d1582f3c Equalizer works. 2014-05-28 00:07:14 +02:00
Themaister
b99b288980 Implement more of EQ. 2014-05-27 22:26:16 +02:00
Themaister
ce14f2f517 Begin implementing EQ. 2014-05-27 18:38:25 +02:00
Themaister
8f913e8e9b Add new FFT implementation.
To be used for EQ implementation.
2014-05-27 18:02:38 +02:00
Themaister
04522647ec Add some additional DSP presets. 2014-05-25 16:23:31 +02:00
Themaister
e9c3921050 Add EchoReverb dsp preset. 2014-05-25 16:13:16 +02:00
Themaister
92ef78242b Add reverb DSP. 2014-05-25 16:06:19 +02:00
Themaister
581c2e1d91 Add wahwah DSP. 2014-05-25 14:14:32 +02:00
Themaister
828552d111 Add phaser. 2014-05-25 13:54:46 +02:00
Themaister
33e3eee5ab Nit. 2014-05-23 09:53:27 +02:00
twinaphex
745a36508f (GX) Add missing gx_audio_use_float - set it to false 2014-05-22 23:51:30 +02:00
twinaphex
890b7f9bcf (OSX PPC) Fix Altivec errors 2014-05-22 23:46:41 +02:00
twinaphex
565ccf2ace (OSX PPC) CoreAudio should be compatible now with OSX 10.5 for PowerPC 2014-05-22 22:20:17 +02:00
twinaphex
166ee3785e (CoreAudio) Some OSX PPC build fixes 2014-05-22 22:11:14 +02:00
twinaphex
dd2d15c144 (Apple) Move iOS/OSX to separate dirs so that both ports can have their own
modules/ directory
2014-05-22 18:54:10 +02:00
Themaister
6ebd71f906 Use defaults for Echo. 2014-05-20 20:58:35 +02:00
Themaister
7351a228cc Add Echo DSP filter. 2014-05-20 17:04:57 +02:00
Themaister
0d370e828d Add the IIR filter types. 2014-05-20 15:43:05 +02:00
Themaister
d2161dfa50 Rewrite IIR DSP filter. 2014-05-20 15:19:22 +02:00
Themaister
7aaa0c254f Add builtin crap for DSP plugs. 2014-05-20 14:21:29 +02:00
Themaister
1b9bbbd381 Some Panning fixes. 2014-05-20 14:00:48 +02:00
Themaister
ead69172a2 Add new DSP plug "Panning". 2014-05-20 13:32:34 +02:00
Themaister
b498476531 Remove broken DSP plugs.
They will all have to be properly rewritten for new interface.
2014-05-20 12:38:01 +02:00
Themaister
79f4ed34ba Rename rarch_dsp.h. 2014-05-20 12:30:50 +02:00
Themaister
addba80c3b Rewrite DSP plugin interface. 2014-05-20 12:28:33 +02:00
twinaphex
d62164c4ae (BB10) Build fixes
(General) Fix some unused variable warnings
2014-05-17 22:16:25 +02:00
twinaphex
6bde636fac (Console) Move audio drivers to audio/ directory 2014-05-13 17:09:17 +02:00
twinaphex
b5d1e9aa83 (iOS) Take out forcibly hacking out all ARM ASM code for iOS port 2014-05-10 23:37:01 +02:00
twinaphex
e61401c101 (CC resampler) Add RARCH_INTERNAL check 2014-05-07 16:46:28 +02:00
twinaphex
7d3b436c2a (cc_resampler.c) Remove some unneeded header includes / make it more
backwards compatible
2014-05-07 00:42:59 +02:00
twinaphex
cb53d65fc3 Compile with HAVE_BUILTIN_FILTERS for Android - and some C90 build
fixes for filters. Note/FIXME: We need to get rid of the complex.h
dependency in the equalizer plugin
2014-05-03 04:59:35 +02:00
twinaphex
9f020f6786 (DSP Filters) echo.c - Teardown fix 2014-04-30 19:14:06 +02:00
twinaphex
2ea61d4e70 cleanup ident name for phaser.c 2014-04-29 23:11:23 +02:00
twinaphex
78a21f6d80 Use boolean.h for eq.c 2014-04-29 23:07:26 +02:00
twinaphex
b1c1eae907 Fix warnings re: redefining ALIGNED 2014-04-29 23:03:58 +02:00
twinaphex
8321506b39 (MSVC) Build fixes 2014-04-29 23:02:07 +02:00
twinaphex
1bf9a43db6 (DSP Filters) Add SIMD detection to DSP Filter API 2014-04-29 18:38:23 +02:00
twinaphex
669ebbabf6 (DSP filters) Bump up ABI of DSP Filter API to version 6 - make it
more like SoftFilters API
2014-04-29 18:24:49 +02:00
twinaphex
752099808d (DSP Filters) Move to pre-SSE2 version of echo filter - SSE2 optimizations could
come later when 'simd' toggling gets added to the spec
2014-04-29 17:03:12 +02:00
twinaphex
47f6cc40ba (DSP Filters) Cleanups 2014-04-29 16:32:08 +02:00
twinaphex
a716070cdc (Audio DSP) Add NULL entry to initializer lists for 'events' 2014-04-29 07:06:25 +02:00
twinaphex
40a1dc4eab (rarch_dsp.h) Typo fix 2014-04-28 06:28:20 +02:00
twinaphex
79f16c267e Add RARCH_INTERNAL ifdefs (for consoles/handhelds later on) 2014-04-28 05:59:24 +02:00
twinaphex
9d927ef827 (DSP Filters) Use the namespace 'rarch_dsp_*' for symbols 2014-04-28 05:49:19 +02:00
twinaphex
e763788857 (DSP Filters) Update names 2014-04-28 05:41:06 +02:00
twinaphex
7f9ea6052e Update audio/filters/link.T 2014-04-28 05:38:30 +02:00