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

samedec: flush on EOF in main app #30

Merged
merged 1 commit into from
Feb 3, 2024
Merged

Conversation

cbs228
Copy link
Owner

@cbs228 cbs228 commented Feb 2, 2024

Previously, samedec::app::run() would unceremoniously exit on EOF. Since an EOF results in samples being "stranded" in filter buffers and other parts of the system, it is necessary to push zeros through the system to make it output any remaining Messages.

This "flush" operation was performed by isolated code that ran after the app terminated. This would print the Message(s), but it would not take any other actions like spawning child processes.

We should spawn the child even if there's no audio data that follows. The state machine will simply wait() for it to terminate and then exit.

This change permits us to run child processes on short snippets of SAME data—i.e., our sample/*.bin data files.

This is CLI-expanding behavior.

Previously, `samedec::app::run()` would unceremoniously exit on
EOF. Since an EOF results in samples being "stranded" in filter
buffers and other parts of the system, it is necessary to push
zeros through the system to make it output any remaining
Messages.

This "flush" operation was performed by isolated code that ran
after the app terminated. This would print the Message(s), but it
would not take any other actions like spawning child processes.

We should spawn the child even if there's no audio data that
follows. The state machine will simply `wait()` for it to
terminate and then exit.

This change permits us to run child processes on short snippets of
SAME data—i.e., our `sample/*.bin` data files.

This is CLI-expanding behavior.
@cbs228 cbs228 added bug Something isn't working samedec Applies to samedec binary labels Feb 2, 2024
@cbs228 cbs228 self-assigned this Feb 2, 2024
@cbs228 cbs228 merged commit 799b352 into develop Feb 3, 2024
10 checks passed
@cbs228 cbs228 deleted the bugfix/handle_eof_in_main_app branch February 3, 2024 19:16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working samedec Applies to samedec binary
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant