Samuel Gomes
d7a04f9164
Tidy up RAD sources
2023-04-02 16:37:18 +05:30
Samuel Gomes
5a14c90e31
Add RAD v1 support
2023-04-02 15:27:40 +05:30
Samuel Gomes
a7559fb352
Update miniaudio to v0.11.14
2023-04-02 15:03:08 +05:30
Samuel Gomes
ce41ec5eaa
Opal OPL emulator fixes & update 1
2023-04-02 14:56:59 +05:30
Samuel Gomes
8a9b8a2f25
Update TSF and add SF3 support. Fix $MIDISOUNDFONT behavior
2023-03-26 11:38:03 +05:30
Samuel Gomes
8e8d06fd20
miniaudio version number bump
2023-03-23 05:58:10 +05:30
Samuel Gomes
5dc77acec9
Fix compilation errors with the C++ build
2023-03-22 09:18:28 +05:30
Samuel Gomes
09a9728464
Update miniaudio to version 0.11.12
2023-03-20 05:44:38 +05:30
Samuel Gomes
9686676324
BufferMap: only delete assignment operators
2023-01-09 06:11:21 +05:30
Samuel Gomes
60204afc8e
Update delete copy and move constructors and assignments for BufferMap
2023-01-09 06:06:58 +05:30
Samuel Gomes
d48df65282
Delete copy and move constructors and assignments operators for BufferMap class
2023-01-09 06:02:29 +05:30
Samuel Gomes
8c0590acee
Add workaround for _SNDCOPY for sound created using _SNDOPEN(buffer, "memory")
2023-01-09 05:33:39 +05:30
Samuel Gomes
2e176ebf98
Set AUDIO_DEBUG to 0
2023-01-08 00:34:58 +05:30
Samuel Gomes
2957c41061
Workaround for _SNDCOPY for _SNDNEW sounds. Another one to follow for _SNDOPEN(buffer, "memory")
2023-01-08 00:14:59 +05:30
Samuel Gomes
5a893b8ffc
Update comments and some beautification
2023-01-06 20:32:03 +05:30
Samuel Gomes
eacee1f609
Add PushMonoSampleFrames
2023-01-06 12:21:17 +05:30
Samuel Gomes
f7690aea17
Update comments
2023-01-02 16:24:08 +05:30
Samuel Gomes
ecfe4fb1be
Format code
2023-01-01 23:17:56 +05:30
Samuel Gomes
6c72deafc1
Improve _SNDOPEN test and supress printfs in Hively replayer code
2023-01-01 23:14:05 +05:30
Samuel Gomes
e4273c0a68
Add Amiga AHX & HVL decoder
2023-01-01 22:56:02 +05:30
Samuel Gomes
061bf6af3d
Rename _NEWSOUND
to _SNDNEW
to align with _SND*
APIs
2022-12-31 12:00:38 +05:30
Samuel Gomes
da9d9e871c
Fix for template argument deduction/substitution failed
2022-12-31 05:18:22 +05:30
Samuel Gomes
4c80f6bcea
Implement feature request #28
2022-12-31 01:49:23 +05:30
Samuel Gomes
eebb56afd5
Implement load sound from memory #232
2022-12-22 20:42:27 +05:30
Samuel Gomes
a72f80258f
Address #186
2022-12-22 15:11:20 +05:30
Samuel Gomes
bc65076feb
Reduce mutex locks by using 2 vectors for _SNDRAW
2022-12-21 11:47:41 +05:30
Samuel Gomes
1357f53041
Add NO_PITCH, NO_SPATIALIZATION flags for raw ma_sound
2022-12-16 12:28:22 +05:30
Samuel Gomes
bcc7105641
Avoid getting queue size inside loop
2022-12-16 03:50:32 +05:30
Samuel Gomes
bd82b24ac7
Improve SOUND timing - #167
2022-12-15 10:47:27 +05:30
Samuel Gomes
df9b739e23
Address #166 - _SNDRAW using miniaudio data source
2022-12-15 09:16:42 +05:30
Samuel Gomes
cf16cb0c00
Replace custom queue code with C++ STL queue
2022-12-13 09:12:52 +05:30
Samuel Gomes
4c5072e0aa
Enable PulseAudio on Linux
2022-11-18 10:46:58 +05:30
Samuel Gomes
7c2f709b7e
Change blockSampleFrames for reduced latency
2022-11-11 18:50:59 +05:30
Samuel Gomes
2a5e2e8add
Add O2 by default due to resampling code in audio
2022-11-10 18:48:41 +05:30
Samuel Gomes
d2cd85825f
Update miniaudio to v0.11.11
2022-11-04 22:43:27 +05:30
Samuel Gomes
9a509cab61
Update miniaudio to v0.11.10
2022-11-03 18:11:20 +05:30
Samuel Gomes
327d753206
Move qbs_new_txt_len() declaration to libqb.h
2022-10-23 18:23:35 +05:30
Samuel Gomes
a2e77d7557
Only change _SNDBAL
stereo panning if x
is passed. Mimic old OpenAL behavior.
2022-10-05 15:28:04 +05:30
Samuel Gomes
7e63a68407
Simplify sub__sndplaycopy
2022-10-05 06:31:46 +05:30
Samuel Gomes
f49f8bdf06
Implement _SNDPLAYCOPY
enhancement #185
2022-10-05 02:33:44 +05:30
Matthew Kilgore
aea4a6058e
Fix linking audio when using $CONSOLE:ONLY
...
A quick fix, but providing `DEPENDENCY_CONSOLE_ONLY` when compiling
audio.cpp tells `common.h` to avoid pulling in `freeglut.h`, which fixes
the linking issue.
Fixes: #172
2022-09-17 03:06:24 -04:00
Samuel Gomes
8425f117a7
Fix #169 & #170
2022-09-10 04:08:31 +05:30
Matthew Kilgore
cd5e312f5a
Revert changes to miniaudio.h, move changes elsewhere
...
Changing midiaudio.h will make it harder to incorporate new versions
into QB64-PE as they come out. To fix that I have reverted all the
changes to midiaudio.h and moved the few private parts we were using
into a separate 'filepath' API that's part of libqb.
2022-09-08 23:59:19 -04:00
Matthew Kilgore
3e4477521a
fix audio midi vtable linking
2022-09-04 23:35:14 -04:00
Matthew Kilgore
2b3403745c
Add initial MIDI language support
...
This adds MIDI support to the language as a new unstable feature. There
are two new metacommands that come with this:
$Unstable: Midi
$MidiSoundFont: [Default|"filename"]
The $Unstable command is required to be able to use any of the other
commands, and just signifies that this is not a full part of the
language yet and may change in breaking ways before the API is
finalized.
The $MidiSoundFont command enables MIDI support in the compiled program,
and also specifies what sound font to use to play MIDI files. "Default"
will make use of the soundfont placed at
'./internal/support/default_soundfont.sf2', and otherwise a filename can
be specified to use any soundfont wanted.
In either case, the selected sound font is compiled into the executable
and then loaded at runtime.
Fixes: #115
2022-09-04 23:35:14 -04:00
Samuel Gomes
d3854630cf
Fix usage of mem_block
type
in _MEMSOUND
2022-09-04 05:16:41 +05:30
Matthew Kilgore
c989be69f6
Disable MIDI support
...
This will be added back soon with with functionality to be able to
optionally enable it.
2022-08-27 14:27:55 -04:00
Matthew Kilgore
48208e2eda
Change miniaudio build logic to always clean all files
2022-08-27 14:27:55 -04:00
Matthew Kilgore
41cc1e6569
Integrate the miniaudio backend into the build
...
This integrates the miniaudio backend, using a new `DEP_AUDIO_MINIAUDIO`
flag to enable it. This will allow consumers to choose which backend to
use.
2022-08-27 14:27:55 -04:00
Matthew Kilgore
481906977e
Add a740g's miniaudio backend
...
This is a single commit adding all of a740g's audio backend. Later
commits will connect it together with QB64PE itself.
2022-08-27 14:27:55 -04:00