add a convenience class to extract frame at a given time
async frame extract support

TODO: why do event and slots not works?
qml: add Preview item
avoid preview seeking too frequent etc.
Merge branch 'preview'