.kkapture 0.01 - demo capturing made easy (hopefully)
category: code [glöplog]
Couldn't resist trying ;-)
But no luck with huffyuv neither...
But no luck with huffyuv neither...
i wrote earlier that i couldnt choose any other codec than the default one. seems like theres something wrong with ICCompressorChoose under swedish windows xp, i tried kkapture on japanese xp, chinese win98 and english windows 2000 and on all those os's i got to change codec in the drop down list. i got around the problem by compiling kkapture myself and setting the codec i wanted in the code, but today a guy at work had ran into the same problem with chosing compression, but in autodesk inventor 11, and that was harder to solve in the same way=)
just so you know, all kkapturing swedes
just so you know, all kkapturing swedes
hmm.. sounds really odd since i have been using kkapture under swedish winxp when i did the capture for green destruction.
I don't think using ZMBV for anything but indexcolor and low resolutions like DosBOX does (a builtin) is not too much of a good idea.
Why don't you use Lagarith?
Why don't you use Lagarith?
Well... This was not about the codec... both ZMBV and HuffyUV worked fine with other demos or DOSBox. The problem ist that I can't manage to capture INF - Propaganda. Saw that it had no video, tried to make one, didn't work...
That Lagarith-thingy looks nice but slow, and (quoting my girlfriend here) size doesn't really matter to me... ;-)
That Lagarith-thingy looks nice but slow, and (quoting my girlfriend here) size doesn't really matter to me... ;-)
Any change of making it work with Threepixels' prods?
I tried with Nature v2.0 and r08028 but the demo shows at highspeed and kkapture doesn't record anything...
this is the log it creates...
main: initializing...
main: all main components initialized.
main: reading parameter block...
main: video encoder initialized.
main: initialization done
video/d3d8: IDirect3D8 object created.
video/d3d8: CreateDevice successful.
video/d3d8: couldn't create capture surface.
sound: emulating DirectSound (created via CoCreateInstance)
sound: buffer created
sound: buffer created
avi_vfw: opened audio stream at 44100 hz, 2 channels, 16 bits
video/d3d8: Frame capture failed! (frame 0)
video/d3d8: Frame capture failed! (frame 1)
video/d3d8: Frame capture failed! (frame 2)
video/d3d8: Frame capture failed! (frame 3)
video/d3d8: Frame capture failed! (frame 4)
video/d3d8: Frame capture failed! (frame 5)
video/d3d8: Frame capture failed! (frame 6)
video/d3d8: Frame capture failed! (frame 7)
video/d3d8: Frame capture failed! (frame 8)
...
...
...
I tried with Nature v2.0 and r08028 but the demo shows at highspeed and kkapture doesn't record anything...
this is the log it creates...
main: initializing...
main: all main components initialized.
main: reading parameter block...
main: video encoder initialized.
main: initialization done
video/d3d8: IDirect3D8 object created.
video/d3d8: CreateDevice successful.
video/d3d8: couldn't create capture surface.
sound: emulating DirectSound (created via CoCreateInstance)
sound: buffer created
sound: buffer created
avi_vfw: opened audio stream at 44100 hz, 2 channels, 16 bits
video/d3d8: Frame capture failed! (frame 0)
video/d3d8: Frame capture failed! (frame 1)
video/d3d8: Frame capture failed! (frame 2)
video/d3d8: Frame capture failed! (frame 3)
video/d3d8: Frame capture failed! (frame 4)
video/d3d8: Frame capture failed! (frame 5)
video/d3d8: Frame capture failed! (frame 6)
video/d3d8: Frame capture failed! (frame 7)
video/d3d8: Frame capture failed! (frame 8)
...
...
...
*chance, of course.
i'll see what i can do.
thanks! :)
doesn't work with this:
http://www.pouet.net/prod.php?which=18924
causes my fmodex init stuff to fail.
thanks
http://www.pouet.net/prod.php?which=18924
causes my fmodex init stuff to fail.
thanks
some small note because i've just been asked about it:
you can ofcourse do something else while a demo is kkapturing (on a system with fast cpu and hd, preferably). just do a task switch :) (everything kkapture does is local to the target process).
note: this only works as long as the demo doesn't stop rendering when it loses focus :)
you can ofcourse do something else while a demo is kkapturing (on a system with fast cpu and hd, preferably). just do a task switch :) (everything kkapture does is local to the target process).
note: this only works as long as the demo doesn't stop rendering when it loses focus :)
I spent about an hour messing around trying to kkapture Final Audition in 720p/30.
I'll describe it as well as I can in hope that someone will know how to do this...
Settings all default, other than using 30fps. Saving raw uncompressed RGB, no external filters.
Capturing in 848x480 works perfectly, but anything above that (e.g. 1024x768, or in this case 1280x720) hangs during the loading stage.
The interesting thing is, the higher the resolution, the sooner it hangs (judged by how far the loading bar gets).
What's also interesting, is that at one point I was capturing to a network drive, and I noticed that other than a burst at the beginning, during the loading bar no writes are made to the capture file. Then, before the loading screen fades, there is a burst of network activity.
So my wild speculation is that for some reason, frames are being kept in a buffer of some kind, which then gets flushed after the loading screen... the higher the resolution, the quicker the buffer fills, and the program hangs.
Quite *how* kkapture would even care/notice the difference between loading screen and demo proper I have no idea, so the above hypothesis is probably totally off :)
Kkapture itself is quite capable of capturing videos at this res on my machine. Currently made captures are Chaos Theory/Conspiracy, and FR-031/FarbRausch (30gb AVI resulted, currently saved as a glorious artifactless 1.1gb MPEG2 file :))
Again with the loading screen strangeness, though: kkapture does not grab the Chaos Theory loading screen at all. The video starts at the beginnig of the intro. Err...? :)
I'll describe it as well as I can in hope that someone will know how to do this...
Settings all default, other than using 30fps. Saving raw uncompressed RGB, no external filters.
Capturing in 848x480 works perfectly, but anything above that (e.g. 1024x768, or in this case 1280x720) hangs during the loading stage.
The interesting thing is, the higher the resolution, the sooner it hangs (judged by how far the loading bar gets).
What's also interesting, is that at one point I was capturing to a network drive, and I noticed that other than a burst at the beginning, during the loading bar no writes are made to the capture file. Then, before the loading screen fades, there is a burst of network activity.
So my wild speculation is that for some reason, frames are being kept in a buffer of some kind, which then gets flushed after the loading screen... the higher the resolution, the quicker the buffer fills, and the program hangs.
Quite *how* kkapture would even care/notice the difference between loading screen and demo proper I have no idea, so the above hypothesis is probably totally off :)
Kkapture itself is quite capable of capturing videos at this res on my machine. Currently made captures are Chaos Theory/Conspiracy, and FR-031/FarbRausch (30gb AVI resulted, currently saved as a glorious artifactless 1.1gb MPEG2 file :))
Again with the loading screen strangeness, though: kkapture does not grab the Chaos Theory loading screen at all. The video starts at the beginnig of the intro. Err...? :)
"The interesting thing is, the higher the resolution, the sooner it hangs (judged by how far the loading bar gets)."
sounds like it's simply running out of video memory or sth. like that.
"So my wild speculation is that for some reason, frames are being kept in a buffer of some kind, which then gets flushed after the loading screen..."
kkapture neither buffers frames nor does it know about loading screens.
"kkapture does not grab the Chaos Theory loading screen at all. The video starts at the beginnig of the intro. Err...? :)"
if the loading code is written properly, you shouldn't ever get more than 2 frames of loading screen: ideally, a loader shouldn't render a new frame unless a notable amount of time (definitely >=20ms, we normally use more like 500ms) has passed since the last update. otherwise you get loaders that spend more time (indirectly) waiting for vsync than actually loading :). anyway, kkapture effectively halts the clock until you submit a new finished frame, so you hardly get to see the loaderbar with demos/intros that do it like i explained.
sounds like it's simply running out of video memory or sth. like that.
"So my wild speculation is that for some reason, frames are being kept in a buffer of some kind, which then gets flushed after the loading screen..."
kkapture neither buffers frames nor does it know about loading screens.
"kkapture does not grab the Chaos Theory loading screen at all. The video starts at the beginnig of the intro. Err...? :)"
if the loading code is written properly, you shouldn't ever get more than 2 frames of loading screen: ideally, a loader shouldn't render a new frame unless a notable amount of time (definitely >=20ms, we normally use more like 500ms) has passed since the last update. otherwise you get loaders that spend more time (indirectly) waiting for vsync than actually loading :). anyway, kkapture effectively halts the clock until you submit a new finished frame, so you hardly get to see the loaderbar with demos/intros that do it like i explained.
> sounds like it's simply running out of video memory or sth. like that.
But as I said, the full resolution works fine without kkapture...
> so you hardly get to see the loaderbar with demos/intros that do it
> like i explained.
Looks like Final Audition *isn't* one of those, seeing as once captured on the low res mode the loading bar was about 15s of video :)
But as I said, the full resolution works fine without kkapture...
> so you hardly get to see the loaderbar with demos/intros that do it
> like i explained.
Looks like Final Audition *isn't* one of those, seeing as once captured on the low res mode the loading bar was about 15s of video :)
Quote:
I spent about an hour messing around trying to kkapture Final Audition in 720p/30.
Capturing in 848x480 works perfectly, but anything above that (e.g. 1024x768, or in this case 1280x720) hangs during the loading stage.
no problems here.
just so you know.
Ryg: any idea why it doesn't work with the BP invit? http://www.pouet.net/prod.php?which=30055
Yes I could debug it but I guess you will find the issue much faster since kkapture is your baby ;)
Yes I could debug it but I guess you will find the issue much faster since kkapture is your baby ;)
waveOutReset returns MMSYSERR_INVALHANDLE on a correctly opened output device while using your tool, other functions seem to work correctly as the audio capture went ok.
Hm, does not seem to work with either "Gamma" (by Outracks) nor "Mupe" for some reason.. Both prods are run in 800x600 and with "No compression" AVI.
Gamma:
URL: http://www.pouet.net/prod.php?which=30223
Error: Demo runs insanely fast onscreen, but no AVI-file (and no audible disc-activity) when I check the output-dir.
Kkapture.log:
Mupe:
URL: http://www.pouet.net/prod.php?which=30227
Error: The demo stops after loading-screen and I have to stop the program process to continue using Windows.
Kkapture.log:
Gamma:
URL: http://www.pouet.net/prod.php?which=30223
Error: Demo runs insanely fast onscreen, but no AVI-file (and no audible disc-activity) when I check the output-dir.
Kkapture.log:
Quote:
main: initializing...
main: all main components initialized.
main: reading parameter block...
main: video encoder initialized.
main: initialization done
video/opengl: wglSwapIntervalEXT supported
video/opengl: FBOs supported
video: capturing at 800x600
avi_dshow: no mux! <fn W:\old-downloads\tg07\demo\outracks_-_gamma\outracks_-_gamma\outracks_gamma.avi>
avi_dshow: getfiltergraph failed
sound: emulating DirectSound 8 (created via CoCreateInstance)
sound: buffer created
sound: buffer created
sound: buffer created
sound: buffer created
avi_dshow: audio format 44100 Hz, 16 bits/sample, 2 channels
avi_dshow: audio format 44100 Hz, 16 bits/sample, 2 channels
main: shutting down...
timing: 62.90 frames per second on average
avi_dshow: cleanup
main: everything ok, closing log.
Mupe:
URL: http://www.pouet.net/prod.php?which=30227
Error: The demo stops after loading-screen and I have to stop the program process to continue using Windows.
Kkapture.log:
Quote:
main: initializing...
main: all main components initialized.
main: reading parameter block...
main: video encoder initialized.
main: initialization done
video: capturing at 1024x768
video/opengl: wglSwapIntervalEXT supported
video/opengl: FBOs supported
sound: emulating DirectSound
sound: buffer created
sound: buffer created
avi_dshow: audio format 44100 Hz, 16 bits/sample, 2 channels
avi_dshow: no mux! <fn W:\old-downloads\tg07\in64\playpsyco_-_mupe\playpsyco_-_mupe\mupe_playpsyco.avi>
avi_dshow: getfiltergraph failed
use the vfw avi writer, not the dshow one. (guess i'll have to disable the dshow writer in the next version till i figure out what's going wrong...). that should fix the problem with gamma.
as for mupe, i'll have to look into it (when i have time...)
as for mupe, i'll have to look into it (when i have time...)
Ryg: That worked for "Gamma", thanks. :)
unfortunately noumenon by Andromeda doesn't work in any kkapture version. it brings the loading screen, but after that screen stays black. up to that point an AVI has been generated (about 150mb) but as i did have to kill the process, the avi was useless... nothing conspicuous in the logfile..
got the same problem with "keyboarders - abstinens". Screen runs black, and nothing conspicuous in the logfile.
Genocyd:
http://www.pouet.net/prod.php?which=335
just before the end scrolltext, after "explosion", the screen stay white and PC is locked on this screen, impossible to kill the process, only reboot.
the avi is empty... nothing in the logfile
http://www.pouet.net/prod.php?which=335
just before the end scrolltext, after "explosion", the screen stay white and PC is locked on this screen, impossible to kill the process, only reboot.
the avi is empty... nothing in the logfile
kkapture 0.06 is out!
http://www.farbrausch.de/~fg/kkapture/
check out the changelog for details. primary changes: proper FMODEx support and most importantly, automatic frameskip for demos that do busy waits.
the following demos listed above now work properly:
as usual, continue posting bug reports here and i'll see what i can do.
http://www.farbrausch.de/~fg/kkapture/
check out the changelog for details. primary changes: proper FMODEx support and most importantly, automatic frameskip for demos that do busy waits.
the following demos listed above now work properly:
- nature v2.0 (fix in d3d8 capturing)
- r08028 (fix in d3d8 capturing)
- first offence/parapete (fmodex fix)
- frameskool/equinox (auto frameskip, read the website!)
- mupe/playpsyco (auto frameskip, read the website!)
- noumenon/andromeda (auto frameskip, read the website!)
- abstinens/keyboarders (auto frameskip, read the website!)
as usual, continue posting bug reports here and i'll see what i can do.
ryg: it still refuses to work with non-looping buffers (= a lot of 4ks) :O