As
always, when I code or think of software design I come up with
interesting ideas which could be implemented as part of the project
to add more features, quality of life changes, performance
enhancements, and overall value of the software.
For this project I
thought of:
- Adaptive/Smart MP3 file saving
- Podcast XML file updater
- iOS/Android/Windows App (custom or generic apps)
- Push notifications
- Live in 5
- We Are Live!
- Broadcast finished, check iTunes soonTM
Smart
Saving:
There is an issue which occurs every once in a while where
a podcaster is recording an episode and then all of a sudden their
recording program or computer crashes which usually results in the
recording being completely lost or corrupted. The idea of a Smart
Saving feature is the program will store/cache the audio in memory and
can save the file every X minutes to the hard drive.
This can be implemented in one of
2 ways. (1) X minutes of audio is stored in a large buffer until X
time passes and then the audio from the buffer is saved to a file
with more audio added to the file every X minutes. (2) All audio is
saved to the hard drive in X minute segments (AudioFile1.mp3,
AudioFile2.mp3, etc) and then once the recoding is stopped the
program then writes a the audio segments to the one file (Podcast
Episode #.mp3).
(1)
Pros: This allows for the file to be written in the background when
the recording is still going on and so there is minimal interruption.
If a crash occurs less than X minutes of audio will
be lost.
Cons:
This can still be susceptible to file corruption if the program or
computer crashes during the writing/saving of the audio once the X
minutes fills the buffer. However, this is still significantly better
than continually writing data to a file in real-time.
2)
Pros: This allows for the entire recording process to be completed
before the audio is combined. If there is some form of crash during
the recording only X minutes or less would be lost.
When
combining the audio files together it can be done in such a way that
all the different audio segments will remain intact until all the
audio is combined and saved to the new file. This guarantees the
process will complete successfully (ideally anyway).
Cons:
This method requires the recording process to be completely finished and then it can
combine the audio files together, thus resulting in additional time
to the process.
Podcast XML Updater:
All podcasts (at least the ones on iTunes) use an xml file to store the podcast's metadata (show notes, title, episode number, recording/release date, etc). I would think most podcasters would like it if the program could find and update this file instead of editing the file manually after every episode.
iOS/Android/Windows Apps:
I can dream, can't I?
No comments:
Post a Comment