标签: sox

从sox输出获取.wav的长度

我需要获取.wav文件的长度.

使用:

sox output.wav -n stat
Run Code Online (Sandbox Code Playgroud)

得到:

Samples read:            449718
Length (seconds):     28.107375
Scaled by:         2147483647.0
Maximum amplitude:     0.999969
Minimum amplitude:    -0.999969
Midline amplitude:     0.000000
Mean    norm:          0.145530
Mean    amplitude:     0.000291
RMS     amplitude:     0.249847
Maximum delta:         1.316925
Minimum delta:         0.000000
Mean    delta:         0.033336
RMS     delta:         0.064767
Rough   frequency:          660
Volume adjustment:        1.000
Run Code Online (Sandbox Code Playgroud)

如何使用grep或其他方法仅输出第二列中的长度值,即28.107375?

谢谢

audio grep pipe wav sox

37
推荐指数
4
解决办法
3万
查看次数

检查命令行上的音频文件的持续时间

我需要检查一组音频文件的持续时间.有没有一种简单的方法在unix命令行上执行此操作?

> duration *
Run Code Online (Sandbox Code Playgroud)

我有一个惊人的SoX应用程序,它有一个名为stats的选项,可以生成一组包含持续时间的音频信息.我正在寻找一种方法来获得持续时间.我对输出格式很灵活,可以是任何样本长度,hh:mm:ss或秒.后者是我的偏好.

unix audio sox

37
推荐指数
11
解决办法
3万
查看次数

如何使用sox获取音频文件采样率?

我想使用sox获取给定音频文件的采样率.无法找到命令行来执行此操作.

audio sox

30
推荐指数
1
解决办法
3万
查看次数

你如何使用SoX修剪音频文件?

使用Sox,如何将音频文件缩短5秒,从最后修剪?

例如,这是如何从头开始修剪文件:

    sox input output trim 5000
Run Code Online (Sandbox Code Playgroud)

这是如何在结尾添加5秒的沉默:

    sox input output pad 0 5000
Run Code Online (Sandbox Code Playgroud)

audio trim sox

30
推荐指数
3
解决办法
4万
查看次数

sox FAIL util:无法加载MAD解码器库(libmad)函数"mad_stream_buffer"

我为sox编译了libmad.当我尝试读取mp3时,我收到此消息:

sox FAIL util:无法加载MAD解码器库(libmad)函数"mad_stream_buffer".

我是否错误地编译了项目?

windows dll mp3 sox visual-c++

28
推荐指数
4
解决办法
2万
查看次数

转换采样率时减少/去除SoX中的削波

我正在使用SoX将一组wav文件修剪成16kHz,16bit,单声道wav文件(这将是其中一个初始wav文件的子集).大多数源wav文件已经设置为此规范,但是,我发现其中一些具有不同的采样率.由于它将使用ProcessBuilder在Java中自动化,我想我可以使用以下命令:

sox <source_wav> -b 16 <dest_wav> channels 1 rate 16000 trim <startTime> =<endTime>
Run Code Online (Sandbox Code Playgroud)

如果它不是16000赫兹,它只会改变采样率.它在具有相同规范的文件上做了它应该做的事情,但对于具有不同采样率的文件,我得到:

sox WARN rate: rate clipped 48 samples; decrease volume?
sox WARN dither: dither clipped 44 samples; decrease volume?
Run Code Online (Sandbox Code Playgroud)

如何在不降低音频质量的情况下解决这个问题?请注意,我对信号处理一无所知.

audio sox

27
推荐指数
1
解决办法
2万
查看次数

如何以编程方式从MP3中删除静音?

我有MP3文件,有时最后会沉默.我想自动删除这个沉默.从我所知,它是"完美的"沉默(0幅度),而不是背景噪音.内容的长度和沉默各不相同.

我发现了一些其它问题,有关裁剪至前30秒裁剪到X和X + N秒使用ffmpeg.我想我可以使用类似的方法,只要我有办法找到沉默开始的时候.我将如何以编程方式执行此操作?

例如,一种可能的解决方案是使用命令找到"沉默"的开始.我期待这样的序列

end=$(ffmpeg some-command-to-find-start-of-silence)
ffmpeg -t "$end" -acodec copy -i inputfile.mp3 outputfile.mp3
Run Code Online (Sandbox Code Playgroud)

该解决方案并没有必须使用ffmpeg,但它确实需要可在Ubuntu上.

audio ubuntu mp3 ffmpeg sox

24
推荐指数
3
解决办法
2万
查看次数

如何在有静音的地方批量分割音频文件?

我在SoX中使用以下命令在每个静默时间超过0.3秒的地方分割许多大型音频文件:

sox -V3 input.wav output.wav silence 1 0.50 0.1% 1 0.3 0.1% : newfile : restart
Run Code Online (Sandbox Code Playgroud)

然而,这有时会在每次休息之前偶尔创建完全静音的文件并修剪音频.

我在Audacity中找到了更好的结果,但我需要分割数百个WAV文件,Audacity甚至无法同时打开10个文件而不会冻结.

如何在0.3秒的静音期结束时使用SoX或类似软件分割文件,这样静音部分仍然贴在说话结束时,但之前没有,并且没有完全静音的剪辑,除非他们从一开始就来input.wav

audio split audacity sox

20
推荐指数
3
解决办法
1万
查看次数

如何使用sox将wav文件转换为mp3格式?

当我直接从命令行运行sox时;

sox -r 8000 -c 1 <wavfilename> <mp3filename>
Run Code Online (Sandbox Code Playgroud)

我收到以下错误消息:

sox:'747a.mp3'的输出文件格式未知:文件类型'mp3'未知

我的机器正在运行CentOS操作系统.

mp3 centos wav sox

19
推荐指数
3
解决办法
5万
查看次数

如何用SOX去噪?

Givent一个audio.wav录音,在开始和结束时都保持沉默至少1秒......

如何用SOX去噪?

audio-recording sox

13
推荐指数
1
解决办法
5919
查看次数

标签 统计

sox ×10

audio ×7

mp3 ×3

wav ×2

audacity ×1

audio-recording ×1

centos ×1

dll ×1

ffmpeg ×1

grep ×1

pipe ×1

split ×1

trim ×1

ubuntu ×1

unix ×1

visual-c++ ×1

windows ×1