read.sample {ProTrackR}R Documentation

Read an audio file and coerce to a PTSample object

Description

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 signature '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". The AmigaFFH 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.

Value

Returns a PTSample object based on the file read.

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.

Author(s)

Pepijn de Vries

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

## Not run: 
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)

## End(Not run)


[Package ProTrackR version 0.4.3 Index]