aboutsummaryrefslogtreecommitdiffstats
path: root/examples/alffplay.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Clean up some gotos and non-optimal castsChris Robinson2023-12-261-2/+1
|
* Use standard methods for roundingChris Robinson2023-12-251-2/+2
|
* Fix implicit widening after multiplicationChris Robinson2023-12-231-8/+8
|
* Ensure struct members are initializedChris Robinson2023-12-201-1/+1
|
* Fix some implicit conversionsChris Robinson2023-12-171-1/+1
|
* Much more clang-tidy cleanupChris Robinson2023-12-101-26/+26
|
* Fix some clang-tidy warningsChris Robinson2023-12-081-33/+28
|
* Make the API functions noexceptChris Robinson2023-05-221-6/+6
| | | | | | | | | | | Only relevant for C++, but these functions can't throw as it's a C-based API. Letting the compiler know that helps improve code generation. Extension callbacks must also not let exceptions leave the callback, or else Bad Things can happen. The macro AL_DISABLE_NOEXCEPT may be defined before including the headers to not mark functions as noexcept, but this should only be done if the caller can't otherwise be fixed.
* Avoid overriding main with SDLChris Robinson2022-11-231-0/+3
|
* Fix an ambisonic layout check in alffplayChris Robinson2022-09-241-1/+1
|
* Update alffplay to support newer ffmpeg versionsChris Robinson2022-08-201-115/+138
|
* More agressively hide PipeWire and SDL header warningsChris Robinson2022-05-091-4/+4
|
* Avoid an ugly and confusing generate_nChris Robinson2022-05-081-13/+7
|
* Clean up readAudio someChris Robinson2022-05-081-76/+40
|
* Drain audio frames when stopping playback in alffplayChris Robinson2022-05-071-7/+16
|
* Finalize AL_SOFT_UHJChris Robinson2022-04-131-36/+2
|
* Finalize AL_SOFT_callback_bufferChris Robinson2022-04-011-21/+1
|
* Remove the unused flags parameter from alBufferCallbackSOFTChris Robinson2022-04-011-4/+2
|
* Remove a dead storeChris Robinson2022-03-301-1/+0
|
* Constify the AVCodec* returned by avcodec_find_decoderChris Robinson2022-02-191-1/+1
|
* Make sure alffplay properly stops when quitingChris Robinson2021-12-271-10/+13
| | | | | | 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.
* Heavily update alffplay packet handlingChris Robinson2021-12-261-157/+209
| | | | | Avoid deprecated use of raw AVPacket objects, and use a separate thread to send packets than receives the decoded frames.
* Remove unnecessary ifdefs from alffplayChris Robinson2021-12-241-32/+9
| | | | We already assume OpenAL Soft's alext.h, which these are part of now.
* Use the audio clock as the default in alffplayChris Robinson2021-12-241-49/+59
|
* Add an option to use Super Stereo in alffplayChris Robinson2021-12-151-0/+23
|
* Update some in-progress extension typesChris Robinson2021-11-101-2/+2
|
* Fix short initial packet preparation in alffplayChris Robinson2021-05-201-3/+11
|
* Add an option to decode stereo as UHJ in alffplayChris Robinson2021-04-021-76/+137
|
* Check for the right extension string in alffplayChris Robinson2020-10-261-1/+1
|
* Finalize AL_SOFT_eventsChris Robinson2020-10-261-16/+0
|
* Update event enum valuesChris Robinson2020-10-071-5/+5
| | | | To keep them less spread out from other OpenAL Soft extensions.
* Remove deprecated, performance, and error event typesChris Robinson2020-09-201-9/+2
| | | | | These would be better served with a proper debug API, rather than a general audio event API.
* Cleanup some warnings with ffmpeg/alffplayChris Robinson2020-08-121-27/+36
|
* Remove an unused variableChris Robinson2020-08-111-1/+0
|
* Dump the ffmpeg file info on the main threadChris Robinson2020-04-291-64/+64
|
* Update to C++14Chris Robinson2020-03-221-1/+1
|
* Remove AL_SOFT_map_buffer from alffplay and add AL_SOFT_callback_bufferChris Robinson2020-02-231-153/+365
| | | | | | | 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.
* Get the audio sync once per update in alffplayChris Robinson2020-01-131-29/+27
|
* Finalize AL_SOFT_bformat_exChris Robinson2020-01-051-12/+12
|
* Make the new direct channel remix extension publicChris Robinson2019-12-281-7/+12
|
* Test the B-Format buffer extension in alffplayChris Robinson2019-12-021-9/+43
|
* Avoid implicit conversions with the examples and utilsChris Robinson2019-09-121-42/+44
|
* Cleanup the examples' includesChris Robinson2019-07-291-8/+23
|
* Increase the video picture queue size to 24Chris Robinson2019-07-261-1/+1
|
* Only redraw the image when necessaryChris Robinson2019-07-231-5/+16
|
* Only send packets as neededChris Robinson2019-07-231-39/+49
|
* Use a local variable to track the decoded ptsChris Robinson2019-07-201-6/+5
|
* Set the initial clock time closer to starting playbackChris Robinson2019-07-201-15/+13
|
* Restructure codec send/receive callsChris Robinson2019-07-191-75/+64
| | | | | | | | | In particular, after an initial fill of the codec's internal buffer, each receive_frame call is followed by one or more send_packet calls. For asynchronous codecs, this has the effect of letting the codec work while the handler thread is waiting for an AVFrame structure to become available or waiting for more decoded data to be needed. For synchronous codecs, this makes the send_packet calls use up time that would be spent waiting.
* Receive video frames in a loopChris Robinson2019-07-161-40/+50
|