gpt4 book ai didi

r - 如何从 R 中的 4 个单独的音频文件中创建一个 4 channel 的音频文件?

转载 作者:行者123 更新时间:2023-12-02 23:49:53 26 4
gpt4 key购买 nike

我是 R 的初学者。我写信给这个论坛是因为我经常在这里找到非常有用的问题和答案。我正在尝试从 4 个单独的立体声音频文件的右声道中创建一个 4 声道 .wav 音频文件。这是我尝试使用 tuneR 做的事情:

# read in 4 stereo audio files

s1A <- readWave("/090306_1A.wav")
s2A <- readWave("/090306_2A.wav")
s3A <- readWave("/090306_3A.wav")
s4A <- readWave("/090306_4A.wav")

# extract the right channel as a vector file

m1A <- s1A@right
m2A <- s2A@right
m3A <- s3A@right
m4A <- s4A@right

# combine the four files into one multi-channel file

A_1 <- WaveMC(data = list(m1A, m2A, m3A, m4A), samp.rate = 96000, bit = 16, pcm = TRUE)

# write the multi-channel file as a .wav file

writeWave(A_1, filename = "/A_1.wav", extensible= TRUE)

在这里,我收到一条错误消息:
"Error in writeWave(A_1, filename = "/A_1.wav",  : 
colnames(object) must be specified and must uniquely identify the channel ordering for WaveMC objects, see ?MCnames for possible channels"

我查看了 MCnames,可以看到包含三个变量(所有 4 个 channel 的 id、标签和名称)的数据框是必要的。我找不到的是如何正确创建它(意味着 id、label 和 name 应该是什么?)以及如何将它与 writeWave 一起使用?我已经检查了 MCnames 下的 R 帮助文件中提到的网站,但我仍然不明白如何在我的情况下使用它。我尝试了各种组合 - 这是一个:
id = c("m1A","m2A","m3A","m4A")
label = c("Front Left - FL", "Front Right - FR", "Front Center - FC", "Low Frequency - LF")
name = c(1,2,3,4)
names <- data.frame(id, label, name)
writeWave(A_1, colnames(names), filename = "/A_1.wav", extensible= TRUE)

这也会导致错误消息:
"Error in writeWave(A_1, colnames(names), filename = "/A_1.wav",  : 
unused argument (colnames(names))

我将不胜感激任何帮助。

提前致谢,
输出

最佳答案

我无法真正测试它是否有效,但您应该在 A_1 中进行命名
试试下面的代码:

colnames(A_1$Data) <- c("Front Left - FL", "Front Right - FR", "Front Center - FC", "Low Frequency - LF")

然后运行最后一行。

关于r - 如何从 R 中的 4 个单独的音频文件中创建一个 4 channel 的音频文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26122661/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com