我试图从连接到Android主板的麦克风中捕获音频。为此,我通过ADB使用tinycap。我想创建10秒长的音频文件。
当我运行命令时:
tinycap sdcard/testadudio.wav
手动和CTRL + C,它会生成一个音频文件并捕获音频。使用命令:
timeout 10s tinycap sdcard/testadudio.wav
它会生成一个没有音频的损坏的音频文件。
有什么想法吗?
答案 0 :(得分:2)
Ctrl + C发送SIGNIT
,但超时发送SIGTERM
。尝试将-s INT
添加到超时命令。
答案 1 :(得分:0)
此操作无法完成,因为出于隐私方面的考虑,Android在未启用构建中的Tee Sink的情况下关闭了任何记录音频流的尝试。 https://source.android.com/devices/audio/debugging
对此,答案的以下部分与tinycap有关:
尽管实际参数可能有所不同,但tinycap
实际上似乎支持这一点。
运行
$ adb -d shell tinycap
Usage: tinycap file.wav [-D card] [-d device] [-c channels] [-r rate]
[-b bits] [-p period_size] [-n n_periods] [-T capture time]
表示-T
将允许您控制记录的长度。但是,在我的台式机Linux上安装的最新版本的tinycap
上运行此命令会得到不同的结果:
$ tinycap
Usage: tinycap {file.wav | --} [-D card] [-d device] [-c channels] [-r rate]
[-b bits] [-p period_size] [-n n_periods] [-t time_in_seconds]
Use -- for filename to send raw PCM to stdout
在这里,似乎-t
控制着录音的时间。