Commit graph

29 commits

Author SHA1 Message Date
Michael Sevakis
e61e9c61d0 Do some cleanup, adjustment and a couple fixes to recent sound changes.
* SOUND_x enum can be generated by audiohw_settings.h along with settings
entries and sound_val2phys.

* VOLUME_MIN and VOLUME_MAX are no longer necessary within sound.c. If
you need them, they are for target-defined purposes.

* Fix up SDL volume implementation in sdl.c. Move sim volume calculation
code to pcm-sdl.c.

* Min trigger tresholds were based upon VOLUME_MIN for some reason.
These setting have nothing to do with playback volume. Since it is no
longer present, set these at -89dB which is the minimum peak meter
sensitivity setting.

* Fix an oversight in wm8758.c. I forgot to add the dB->register
conversion to audiohw_set_volume.

Change-Id: Ie1df33f1793eee75e6793f16bc7bddd16edb7f75
2013-04-22 20:38:17 -04:00
Michael Sevakis
0c7b787398 Straighten out the mad twisted state of sound.c and related areas.
This is going right in since it's long overdue. If anything is goofed,
drop me a line or just tweak it yourself if you know what's wrong. :-)

Make HW/SW codec interface more uniform when emulating HW functionality
on SWCODEC for functions such as "audiohw_set_pitch". The firmware-to-
DSP plumbing is in firmware/drivers/audiohw-swcodec.c. "sound_XXX"
APIs are all in sound.c with none in DSP code any longer.

Reduce number of settings definitions needed by each codec by providing
defaults for common ones like balance, channels and SW tone controls.

Remove need for separate SIM code and tables and add virtual codec header
for hosted targets.

Change-Id: I3f23702bca054fc9bda40f49824ce681bb7f777b
2013-04-15 12:02:05 -04:00
Andree Buschmann
f0c032a523 Submit first part of FS#12154. Whitespace removal and correction of several defines in WM8758 driver according to data sheet, no functional change. Thanks to Seheon Ryu.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30024 a1c6a512-1295-4272-9138-f99709370657
2011-06-20 18:37:51 +00:00
Andree Buschmann
b6c12a129e Submit FS#11065. Introduce a new system setting for en-/disabling the Line-out. For now only implemented on iPod Video. This allows to save power if the user does not use the player's Line-out. On iPod 5G the saving is ~0.5 mA.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25257 a1c6a512-1295-4272-9138-f99709370657
2010-03-20 15:02:29 +00:00
Andree Buschmann
934e6f0bfa Commit FS#10082, enlarge volume control range for WM8758. This will enable volume control down to -90 dB for iPod Video targets.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24318 a1c6a512-1295-4272-9138-f99709370657
2010-01-23 19:28:26 +00:00
Boris Gjenero
7c6194078c FS#10086 - Playback and recording sample rate setting on the 5G iPod
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20635 a1c6a512-1295-4272-9138-f99709370657
2009-04-06 02:46:42 +00:00
Christian Gmeiner
ad6b6d764b cleanup audiohw_set_frequency by adding it to audiohw.h and removing it from all driver .h files
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19806 a1c6a512-1295-4272-9138-f99709370657
2009-01-20 22:55:10 +00:00
Michael Sevakis
e69d567d9e Bring consistency to pcm implementation and samplerate handling. Less low-level duplication. A small test_sampr fix so it works on coldfire again.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19400 a1c6a512-1295-4272-9138-f99709370657
2008-12-12 11:01:07 +00:00
Peter D'Hoye
695c39bc9c Remove the audiohw_set_nsorder() function since it is not used, only implemented on WM8731 and not wanted/used there.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18829 a1c6a512-1295-4272-9138-f99709370657
2008-10-18 22:37:41 +00:00
Jens Arnold
6938083e4f iPod Video: Fix playback after recording (FS #7402). Implement recording gain adjustment. * Enable timeout for zero-crossing detection (SLOWCLK), avoids hanging volume/ gain due to DC offsets.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18509 a1c6a512-1295-4272-9138-f99709370657
2008-09-13 19:34:16 +00:00
Daniel Stenberg
2acc0ac542 Updated our source code header to explicitly mention that we are GPL v2 or
later. We still need to hunt down snippets used that are not. 1324 modified
files...
http://www.rockbox.org/mail/archive/rockbox-dev-archive-2008-06/0060.shtml


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17847 a1c6a512-1295-4272-9138-f99709370657
2008-06-28 18:10:04 +00:00
Christian Gmeiner
59357d48c1 add AUDIOHW_CAP for bass cutoff and treble cut off and fix a wrong ifdef for simulator.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17537 a1c6a512-1295-4272-9138-f99709370657
2008-05-16 19:28:45 +00:00
Christian Gmeiner
8391526f79 * introduce AUDIOHW_CAPS to define which audio codec can do what kind of operations in hw, e.g. setting bass
* added documentation why and when we need the software based prescaler
* implement audiohw_set_bass and audiohw_set_treble for mas35xx
* clean up sound_set_bass and sound_set_treble
* simplify some #ifdef logic
* fix special handling of WM8751 - looking for tester :)



git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17274 a1c6a512-1295-4272-9138-f99709370657
2008-04-28 08:37:18 +00:00
Christian Gmeiner
06971be8cd Return value of audiohw_set_xxx_vol is never used and most of the time we have a return 0; --> kick it
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16300 a1c6a512-1295-4272-9138-f99709370657
2008-02-13 11:19:23 +00:00
Christian Gmeiner
c6e9b8b7e1 move audiohw_enable_output to audiohw.h
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16251 a1c6a512-1295-4272-9138-f99709370657
2008-02-09 14:43:36 +00:00
Dan Everton
d7e1f77146 Commit FS#7440. The iPod Video doesn't actually have a hardware equalizer. It does have hardware bass/treble settings with configurable cutoff. So make the bass/treble settings use the hardware and remove the hardware equalizer configuration.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15782 a1c6a512-1295-4272-9138-f99709370657
2007-11-24 07:51:00 +00:00
Christian Gmeiner
41a67a7e90 get rid of audiohw_reset
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15720 a1c6a512-1295-4272-9138-f99709370657
2007-11-20 10:28:53 +00:00
Christian Gmeiner
c583f3c8d1 introduce general audiohw api for recording
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15687 a1c6a512-1295-4272-9138-f99709370657
2007-11-19 15:50:52 +00:00
Christian Gmeiner
d1178d2d76 * changed pararmeter of audiohw_mute from int to bool
* unification of init and close
  NOTE: audiohw_init is a void function now, because it never (can) fail
        okay  from JdGordon@irc



git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13622 a1c6a512-1295-4272-9138-f99709370657
2007-06-13 06:33:40 +00:00
Christian Gmeiner
23279cd43a some little more work on audio codec driver unification - more will follow
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13620 a1c6a512-1295-4272-9138-f99709370657
2007-06-11 23:39:07 +00:00
Marcoen Hirschberg
10e21d19bf make audiohw.h include the DAC header files
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13473 a1c6a512-1295-4272-9138-f99709370657
2007-05-22 20:17:35 +00:00
Christian Gmeiner
cdbf33adf7 * move audio settings into audio codec drivers
* add mas35xx driver for all mas35xx targets. Later 
  mas35xx code from sound.c will move to this new driver


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13464 a1c6a512-1295-4272-9138-f99709370657
2007-05-22 15:56:05 +00:00
Barry Wardell
df0dc2262e FS#6096. Recording on PortalPlayer targets (H10, iPod Video, iPod 4g, iPod Color, iPod Nano).
* Fix failed compile of enc_config.c when HAVE_MPEG2_SAMPR is not defined.
* Fix bug in AIFF encoder header creation on little endian targets.
* Add recording screen keymaps for H10 and iPod.
* Move pcm_playback PP specific code to target tree.
* Add recording code to wmcodec drivers.
* Add pcm_record code.

Some problems still remain:
* Playback doesn't work after recording until Rockbox is restarted.
* Gain control not implemented.
* Only 16-bit/44KHz for now. The hardware should be capable of up to 24-bit/96KHz.
* Line-in recording not tested on H10.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11794 a1c6a512-1295-4272-9138-f99709370657
2006-12-18 01:52:21 +00:00
Marcoen Hirschberg
1b967f41df move some audio driver specific code to the correspoding files
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11675 a1c6a512-1295-4272-9138-f99709370657
2006-12-06 13:34:15 +00:00
Marcoen Hirschberg
77d039bab8 first step in audio driver unification: renaming the functions to audio_*
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11670 a1c6a512-1295-4272-9138-f99709370657
2006-12-06 10:24:59 +00:00
Dan Everton
eb1dd38960 Add support for displaying the the current path or the full path (or neither) in the file browser. Check General Settings -> File View -> Show Path for the options.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10578 a1c6a512-1295-4272-9138-f99709370657
2006-08-15 09:38:13 +00:00
Dan Everton
8030c804ad Add support for the iPod Video hardware equalizer. You can access it from Sound Settings -> Equalizer -> Hardware Equalizer. Note that the peak filters are reported not to work. Based on FS#5791 from Snyper.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10568 a1c6a512-1295-4272-9138-f99709370657
2006-08-14 10:52:05 +00:00
Thom Johansen
473fc2ba74 Fixed line out volume for 4G, Nano and 5G Ipods. Partial patch #4814 by
Ralf Herz.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9181 a1c6a512-1295-4272-9138-f99709370657
2006-03-22 13:04:49 +00:00
Dave Chapman
9581ad39ec iPod: Audio driver for iPod Video/5G. Rename wm8971_* functions to wmcodec_* to enable unification of the audio code for WM codecs
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8676 a1c6a512-1295-4272-9138-f99709370657
2006-02-13 13:48:08 +00:00