1
0
Fork 0
Commit graph

31 commits

Author SHA1 Message Date
Joshua Fern
f2029d71d8 Update copyright dates to 2020 2020-03-07 00:18:01 +01:00
krcroft
1d123367a5 Use MixerObject's singleton-pattern to manage the channel 2020-03-04 05:11:40 +01:00
krcroft
91cd907c4e Migrate some members of the Player class to smart pointers
1. Moves the mutex and mixer channel members to unique pointers
2. Moves the trackFile to a weak pointer
3. Move member initialization to the class definition

This class still retains a raw *cd member, however fixing this
ripples up to the array of [26] CD images, and across more
code that generically deals with mount points; so this work
remains to do.
2020-03-04 05:11:40 +01:00
krcroft
d1a6f373cb Refactor CD-DA flow by removing intermediate buffers and loops
Thanks to @ripsaw8080 for insight into CD-DA channel mapping,
@hail-to-the-ryzen for testing and flagging a position-tracking bug,
and @dreamer_ for guidance and code review.

The CD-DA volume and channel mapping loops were moved to generic mixer
calls and no longer require a pre-processing loop:
 - Application-controlled CD-DA volume adjustment is now applied using
   an existing mixer volume scalar that was previously unused by the
   CD-DA code.
 - Mapping of CD-DA left and right channels is now applied at the tail
   end of the mixer's sample ingest sequence.

The following have been removed:
 - The CD-DA callback chunk-wise circular buffer
 - The decode buffers in the Opus and MP3 decoders
 - The decode buffer and conversion buffers in SDL_Sound
These removals and API changes allow the image player's buffer
to be passed-through ultimately to the audio codec, skipping multiple
intermediate buffers.
2019-11-12 08:16:53 +01:00
Peter Veenstra
1fbaff47fc Update year and address of FSF
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4183
2019-01-25 14:09:58 +00:00
Peter Veenstra
5bb10db88b Time keeps on ticking
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4109
2018-05-29 12:58:58 +00:00
Peter Veenstra
6cf39c1fc6 Years update
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4021
2017-05-30 11:35:08 +00:00
Sjoerd van der Berg
271d8cffa6 Updated header for mixer changes
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4003
2017-01-04 08:35:10 +00:00
Peter Veenstra
0f4c92ca32 Year update.
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@3878
2015-01-06 14:40:32 +00:00
Peter Veenstra
2fea508f7f Year update
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@3812
2013-01-15 09:03:13 +00:00
Peter Veenstra
999f33de27 Update year. Remove CVS tags
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@3700
2011-04-26 09:34:55 +00:00
Peter Veenstra
a78b2c4f8b Update year
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@3548
2010-02-11 13:36:50 +00:00
Sjoerd van der Berg
f6def87e34 Include an extra scale factor in the mixer volume to be set by a device
Set the adlib device scale at 2.0


Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@3377
2009-04-28 21:48:24 +00:00
Sjoerd van der Berg
88caf1dc71 Add compiler testing for always_inline attribute
Add compiler testing for fastcall attribute
Add the FASTCALL define to visual c
Remove some overkill inline routines
Make sure that all the inline routines in headers are static


Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@3355
2009-04-25 16:25:03 +00:00
Sebastian Strohhäcker
ce5ef7a254 fix 16bit mixer handling on bigendian machines (sb16 hdma, cdda for cd images), also see sf patches #1284246 and #1989569
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@3324
2009-03-19 20:45:42 +00:00
Sjoerd van der Berg
a590bad2d9 Add 32bit signed type for mixing
Change the mixer template to use a class type


Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@3322
2009-03-16 18:33:59 +00:00
Peter Veenstra
e08ea925b7 pedantic warnings.
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@3209
2008-08-24 16:43:06 +00:00
Sebastian Strohhäcker
0190a6e149 Silence a few warnings.
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@2964
2007-08-12 19:16:01 +00:00
Peter Veenstra
fdd16dea1a Happy New Year\!
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@2728
2007-01-08 19:45:42 +00:00
Sebastian Strohhäcker
e11274fe6e add/fix some more soundblaster modes (Srecko)
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@2692
2006-08-25 09:40:19 +00:00
Sebastian Strohhäcker
be9a70adfd fix unsigned 16bit samples sb16 output
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@2690
2006-08-21 20:08:26 +00:00
Peter Veenstra
df67775306 time passes on and on....
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@2480
2006-02-09 11:47:57 +00:00
Peter Veenstra
224ef1a68b new include system + lot's of classes maintaining certain aspects of dosbox
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@2140
2005-03-24 21:11:05 +00:00
Peter Veenstra
2094d8b985 Year update
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@2106
2005-02-10 10:21:12 +00:00
Sjoerd van der Berg
27a331e73d New interpolating mixer routines
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@1908
2004-08-23 08:04:25 +00:00
Peter Veenstra
ca409fd57c Typo in preamble
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@1899
2004-08-04 09:12:57 +00:00
Sjoerd van der Berg
8e598829e8 Add new functions for finding specific channels
Changed the setting of channel volume


Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@1796
2004-05-12 08:20:52 +00:00
Peter Veenstra
fcbd0fe854 Copyright to 2004
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@1552
2004-01-10 14:03:36 +00:00
Sjoerd van der Berg
3c9284193e Changes for new pc-speaker effects.
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@849
2003-03-30 22:53:08 +00:00
Sjoerd van der Berg
a1fcb4b4c3 New pcspeaker functions
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@278
2002-09-16 13:21:35 +00:00
Sjoerd van der Berg
42e5d0b779 First CVS upload.
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@80
2002-07-27 13:08:48 +00:00