Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

I2S: add command i2sloop #22807

Merged
merged 2 commits into from
Jan 12, 2025
Merged

I2S: add command i2sloop #22807

merged 2 commits into from
Jan 12, 2025

Conversation

Staars
Copy link
Contributor

@Staars Staars commented Jan 12, 2025

Description:

New command i2sloop for endless looping of sound file, can work gapless for opus format.
Syntax equal to i2splay, e.g.:
i2sloop2 brown.opus - loops a sound file that could contain brown noise to build your personal noise machine.

The development revealed a bug (memory leak) in the framework, that was introduced some time ago. Using the stack is better anyway in the scope of Tasmota, as we already allocate memory for the task. Thus avoiding multiple allocations later in this task will additionally improve performance a tiny bit.

More small refactoring steps to reduce code duplication.

Checklist:

  • The pull request is done against the latest development branch
  • Only relevant files were touched
  • Only one feature/fix was added per PR and the code change compiles without warnings
  • The code change is tested and works with Tasmota core ESP8266 V.2.7.8
  • The code change is tested and works with Tasmota core ESP32 V.3.1.1.250109
  • I accept the CLA.

NOTE: The code change must pass CI tests. Your PR cannot be merged unless tests pass

@sfromis
Copy link
Contributor

sfromis commented Jan 12, 2025

Noticed one detail, not specific to this improvement. That use of index 2 (seems to be for decoder_type) also on the existing I2SPlay command is not mentioned in the docs.

@Jason2866 Jason2866 merged commit 03e8497 into arendst:development Jan 12, 2025
59 checks passed
@Staars Staars deleted the i2s_loop branch January 14, 2025 07:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants