jurassicplayer / rhythmbox-radio-record

A rhythmbox 3 plugin to record internet radio using streamripper.
GNU General Public License v2.0
2 stars 0 forks source link

Dead Stream Checking #13

Closed jurassicplayer closed 9 years ago

jurassicplayer commented 9 years ago

Current implementation to check for dead streams (if streamripper can't rip the stream) is really bad. It just sleeps on every recording start for 2-3 seconds and then checks the process before continuing to the next one. So having multiple streams ends up causing a fair amount of delay and UI lock...on the plus side, when a stream DOES fail, the dialog box doesn't lock the program (something about being in a loop and so it doesn't close because it is waiting for a refresh).

If dead stream checking works correctly, issues with deleting non-existent folders might not happen as much since stopping a stream deletes the folder (if streamripper doesn't rip the stream there is no folder to delete) and the number of streams stopped is the number of folders that are attempted to be deleted.

jurassicplayer commented 9 years ago

Maybe tag dead stream checking to the end of pressing a button.

jurassicplayer commented 9 years ago

Dead stream checking now occurs after button presses that start recording (record, toggle, record all) and instead of checking each stream right after they start, it occurs after all streams have started and waits for 2.5 seconds (to give time for streamripper to quit on the last stream if it happens).

May or may not be the best implementation, but it's a compromise between actually working and taking forever to accomplish something. Also changed the error box to say the stream title from Rhythmbox rather than the stream uri.