Automatically speed up video portions with no voice
It might be possible through scene detection if your editor of choice allows for scene detection based on sound.  Alternately, since you are obviously handy with code, you could use a video editing library to write a program that would look for a threshold audio level to be exceeded and look for any long periods of time with no such peaks.  You could then apply speed changes between those timestamps.  

The actual coding of something like that is really more of a programing question than a video production question, but it should be technically possible using that kind of a technique.  I'd recommend looking at libav or one of the similar types of windows libraries for manipulating AV files.