Firefly开源社区

12
发表新贴
打印 上一主题 下一主题

請問如何讀寫寄存器

55

积分

0

威望

0

贡献

技术小白

积分
55

請問如何讀寫寄存器

发表于 2019-3-26 11:50:27      浏览:7285 | 回复:11        打印      只看该作者   [复制链接] 楼主
測試pyaudio抓取音頻,
import pyaudio
import wave
FORMAT = pyaudio.paInt16
CHANNELS = 6
RATE = 8000 #44100
RECORD_SECONDS = 1.8
WAVE_OUTPUT_FILENAME = "file.wav"
chunk = 3600
audio = pyaudio.PyAudio()
stream = audio.open(format            = FORMAT,
                    channels          = CHANNELS,
                    rate              = RATE,
                    input             = True,
                                    #input_device_index = SEL_INPUT_DEVICE,
                    frames_per_buffer = chunk)

結果出現
[92845.081231] clk_pdm_frac parent_rate(589823999) is low than rate(40960000)*20, fractional div is not allowed

請問:
1. 怎麼解決?
2. 如何讀寫寄存器?
回复

使用道具 举报

166

积分

1

威望

0

贡献

技术小白

积分
166
发表于 2019-3-26 14:42:42        只看该作者  沙发
试一下其他采样率
你要读写什么寄存器
回复

使用道具 举报

55

积分

0

威望

0

贡献

技术小白

积分
55
发表于 2019-3-27 09:59:56        只看该作者  板凳
飞神 发表于 2019-3-26 14:42
试一下其他采样率
你要读写什么寄存器

我想要調整pdm clk相關寄存器去解決這個問題.
1. 參考Rockchip Audio开发指南: cat /sys/kernel/debug/clk/clk_summary只能看到clk相關寄存器值, 但要如何寫值到寄存器卻沒說.
2. RK3308_VAD_寄存器配置_v1.1.pdf有說明如何讀寫VAD寄存器值, 但clk目錄卻沒有reg子目錄, 因此無法使用類似方法寫入clk相關寄存器的值.

請協助
回复

使用道具 举报

166

积分

1

威望

0

贡献

技术小白

积分
166
发表于 2019-3-27 14:49:20        只看该作者  地板
我用8000HZ录音没有问题啊,不需要改时钟啊
回复

使用道具 举报

55

积分

0

威望

0

贡献

技术小白

积分
55
发表于 2019-3-27 17:18:57        只看该作者  5#
飞神 发表于 2019-3-27 14:49
我用8000HZ录音没有问题啊,不需要改时钟啊

8kHz 不夠用
回复

使用道具 举报

166

积分

1

威望

0

贡献

技术小白

积分
166
发表于 2019-3-28 09:30:29        只看该作者  6#
其他频率也没问题啊,频率大于16000时,录音需要加上这些参数。http://wiki.t-firefly.com/ROC-RK3308-CC/faq.html#lu-yin
回复

使用道具 举报

55

积分

0

威望

0

贡献

技术小白

积分
55
发表于 2019-3-28 14:59:46        只看该作者  7#
飞神 发表于 2019-3-28 09:30
其他频率也没问题啊,频率大于16000时,录音需要加上这些参数。http://wiki.t-firefly.com/ROC-RK3308-CC/f ...

那是用arecord可以, 用pyaudio就有問題, 但是arecord沒法放在python裡面, 所以才想調適寄存器看看
回复

使用道具 举报

166

积分

1

威望

0

贡献

技术小白

积分
166
发表于 2019-3-28 16:18:50        只看该作者  8#
我觉得既然arecord可以,那么肯定不是底层问题,是否排查下pyaudio。
回复

使用道具 举报

55

积分

0

威望

0

贡献

技术小白

积分
55
发表于 2019-4-1 11:08:19        只看该作者  9#
飞神 发表于 2019-3-28 16:18
我觉得既然arecord可以,那么肯定不是底层问题,是否排查下pyaudio。

pyaudio抓6麥, 存檔播放是沒問題.
只是聲音有點頓挫, 因此想解決[92845.081231] clk_pdm_frac parent_rate(589823999) is low than rate(40960000)*20, fractional div is not allowed這個問題, 看看會不會改善.
回复

使用道具 举报

166

积分

1

威望

0

贡献

技术小白

积分
166
发表于 2019-4-2 09:26:44        只看该作者  10#
我也会遇到过这个时钟打印问题,不过暂时还没有找到问题点,日后我解决了该问题再分享出来。
回复

使用道具 举报

返回列表
12
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

友情链接 : 爱板网 电子发烧友论坛 云汉电子社区 粤ICP备14022046号-2
快速回复 返回顶部 返回列表