Chris Robinson
5c55ec2f9b
More agressively hide PipeWire and SDL header warnings
2022-05-09 07:47:43 -07:00
Chris Robinson
2c9da1b671
Avoid an ugly and confusing generate_n
2022-05-08 20:22:25 -07:00
Chris Robinson
6f11638162
Clean up readAudio some
2022-05-08 11:39:28 -07:00
Chris Robinson
97ed5a870d
Drain audio frames when stopping playback in alffplay
2022-05-07 17:42:37 -07:00
Chris Robinson
e7a2c0af76
Define FUNCTION_CAST in a common header
2022-04-22 11:24:39 -07:00
Chris Robinson
12dd7bee90
Finalize AL_SOFT_UHJ
2022-04-13 23:02:35 -07:00
Chris Robinson
f2f83aaabb
Finalize AL_SOFT_callback_buffer
2022-04-01 19:31:22 -07:00
Chris Robinson
a731e042cc
Remove the unused flags parameter from alBufferCallbackSOFT
2022-04-01 19:15:16 -07:00
Chris Robinson
4999b5716c
Remove a dead store
2022-03-30 05:01:42 -07:00
Chris Robinson
ab8b828c57
Use a more C99-compliant function cast
2022-02-26 07:42:28 -08:00
Chris Robinson
d137ee02a8
Constify the AVCodec* returned by avcodec_find_decoder
2022-02-19 17:49:06 -08:00
Chris Robinson
f3aa08aad9
Make sure alffplay properly stops when quiting
...
The parser thread could be waiting on the threads to join after queueing all
packets, so it wouldn't see mQuit to flush the queue. So make a stop method
that forces a flush when setting mQuit.
2021-12-27 15:26:11 -08:00
Chris Robinson
21e2b9aeea
Heavily update alffplay packet handling
...
Avoid deprecated use of raw AVPacket objects, and use a separate thread to send
packets than receives the decoded frames.
2021-12-26 21:24:56 -08:00
Chris Robinson
a45e02791d
Remove unnecessary ifdefs from alffplay
...
We already assume OpenAL Soft's alext.h, which these are part of now.
2021-12-24 17:50:47 -08:00
Chris Robinson
0886d8efa7
Use the audio clock as the default in alffplay
2021-12-24 14:48:58 -08:00
Chris Robinson
a051909c35
Add an option to use Super Stereo in alffplay
2021-12-15 02:54:15 -08:00
Chris Robinson
bbff1efa2a
Update some in-progress extension types
2021-11-10 01:21:49 -08:00
Chris Robinson
0ec549ae7a
Fix short initial packet preparation in alffplay
2021-05-20 23:48:43 -07:00
Chris Robinson
c7f3a02956
Add an option to decode stereo as UHJ in alffplay
2021-04-02 07:21:17 -07:00
Chris Robinson
f0726f471f
Use float formats in examples/alstreamcb
...
libsndfile apparently has issues reading floating-point wave files as 16-bit
samples (produces silence). Even on other file formats, reading float samples
as integer samples has no over/underflow protection, so this is better for
those formats too.
2021-03-21 01:38:38 -07:00
Chris Robinson
3a3094c887
Fix some tabs and missing cast
2020-12-04 11:19:59 -08:00
Eliot Miranda
e3179aa058
Add a gain argument to altonegen ( #502 )
...
* Fix a speeling rorre in an error message.
Add a gain command-line argument to altonegen.c
* Fix some formatting issues and a copy/paste error.
2020-12-04 11:15:27 -08:00
Chris Robinson
267d9caac4
Check for the right extension string in alffplay
2020-10-26 12:21:42 -07:00
Chris Robinson
be0798b56d
Finalize AL_SOFT_events
2020-10-26 10:57:48 -07:00
Chris Robinson
88b9eb1560
Silence a couple more MSVC warnings
2020-10-23 21:03:13 -07:00
Chris Robinson
0dc9ae0998
Update event enum values
...
To keep them less spread out from other OpenAL Soft extensions.
2020-10-07 20:13:52 -07:00
Chris Robinson
04fd50bcdf
Support B-Format sounds in the examples
2020-09-22 11:36:43 -07:00
Chris Robinson
d2970443dd
Recognize B-Format format names in the examples
2020-09-22 10:43:27 -07:00
Chris Robinson
c993ade9bf
Support B-Format amb file IRs in alconvolve
...
Be aware this requires proper header data (a WAVE_FORMAT_EXTENSIBLE format with
the proper integer or float B-Format sub-format GUID). A normal 4-channel wave
file will not be recognized, since it's indistinguishable from quadrophonic.
2020-09-22 10:18:43 -07:00
Chris Robinson
844e6c881b
Add an alconvolve option to silence the dry signal
2020-09-22 08:30:04 -07:00
Chris Robinson
191150d9a8
Remove deprecated, performance, and error event types
...
These would be better served with a proper debug API, rather than a general
audio event API.
2020-09-20 04:11:52 -07:00
Chris Robinson
f5163ca988
Print the name and format for alconvole's impulse response
2020-09-05 23:48:19 -07:00
Chris Robinson
1968136c98
Add an in-progress extension string for convolution reverb
2020-09-01 07:37:07 -07:00
Chris Robinson
97ecf5810f
Base the convolution example on the simpler stream example
2020-08-26 17:23:50 -07:00
Chris Robinson
577a8234f2
Recognize float32 format names for the example healpers
2020-08-26 17:15:30 -07:00
Chris Robinson
309be1c6f6
Add an example using convolution reverb
2020-08-25 04:59:04 -07:00
Chris Robinson
fd52c828a9
Improve handling main() with UTF-8 args on Windows
2020-08-12 17:40:00 -07:00
Chris Robinson
476e9d7522
Cleanup some warnings with ffmpeg/alffplay
2020-08-12 17:39:08 -07:00
Chris Robinson
529049dc59
Remove an unused variable
2020-08-11 10:06:12 -07:00
Chris Robinson
972869f76f
Dump the ffmpeg file info on the main thread
2020-04-29 21:32:09 -07:00
Chris Robinson
cae78e79e8
Convert the examples from SDL_sound to libsndfile
2020-03-24 15:46:47 -07:00
Chris Robinson
586bc94d51
Use libsndfile for the alplay example
2020-03-24 13:36:49 -07:00
Chris Robinson
f6a0b004e0
Update to C++14
2020-03-22 08:05:22 -07:00
Chris Robinson
8554e6cde2
Remove AL_SOFT_map_buffer from alffplay and add AL_SOFT_callback_buffer
...
The former doesn't really help too much since buffers still need to be
(re)filled and (de)queued individually. A callback buffer, on the other hand,
allows for greater efficiency since it just needs to write into a ring buffer
that the mixer will directly read from.
2020-02-23 06:28:39 -08:00
Chris Robinson
642ef4edc9
Add a streaming example using a callback buffer
2020-02-20 17:53:09 -08:00
Chris Robinson
aca1d02024
Get the audio sync once per update in alffplay
2020-01-13 17:31:35 -08:00
Chris Robinson
6ed8061cbf
Finalize AL_SOFT_bformat_ex
2020-01-05 03:45:35 -08:00
Chris Robinson
137394c2cf
Make the new direct channel remix extension public
2019-12-28 16:40:10 -08:00
Chris Robinson
bbe1c4c64e
Test the B-Format buffer extension in alffplay
2019-12-02 13:04:44 -08:00
Chris Robinson
e70f98c95a
Wrap the cycle amount when passing to sin()
2019-10-12 16:41:13 -07:00