1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-26 00:05:07 +00:00
Commit graph

4 commits

Author SHA1 Message Date
Andrew Kaster
06865c78c7 LibAudio: Make it so that an unused WavWriter is destructible
WavWriter::finalize didn't check that m_file was actually valid before
trying to seek and close it. The file is only set by set_file, so it's
not an invariant. Just add a null guard to finalize().
2020-12-31 21:59:20 +01:00
Andreas Kling
f1b1558c7b Everywhere: Tweak "2020-2020" => "2020" in copyright headers 2020-12-25 12:24:05 +01:00
asynts
805ed03b48 LibAudio: Use new format functions. 2020-10-17 23:20:31 +02:00
William McPherson
82d17d2c79 LibAudio: Implement Audio::WavWriter
This class mirrors WavLoader and uses the same variable names so they
can be read side-by-side.

In a simple use-case, you construct a WavWriter object with your file
path and audio parameters, call write_samples() with your bytes and then
either finalize() to finish writing the file or allow the destructor to
do it automatically.

finalize() is needed because the WAV header cannot be written until the
size of the data section is known. You only need to call this manually
if you want to write a WAV file and then immediately load it.

You can also use one WavWriter instance multiple times by repeatedly
calling finalize() and set_file().
2020-02-06 19:13:53 +01:00