-
Notifications
You must be signed in to change notification settings - Fork 85
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
Malfunction after 3-4 hours #2
Comments
Hi, |
Oh ok so that is a handy option, then must be a problem with my VLC ? |
Sorry, I didnt mean the audio input cuts out. Im old PiFmRds I after 3-4 hours I used to just hear the music Skipping, like a stuck CD for about 3 mins, and then a restart with "Failed to rewind in audio file. Terminating. " But with PiFmAdv, It just leaves the high pitched noise going. MY PiFmAdv is listening through Alsa, which VLC is playing to. |
Ok, I ran PiFmAdv for few hours and it got "stuck". No RDS data was generated and I heard, as you said, high pitch noise. |
I suggest finding where the errors happening first. unless you already know. |
I have currently no idea why it does this. Maybe something is wrong in DMA? |
Well I would like to post some progress report. |
You can you this simple bash script:
Pay extra attention to the The script will restart PiFmAdv (feel free to add your own parameters & pipe input) every 2 hours. |
Ok, so the bug still persists. I think I need some help with this one. |
@miegl I might apply that patch from SaucySoliton PiFmRds to allow change DMA Engine. |
This is a sync problem. If you use a wave file as input then the DMA engine can request as much samples it wants, whenever it wants until the end of the file. If you use a webstream you need to put the data in a ringbuffer. Then the DMA engine has to keep track of the length of the written samples in the ringbuffer and adjust the output samplerate so that the buffer would not overflow or underflow. The input samplerate from the webstream is fixed. For example 44.1kHz. The output samplerate of the DMA is also fixed at 228kHz. over time both will get out of sync. You have to handle the input stream as master because the samplerate is fixed. Then adjust the output samplerate so both remain in sync. |
Wow, it’s been such a long time since I’ve been on this repository. Although I did get a temporary fix in the end, which was to run PiFmRds in a loop, and have another script kill the process after about 3 hours, this worked great for me and you can barely notice (you may want a slight delay when restarting PiFmRds in case of any errors) although an official fix would be nice. Good luck! |
I am Trying to use the bash script, but as I use Sox to capture a stream the script needs modifying .. anybody knows how? |
The program seems to malfunction after around 3 to 4 hours.
A high pitched constant noise is made after several overruns.
Original PiFmRds did not make this noise and would just exit the program, which was better because I had the program in a loop, so it would just start again.
Please try and get this fixed, it would make the program perfect!
Thanks!
The text was updated successfully, but these errors were encountered: