13 : audioInputFilenameSetting(
14 commandController,
"audio-inputfilename",
15 "filename of the file where the sampler reads data from",
17 , reference(EmuTime::zero())
19 audioInputFilenameSetting.
attach(*
this);
24 audioInputFilenameSetting.
detach(*
this);
27 void WavAudioInput::loadWave()
40 return "Read .wav files. Can for example be used as input for "
60 void WavAudioInput::update(
const Setting& setting) noexcept
63 assert(&setting == &audioInputFilenameSetting);
68 }
catch (MSXException& e) {
70 setting.getCommandController().getCliComm().printWarning(
71 "Load of wave file failed: ", e.getMessage());
78 unsigned pos = (time - reference).getTicksAt(wav.
getFreq());
84 template<
typename Archive>
87 ar.serialize(
"reference", reference);
89 update(audioInputFilenameSetting);
Represents something you can plug devices into.
zstring_view getString() const noexcept
const std::string & getMessage() const &
Thrown when a plug action fails.
void detach(Observer< T > &observer)
void attach(Observer< T > &observer)
int16_t getSample(unsigned pos) const
string expandTilde(string path)
Expand the '~' character to the users home directory.
This file implemented 3 utility functions:
REGISTER_POLYMORPHIC_INITIALIZER(Pluggable, CassettePlayer, "CassettePlayer")
#define INSTANTIATE_SERIALIZE_METHODS(CLASS)