Firefly开源社区

标题: 請問如何讀寫寄存器 [打印本页]

作者: lcwangtw    时间: 2019-3-26 11:50
标题: 請問如何讀寫寄存器
測試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. 如何讀寫寄存器?
作者: 飞神    时间: 2019-3-26 14:42
试一下其他采样率
你要读写什么寄存器
作者: lcwangtw    时间: 2019-3-27 09:59
飞神 发表于 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相關寄存器的值.

請協助
作者: 飞神    时间: 2019-3-27 14:49
我用8000HZ录音没有问题啊,不需要改时钟啊
作者: lcwangtw    时间: 2019-3-27 17:18
飞神 发表于 2019-3-27 14:49
我用8000HZ录音没有问题啊,不需要改时钟啊

8kHz 不夠用
作者: 飞神    时间: 2019-3-28 09:30
其他频率也没问题啊,频率大于16000时,录音需要加上这些参数。http://wiki.t-firefly.com/ROC-RK3308-CC/faq.html#lu-yin

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

那是用arecord可以, 用pyaudio就有問題, 但是arecord沒法放在python裡面, 所以才想調適寄存器看看
作者: 飞神    时间: 2019-3-28 16:18
我觉得既然arecord可以,那么肯定不是底层问题,是否排查下pyaudio。
作者: lcwangtw    时间: 2019-4-1 11:08
飞神 发表于 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這個問題, 看看會不會改善.
作者: 飞神    时间: 2019-4-2 09:26
我也会遇到过这个时钟打印问题,不过暂时还没有找到问题点,日后我解决了该问题再分享出来。
作者: peterhao    时间: 2019-4-19 18:09
我也遇到pyaudio存檔聲音有點頓挫, [92845.081231] clk_pdm_frac parent_rate(589823999) is low than rate(40960000)*20, fractional div is not allowed 的問題 , 請問有解了嗎?
作者: muminglan    时间: 2022-1-5 16:20
peterhao 发表于 2019-4-19 18:09
我也遇到pyaudio存檔聲音有點頓挫, [92845.081231] clk_pdm_frac parent_rate(589823999) is low than rate ...

我也遇到了,请问你们怎么解决的?




欢迎光临 Firefly开源社区 (https://dev.t-firefly.com/) Powered by Discuz! X3.1