首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >为什么索克斯什么都没录?

为什么索克斯什么都没录?
EN

Unix & Linux用户
提问于 2021-12-14 18:58:01
回答 1查看 177关注 0票数 0

我有一个RTL无线电接收器,它输出流数据到stdout.我可以使用以下命令收听音频:

代码语言:javascript
复制
$ rtl_fm -M wbfm -f 96.5M | play -r 32k -t raw -e s -b 16 -c 1 -V1 -

如您所见,rtl_fm以32 kHz的采样速率输出由16位有符号整数组成的示例流。

现在,我想用sox录制这个音频,所以我尝试了

代码语言:javascript
复制
$ rtl_fm -M wbfm -f 96.5M -g 25 | rec -e s -b 16 -r 32000 out.wav

我得到了一个wav文件,但是它是空的-所有的值都是零。我试过了

代码语言:javascript
复制
$ rtl_fm -M wbfm -f 96.5M -g 25 | rec -e s -b 16 -r 32000 -t raw out.wav

但那只给了我一份文件奥迪没有认出是wav。如果我把它作为原始数据导入,它仍然是零。

就像我写的,当我运行播放命令时,我有音频,但是当我录制时,我什么也得不到。

关于它的价值,下面是record命令的输出:

代码语言:javascript
复制
$ rtl_fm -M wbfm -f 96.5M -g 25 | rec -e s -b 16 -r 32000 -c 1 out.wav
Found 1 device(s):
0:  Realtek, RTL2838UHIDIR, SN: 00000001

rec WARN alsa: can't encode 0-bit Unknown or not applicable
Using device 0: Generic RTL2832U OEM

Input File     : 'default' (alsa)
Channels       : 1
Sample Rate    : 32000
Precision      : 16-bit
Sample Encoding: 16-bit Signed Integer PCM

In:0.00% 00:00:00.00 [00:00:00.00] Out:0     [      |      ]        Clip:0    Detached kernel driver
In:0.00% 00:00:00.26 [00:00:00.00] Out:0     [      |      ]        Clip:0    Found Rafael Micro R820T tuner
In:0.00% 00:00:00.51 [00:00:00.00] Out:8.19k [      |      ]        Clip:0    Tuner gain set to 25.40 dB.
Tuned to 96771000 Hz.
oversampling input by: 6x.
Oversampling output by: 1x.
Buffer size: 8.03ms
Exact sample rate is: 1020000.026345 Hz
Create UDP thread
Created UDP thread
Allocating 15 zero-copy buffers
Main socket started! :-) Tuning enabled on UDP/6020 
Sampling at 1020000 S/s.
Output at 170000 Hz.
In:0.00% 00:00:09.22 [00:00:00.00] Out:287k  [      |      ]        Clip:0    ^CSignal caught, exiting!

User cancel, exiting...
In:0.00% 00:00:09.47 [00:00:00.00] Out:295k  [      |      ]        Clip:0    
Aborted.
Signal caught, exiting!
Reattached kernel driver
EN

回答 1

Unix & Linux用户

回答已采纳

发布于 2021-12-14 19:06:16

您可以将rec替换为ffmpeg -f s16le -ar 32k -ac 1 -i pipe: file.wav

ffmpeg -formats | grep PCM,万一我错了。

你的输出

rec警告alsa:无法编码0位未知或不适用

可能意味着你实际上是在用一个实际的麦克风录音(我想这是没有连接的)。

票数 1
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/681470

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档