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

Timecode display is one minute ahead of reality #1

Open
jaybird110127 opened this issue Mar 18, 2023 · 4 comments
Open

Timecode display is one minute ahead of reality #1

jaybird110127 opened this issue Mar 18, 2023 · 4 comments

Comments

@jaybird110127
Copy link

I just noticed that the timecode displayed with the -v option is for the minute after the one which starts to play once it is printed. E.G. timecode for minute 32 is printed as audio from minute 31 begins to play. I assume it's printing the timecode for the minute whose audio it just generated rather than the minute whose audio is about to play. This doesn't really matter to me, but it just seems that from a visual perspective, the most recent thing we should see should correspond to what we're currently hearing.

@ka9q
Copy link
Owner

ka9q commented Mar 18, 2023 via email

@jaybird110127
Copy link
Author

This bug is present in the version I compiled in November of 2018, so I assume the bug was introduced when you made the switch to Portaudio. I just never noticed it before since I don't use the debug mode. Yes, the BCD timecode actually output during each minute is correct for that minute, it's only the debug printout that's one minute ahead of reality.

@ka9q
Copy link
Owner

ka9q commented Sep 8, 2023

I checked the new restructured version I released last week, and it works as you'd expect. It starts by generating the current minute's program, printing it, and starting the audio at the appropriate time in the current minute. Then it prints the programs for the next few minutes as it primes the output queue to ensure it doesn't run dry. It will then block until the queue drops a minute before it generates the minute after that, and so on. This was the major reason for the restructure: to allow an arbitrary number of minutes to be generated in advance to avoid an underrun because of a slow new speech synthesizer (piper).

@ka9q
Copy link
Owner

ka9q commented Mar 2, 2024

If your problem is resolved, I'd like to close this issue.

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

No branches or pull requests

2 participants