Skip to content

Commit a7d82af

Browse files
author
LittleMouse
committed
[fix] fix alsa audio cap
1 parent e628093 commit a7d82af

File tree

2 files changed

+8
-1
lines changed

2 files changed

+8
-1
lines changed

projects/llm_framework/main_audio/src/alsa_audio.c

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ static int gcapLoopExit = 0;
1111
void alsa_cap_start(unsigned int card, unsigned int device, float Volume, int channel, int rate, int bit,
1212
AUDIOCallback callback)
1313
{
14+
gcapLoopExit = 0;
1415
struct pcm_config config;
1516
unsigned int pcm_open_flags;
1617
struct pcm *pcm;
@@ -23,7 +24,7 @@ void alsa_cap_start(unsigned int card, unsigned int device, float Volume, int ch
2324
memset(&config, 0, sizeof(config));
2425
config.channels = channel;
2526
config.rate = 48000; // TODO: 部分USB MIC仅支持48k,暂时固定采集为48k
26-
config.period_size = 512;
27+
config.period_size = 120;
2728
config.period_count = 4;
2829
config.format = PCM_FORMAT_S16_LE;
2930
config.start_threshold = 0;
@@ -123,6 +124,7 @@ void alsa_cap_start(unsigned int card, unsigned int device, float Volume, int ch
123124
}
124125
free(buffer);
125126
pcm_close(pcm);
127+
printf("Total frames captured: %u\n", total_frames_read);
126128
}
127129

128130
void alsa_close_cap()

projects/llm_framework/main_audio/src/main.cpp

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -105,7 +105,12 @@ class llm_audio : public StackFlow {
105105

106106
void _cap_stop()
107107
{
108+
#if (defined(CONFIG_AX_620E_MSP_ENABLED) || defined(CONFIG_AX_620Q_MSP_ENABLED)) && !defined(CONFIG_AXCL_ENABLED)
108109
ax_close_cap();
110+
111+
#else
112+
alsa_close_cap();
113+
#endif
109114
if (audio_cap_thread_) {
110115
audio_cap_thread_->join();
111116
audio_cap_thread_.reset();

0 commit comments

Comments
 (0)