3

ここでの最初の質問です。私が正しい質問をしたことを願っています。

「Music」フォルダー内のすべてのオーディオファイルの長さを持つベクトルを作成する短い R コードを作成しようとしています。i686-pc-linux-gnu (32 ビット) で RStudio 0.98.501 と R 3.0.3 を使用しています。tuneR パッケージを使用して、曲の長さに関する情報を抽出します。ここに問題があります: 最初の MP3 ファイルを正常にエクスポートしますが、2 番目の MP3 ファイルにエクスポートすると、「R セッションが中止されました。R で致命的なエラーが発生しました。セッションは終了します」というメッセージが表示されます。

Intel® Atom™ CPU N2800 @ 1.86GHz × 4、2 Gb メモリ、Ubuntu 13.10 で作業しています。

コードを以下に示します。ディレクトリを Music フォルダのあるディレクトリに変更するだけです。

    library(tuneR)
    # Set your working directory here
    ddpath <-  "/home/daniel/"
    wdpath  <- ddpath
    setwd(wdpath)
    # Create a character vector with all filenames
    filenames <- list.files("Music", pattern="*.mp3",
                            full.names=TRUE, recursive=TRUE)
    # How many audio files do we have?
    numTracks <- length(filenames)
    # Vector to store lengths
    lengthVector <- numeric(0)

    # Here problem arises
    for (i in 1:numTracks){
      numWave <- readMP3(filenames[i])
      lengthSec <- length(numWave@left)/numWave@samp.rate
      lengthVector <- c(lengthVector, lengthSec)
      rm(numWave)
    }
4

0 に答える 0