官方案例player/tts_stream编译烧录后反复重启

我还是原来的我
Posts: 4
Joined: Tue Oct 24, 2023 12:16 pm

官方案例player/tts_stream编译烧录后反复重启

Postby 我还是原来的我 » Wed Oct 25, 2023 1:21 am

应用背景:
开发板采用ESP32-LyraT,IDF版本是ESP-IDF v4.4.5-dirty,测试案例为esp-adf/examples/player/pipeline_tts_stream,操作系统为Windows 10 家庭中文版。

现象:
能正常编译烧录,但反复重启,输出LOG如下:

ELF file SHA256: dfe8235811813463

Rebooting...
ets Jul 29 2019 12:21:46

rst:0xc (SW_CPU_RESET),boot:0x1f (SPI_FAST_FLASH_BOOT)
configsip: 0, SPIWP:0xee
clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
mode:DIO, clock div:1
load:0x3fff0030,len:6960
load:0x40078000,len:15792
load:0x40080400,len:4516
0x40080400: _init at ??:?

entry 0x400806b8
I (27) boot: ESP-IDF v4.4.5-dirty 2nd stage bootloader
I (27) boot: compile time 09:08:52
I (27) boot: chip revision: v3.1
I (31) qio_mode: Enabling default flash chip QIO
I (36) boot.esp32: SPI Speed : 80MHz
I (41) boot.esp32: SPI Mode : QIO
I (45) boot.esp32: SPI Flash Size : 4MB
I (50) boot: Enabling RNG early entropy source...
I (55) boot: Partition Table:
I (59) boot: ## Label Usage Type ST Offset Length
I (66) boot: 0 factory factory app 00 00 00010000 000e0000
I (74) boot: 1 voice_data Unknown data 01 81 00100000 00300000
I (81) boot: End of partition table
I (85) esp_image: segment 0: paddr=00010020 vaddr=3f400020 size=170e8h ( 94440) map
I (120) esp_image: segment 1: paddr=00027110 vaddr=3ffb0000 size=03794h ( 14228) load
I (124) esp_image: segment 2: paddr=0002a8ac vaddr=40080000 size=0576ch ( 22380) load
I (133) esp_image: segment 3: paddr=00030020 vaddr=400d0020 size=2ba40h (178752) map
I (183) esp_image: segment 4: paddr=0005ba68 vaddr=4008576c size=087e4h ( 34788) load
I (202) boot: Loaded app from partition at offset 0x10000
I (202) boot: Disabling RNG early entropy source...
I (213) cpu_start: Pro cpu up.
I (214) cpu_start: Starting app cpu, entry point is 0x40081294
0x40081294: call_start_cpu1 at D:/Espressif/frameworks/esp-idf-v4.4.5/components/esp_system/port/cpu_start.c:147

I (200) cpu_start: App cpu up.
I (228) cpu_start: Pro cpu start user code
I (228) cpu_start: cpu freq: 240000000
I (228) cpu_start: Application information:
I (233) cpu_start: Project name: play_tts_example
I (238) cpu_start: App version: v2.6-23-gef058dac
I (244) cpu_start: Compile time: Oct 25 2023 09:08:26
I (250) cpu_start: ELF file SHA256: dfe8235811813463...
I (256) cpu_start: ESP-IDF: v4.4.5-dirty
I (262) cpu_start: Min chip rev: v0.0
I (266) cpu_start: Max chip rev: v3.99
I (271) cpu_start: Chip rev: v3.1
I (276) heap_init: Initializing. RAM available for dynamic allocation:
I (283) heap_init: At 3FFAE6E0 len 00001920 (6 KiB): DRAM
I (289) heap_init: At 3FFB41F8 len 0002BE08 (175 KiB): DRAM
I (295) heap_init: At 3FFE0440 len 00003AE0 (14 KiB): D/IRAM
I (302) heap_init: At 3FFE4350 len 0001BCB0 (111 KiB): D/IRAM
I (308) heap_init: At 4008DF50 len 000120B0 (72 KiB): IRAM
I (315) spi_flash: detected chip: generic
I (319) spi_flash: flash io: qio
W (323) spi_flash: Detected size(8192k) larger than the size in the binary image header(4096k). Using the size in the binary image header.
I (337) cpu_start: Starting scheduler on PRO CPU.
I (0) cpu_start: Starting scheduler on APP CPU.
I (352) PLAY_TTS_EXAMPLE: [1.0] Init Peripheral Set
I (357) PLAY_TTS_EXAMPLE: [2.0] Start codec chip
E (363) gpio: gpio_install_isr_service(449): GPIO isr service already installed
I (391) PLAY_TTS_EXAMPLE: [3.0] Create audio pipeline for playback
I (391) PLAY_TTS_EXAMPLE: [3.1] Create tts stream to read data from chinese strings
init voice set:template
ESP Chinese TTS v1.7 (Feb 2 2023 16:20:29, 1)
I (401) PLAY_TTS_EXAMPLE: [3.2] Create i2s stream to write data to codec chip
I (410) PLAY_TTS_EXAMPLE: [3.4] Register all elements to audio pipeline
I (416) PLAY_TTS_EXAMPLE: [3.5] Link it together [strings]-->tts_stream-->i2s_stream-->[codec_chip]
I (426) PLAY_TTS_EXAMPLE: [3.6] Set up uri (tts as tts_stream, and directly output is i2s)
I (435) PLAY_TTS_EXAMPLE: [4.0] Set up event listener
I (441) PLAY_TTS_EXAMPLE: [4.1] Listening event from all elements of pipeline
I (449) PLAY_TTS_EXAMPLE: [4.2] Listening event from peripherals
I (455) PLAY_TTS_EXAMPLE: [5.0] Start audio_pipeline
W (461) tts_parser: Warning:skip unknown word
W (466) tts_parser: Warning:skip unknown word
W (471) tts_parser: Warning:skip unknown word
W (476) tts_parser: Warning:skip unknown word
W (481) tts_parser: Warning:skip unknown word
W (486) tts_parser: Warning:skip unknown word
W (491) tts_parser: Warning:skip unknown word
W (496) tts_parser: Warning:skip unknown word
W (501) tts_parser: Warning:skip unknown word
W (506) tts_parser: Warning:skip unknown word
W (511) tts_parser: Warning:skip unknown word
W (516) tts_parser: Warning:skip unknown word
W (521) TTS_STREAM: 欢迎使用乐鑫语音开源框架
W (527) TTS_STREAM: No more data,ret:0
I (532) PLAY_TTS_EXAMPLE: [6.0] Listen for all pipeline events
I (708) PLAY_TTS_EXAMPLE: [ * ] Start a new tts stream play
W (708) tts_parser: Warning:skip unknown word
W (708) tts_parser: Warning:skip unknown word
W (713) tts_parser: Warning:skip unknown word
W (718) tts_parser: Warning:skip unknown word
W (723) tts_parser: Warning:skip unknown word
W (728) tts_parser: Warning:skip unknown word
W (733) tts_parser: Warning:skip unknown word
W (738) tts_parser: Warning:skip unknown word
W (743) tts_parser: Warning:skip unknown word
W (748) tts_parser: Warning:skip unknown word
: : : W (753) TTS_STREAM: 乐鑫语音开源框架简称ADF
Guru Meditation Error: Core 0 panic'ed (LoadProhibited). Exception was unhandled.

Core 0 register dump:
PC : 0x400da47b PS : 0x00060c30 A0 : 0x800da754 A1 : 0x3ffbf320
0x400da47b: esp_tts_amrwb_decode at /home/sunxiangyu/aishare/master/esp_tts/build/../components/speech_synthesis/esp_tts_chinese/esp_tts.c:263

A2 : 0x3ffbe638 A3 : 0xde3d6c90 A4 : 0x3ffb8ab8 A5 : 0x00060a23
A6 : 0x3ffbf310 A7 : 0x0000000c A8 : 0x8008cd2f A9 : 0x3ffbf300
A10 : 0x3ffb9b00 A11 : 0x00000000 A12 : 0x00000004 A13 : 0x00000500
A14 : 0x00000001 A15 : 0x00000001 SAR : 0x0000001d EXCCAUSE: 0x0000001c
EXCVADDR: 0xde3d6c90 LBEG : 0x400012e5 LEND : 0x40001309 LCOUNT : 0x800da91c


Backtrace: 0x400da478:0x3ffbf320 0x400da751:0x3ffbf340 0x400da925:0x3ffbf360 0x400d8cdc:0x3ffbf380 0x400d6421:0x3ffbf3b0 0x400d8d29:0x3ffbf3e0 0x400d69d6:0x3ffbf400 0x400d6b5e:0x3ffbf430 0x4008a559:0x3ffbf460
0x400da478: esp_tts_amrwb_decode at /home/sunxiangyu/aishare/master/esp_tts/build/../components/speech_synthesis/esp_tts_chinese/esp_tts.c:255

0x400da751: esp_tts_stream_amr at /home/sunxiangyu/aishare/master/esp_tts/build/../components/speech_synthesis/esp_tts_chinese/esp_tts.c:450

0x400da925: esp_tts_stream_play at /home/sunxiangyu/aishare/master/esp_tts/build/../components/speech_synthesis/esp_tts_chinese/esp_tts.c:550

0x400d8cdc: _tts_stream_read at D:/Espressif/frameworks/esp-idf-v4.4.5/esp-adf/components/audio_stream/tts_stream.c:80

0x400d6421: audio_element_input at D:/Espressif/frameworks/esp-idf-v4.4.5/esp-adf/components/audio_pipeline/audio_element.c:381

0x400d8d29: _tts_stream_process at D:/Espressif/frameworks/esp-idf-v4.4.5/esp-adf/components/audio_stream/tts_stream.c:92

0x400d69d6: audio_element_process_running at D:/Espressif/frameworks/esp-idf-v4.4.5/esp-adf/components/audio_pipeline/audio_element.c:336

0x400d6b5e: audio_element_task at D:/Espressif/frameworks/esp-idf-v4.4.5/esp-adf/components/audio_pipeline/audio_element.c:483

0x4008a559: vPortTaskWrapper at D:/Espressif/frameworks/esp-idf-v4.4.5/components/freertos/port/xtensa/port.c:142

请问,原因是什么?如何解决?谢谢!

我还是原来的我
Posts: 4
Joined: Tue Oct 24, 2023 12:16 pm

Re: 官方案例player/tts_stream编译烧录后反复重启

Postby 我还是原来的我 » Sun Oct 29, 2023 12:28 am

发了好几天都没有人回复,还是我自己来吧,该问题解决了,是忘了烧录tts数据文件了。不过真心话,乐鑫的产品做的不错,但是文档和技术支持服务亟待提高。

esp32_frens
Posts: 1
Joined: Fri Jan 19, 2024 7:32 am

Re: 官方案例player/tts_stream编译烧录后反复重启

Postby esp32_frens » Fri Jan 19, 2024 7:48 am

我也碰到同样的问题,请问你是怎么单独烧录语音数据的,程序下载的时候不自动烧录,一直不知道用什么办法能单独烧录语音数据

ESP_William
Posts: 113
Joined: Tue Apr 24, 2018 5:54 am

Re: 官方案例player/tts_stream编译烧录后反复重启

Postby ESP_William » Mon Feb 05, 2024 3:43 am

您好, 感谢您喜欢我们的产品, 我们会持续完善文档和支持服务.

可以使用 esptool.py 工具烧录数据文件, 请根据分区表和您使用的硬件修改命令中的参数

Code: Select all

esptool.py --chip esp32 --port /dev/ttyUSB0 --baud 921600 write_flash 0x100000 $ADF_PATH/components/esp-sr/esp-tts/esp_tts_chinese/esp_tts_voice_data_xiaole.dat
若将数据文件烧录到了错误的地址或出现其他异常, 可以尝试先擦除全部 flash, 再重新下载工程和数据文件
擦除 flash 命令:

Code: Select all

idf.py erase-flash

Who is online

Users browsing this forum: Bing [Bot] and 113 guests