Reads audio files from "wav" and "mp3" files, using tuneR::tuneR
methods. Commodore Amiga native formats "8svx" and "raw" can also be read.
Usage
# S4 method for character
read.sample(filename, what = c("wav", "mp3", "8svx", "raw"))
Arguments
- filename
A
character
string representing the filename to be read.- what
A
character
string indicating what type of file is to be read. Can be one of the following:"wav"
(default),"mp3"
,"8svx"
or"raw"
. TheAmigaFFH
package needs to be installed in order to read 8svx files.
Details
This method provides a wrapper for the tuneR::readWave
and
tuneR::readMP3
methods from tuneR::tuneR
. It also
provides the means to import audio from file formats native to the Commodore
Amiga. Simple 8svx files (also known
as "iff" files) can be read. This uses the AmigaFFH::read.iff
method
from the AmigaFFH::AmigaFFH
package.
It was also common practice to store audio samples as raw data on the
Commodore Amiga, where each byte simply represented a signed integer value
of the waveform.
All audio will be coerced to 8 bit mono with a maximum length of
2*0xffff
= 131070
bytes (= samples) as per ProTracker standards.
Note
As per ProTracker standards, a sample should have an even length
(in bytes). If a sample file has an odd length, a raw
0x00
value
is added to the end.
See also
Other sample.operations:
PTSample-class
,
PTSample-method
,
fineTune()
,
loopLength()
,
loopSample()
,
loopStart()
,
loopState()
,
name
,
playSample()
,
sampleLength()
,
volume()
,
waveform()
,
write.sample()
Other io.operations:
read.module()
,
write.module()
,
write.sample()
Examples
if (FALSE) {
data("mod.intro")
## create an audio file which we can then read:
write.sample(PTSample(mod.intro, 2), "snaredrum.iff", "8svx")
## read the created sample:
snare <- read.sample("snaredrum.iff", "8svx")
print(snare)
}