Andrew, Aric, Maarten,
I'm pleased to see that patches to quartz and mciqtz keep flowing in.
For the last years, I've wondered whether I should open a sort of generic bug
that mciqtz/quartz still is a mostly broken MCI device, missing many basic
functions. Every time I try it out using my MCI shell, it has improved a little bit,
but it's still in a very bad shape overall. Alas, I've never written a significant
mciavi testsuite. That could be used to check mciqtz too.
For instance, basic commands like the following are either partially implemented
or completely missing:
open xyz.avi type mpegvideo alias q notify
status q length
status q time format notify
seek q to 0
set q time format xyz
play q from 50 to 500 notify
status q position
window q state show
seek q to end
Furthermore, mciqtz should be able to access other files, e.g. play .wav and even IIRC .mid files.
open sound.wav type mpegvideo alias w notify
status w time format
play w from 4
status w length
status w position
In theory, one could use the mciwave testsuite, add type mpegvideo
to every open, and it should mostly pass.
Even without "type mpegvideo", using mciqtz to open an .mpg file with audio and/or video
yields many fixme lines and has issues, e.g. IIRC it doesn't manage to stop!
close all
Often, the missing bits are in quartz or associated dlls, not mciqtz.
Every time I look at quartz code, I'm lost among lots of methods that do
nothing but delegate to other methods. Typical OO :-(
A quartz working well would allow to close bug #19496. See comment #13.
I believe msvfw should always delegate to one of mciavi or mciqtz.
But currently, mciqtz+quartz is in too bad shape to switch msvfw.
I'd be happy to see mciqtz work at least as well as most other mci drivers.
Please keep sending patches!
Thank you,
Jörg Höhle