One need double semicolon in filter for QFileDialog :
"mp3 Audio (*.mp3);; mp4 Video (*.mp4);; Movie files (*.mov);; All files (*.*)"
The hhmmss() function is wrong for times above 59 seconds. Something like:
s = round(ms / 1000)
m, s = divmod(s, 60)
h, m = divmod(m, 60)
should work.