https://github.com/cran/tuneR
Raw File
Tip revision: 9eca3274b33bf9ada5a67dd452bb5726627067d1 authored by Uwe Ligges on 04 February 2009, 00:00:00 UTC
version 0.2-14
Tip revision: 9eca327
play.R
setGeneric("play",
function(object, player, ...) standardGeneric("play"))

setMethod("play", signature(object = "character", player = "ANY"),
function(object, player, ...){
    if(missing(player)){
        player <- getWavPlayer()
        if(.Platform$OS.type == "windows" && is.null(player)){
            player <- "c:/Program Files/Windows Media Player/wmplayer.exe"
            if(!file.exists(player)){
                player <- "mplay32"
                if(missing(...))
                    player <- paste(player, "/play /close")
            }
            else player <- shQuote(player)
        }
    }
    shell(paste('"', paste(player, ..., shQuote(object)), '"', sep=""))
})

setMethod("play", signature(object = "Wave", player = "ANY"),
function(object, player, ...){
    filename <- "tuneRtemp.wav"
    wd <- getwd()
    setwd(tempdir())
    on.exit({unlink(filename); setwd(wd)})
    writeWave(object, filename)
    play(file.path(tempdir(), filename), player, ...)
})
back to top