(not sure whether I'll use gstreamer or something native Rust, so I'm filing two MRs for now; see !520 for a gstreamer based impl)
Fixes #252