07 January 2016, 16:45 | #81 | |
Registered User
Join Date: Jun 2010
Location: PL?
Posts: 2,911
|
Quote:
But of course this is pure speculation... |
|
07 January 2016, 21:31 | #82 |
Code Kitten
Join Date: Aug 2015
Location: Montreal/Canadia
Age: 52
Posts: 1,178
|
|
08 January 2016, 09:28 | #83 | |
son of 68k
Join Date: Nov 2007
Location: Lyon / France
Age: 51
Posts: 5,377
|
Quote:
So things like 7V are usually reserved to areas such as menus. For in-game musics you could play some pre-mixed pcm data (like 8svx), but this takes space. |
|
08 January 2016, 10:22 | #84 | |
Registered User
Join Date: Jun 2010
Location: PL?
Posts: 2,911
|
Quote:
And yes, You can use plenty of LUT's to speed up operations but still You are limited in a way that prevent to even think about relatively HQ audio without decent DSP. Proper error rounding is beyond Amiga capabilities even with 68030 and proper multirate (ASRC) processing is beyond 68060. |
|
08 January 2016, 12:14 | #85 | ||
son of 68k
Join Date: Nov 2007
Location: Lyon / France
Age: 51
Posts: 5,377
|
Quote:
Quote:
|
||
08 January 2016, 19:07 | #86 |
Registered User
Join Date: Jun 2010
Location: PL?
Posts: 2,911
|
Yep - for sure valid for 8086 with 8MHz clock or 80286 with 10MHz...
Well not sure what kind of marketing specialist described algorithm but for sure oversampling from my perspective is something else than "infinite oversampling" especially with technical limitations of Audio HW Paula. |
08 January 2016, 20:15 | #87 |
Glastonbridge Software
Join Date: Jan 2012
Location: Edinburgh/Scotland
Posts: 2,243
|
|
09 January 2016, 07:28 | #88 | |
Code Kitten
Join Date: Aug 2015
Location: Montreal/Canadia
Age: 52
Posts: 1,178
|
Quote:
And as I said in a previous post, percussions and sound effects do not usually need to be played at varying frequencies so they are good candidates for fast mixing. And I am sure there are other constraints which can be used to make the mixing even faster. |
|
09 January 2016, 11:48 | #89 | ||||
son of 68k
Join Date: Nov 2007
Location: Lyon / France
Age: 51
Posts: 5,377
|
Quote:
The smallest peecee i've seen mixing audio was a 386SX16 - and the result was far below a 68000 Amiga. Quote:
Quote:
Quote:
- reducing the mixing's output frequency - reducing the overall number of channels - mix only channels that currently play something - using a fixed pitch, like you suggest - using a fixed volume (some trackers on the Atari did this) - mixing 7-bit samples rather than 8-bit (very little gain though) |
||||
09 January 2016, 13:02 | #90 |
Registered User
Join Date: Oct 2009
Location: Germany
Posts: 3,315
|
I guess it is more a "proof of concept". At least you need to code a new tracker progam that use the new routine if you want that a musican will use it (if he wants with the limits). 4 and mulitchannel without limits are there. More interesting would be realtime softsynth manipulation what would give musicans more freedom for creativity.
|
09 January 2016, 15:56 | #91 | ||
Code Kitten
Join Date: Aug 2015
Location: Montreal/Canadia
Age: 52
Posts: 1,178
|
Quote:
I would have thought using 7bit samples would have provided a large boost though but maybe I overestimated it. Do you know if there is an available open source tracker which implements these tricks? Quote:
It is hard to say though without FM synth knowledge whether good samples are computationally intensive to generate or not. I seem to recall reading that the best MegaDrive/Genesis sounds were obtained by varying the FM parameters dynamically with the machine's Z80 but I am not too sure anymore if I actually read it or if I deduced it from a few reads here and there. |
||
09 January 2016, 16:33 | #92 | ||
Total Chaos forever!
Join Date: Aug 2007
Location: Waterville, MN, USA
Age: 49
Posts: 2,223
|
Quote:
Quote:
|
||
09 January 2016, 20:32 | #93 | |||
son of 68k
Join Date: Nov 2007
Location: Lyon / France
Age: 51
Posts: 5,377
|
Quote:
Well, ok, one would say that you have more bits to shift if you mix more channels, but then you mix in 16 bits and shift just once at the end (or not shift at all if using 14bit output). Quote:
Quote:
|
|||
09 January 2016, 21:07 | #94 |
Amigan
Join Date: Feb 2012
Location: London
Posts: 1,321
|
|
09 January 2016, 21:31 | #95 |
son of 68k
Join Date: Nov 2007
Location: Lyon / France
Age: 51
Posts: 5,377
|
|
15 January 2016, 16:56 | #96 | ||
Registered User
Join Date: May 2014
Location: inside the emulator
Posts: 377
|
Quote:
A 386 even in the sx version have no problem mixing many 16 bit channels. Quote:
- Reduce the number of volume levels. - Reduce the number of sample frequencies + use generated code for changing pitch. - Use pre-scaled samples. - Self-modifying code. - Mixing buffer with higher precision than input samples (8 bit samples -> 16 bit buffer, 16 bit samples -> 32 bit buffer), reduces overflow management. But the target platform have to be known before coding a mixing routine, a superscalar processor with fast multiply may work best with a tight routine with little optimizations, a superscalar with somewhat slower multiply may benefit from doing batching in order to use one multiplication instruction for doing two volume scalings and of course in a really slow machine one can't do too advanced optimizations as there isn't enough cycles available - so reducing sample precision + playback frequencies are really the only tool available. |
||
15 January 2016, 18:16 | #97 |
Registered User
Join Date: May 2013
Location: Grimstad / Norway
Posts: 862
|
Just for shits&giggles, might someone perhaps paste in one of the used mixer inner loops?
|
15 January 2016, 18:50 | #98 | ||||||
son of 68k
Join Date: Nov 2007
Location: Lyon / France
Age: 51
Posts: 5,377
|
Quote:
Quote:
Quote:
Totally useless, unless this number is reduced to just one. Quote:
Impractical ; not useful. Ugly. Fails on any cpu with a cache. Quote:
Quote:
|
||||||
16 January 2016, 13:26 | #99 | ||||||||
Registered User
Join Date: May 2014
Location: inside the emulator
Posts: 377
|
The Covox or the 8088? :P
A resistor ladder DAC coupled to an amplifier sounds surprisingly good for 8 bit playback, it's when one starts with 12..16 bits the resistor values begin to be critical IIRC. If you want to hear something worse: [ Show youtube player ] Jump to 6:59 for a 4 channel playback routine on the PC speaker :P Quote:
Interpolation isn't always useful though, some modules sound strange with it. Quote:
Quote:
Quote:
Quote:
Quote:
But the kind of SMC I'm talking about here uses large enough code blocks that flushing the cache isn't a problem. Perhaps I should call it dynamic code generation? Quote:
Quote:
And I thought we were talking about optimization not if a processor may mix channels? |
||||||||
16 January 2016, 15:50 | #100 |
Glastonbridge Software
Join Date: Jan 2012
Location: Edinburgh/Scotland
Posts: 2,243
|
resample all the samples before playback, to all the actually used notes. Will use a lot of memory...
|
Currently Active Users Viewing This Thread: 1 (0 members and 1 guests) | |
Thread Tools | |
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
Sound channels switched? | bLAZER | support.WinUAE | 21 | 28 October 2014 08:43 |
A600: missing sound channels | cosam | support.Hardware | 28 | 23 May 2010 06:43 |
More that 4 Sound Channels??? | Dragon3d | support.WinUAE | 8 | 01 February 2008 17:30 |
shufflepuck cafe 4 channels sound is crazy | turrican3 | support.WinUAE | 5 | 08 November 2007 15:41 |
help sound 4 channels | turrican3 | support.WinUAE | 37 | 13 April 2007 09:17 |
|
|