.kkapture 0.01 - demo capturing made easy (hopefully)

category: code [glöplog]
I'm pretty sure that's oasiz's channel. See this post for further info also.

Regarding kkapture, it definitely seems to be completely incompatible with 64-bit applications. With the rewrite of our demoengine we moved to 64-bit and simultaneously lost kkapture compatibility. I think this would honestly be the most essential upgrade to this wonderful software. DX11 compatibility seems kind of nonexistent as well, but I could be wrong.

ps. 60Hz is overrated, more 24Hz captures pls!
added on the 2015-04-20 12:28:37 by noby noby
noby: In fact, I managed to compile a 64-bit kkapture yesterday (getting rid of Direct3D 8 and DirectShow support helped), but none of my testcases ran: Still demos stop at the first frame, and "We Stand Divided" crashes my graphics driver even without kkapture. Now that I know that Epoch demos are 64-bit too, I'll try these tonight.
added on the 2015-04-20 14:07:22 by KeyJ KeyJ
keyJ: To clarify, the two most recent ones are, the first two were 32-bit and kkaptured regularly just fine. I actually forgot kkapture's source was available. Thanks for the effort, appreciated. :)
added on the 2015-04-20 14:29:13 by noby noby
noby: "Engine" works in 64-bit kkapture \o/
added on the 2015-04-20 20:52:29 by KeyJ KeyJ
Added my Windows CLI script I use for handling videos to Github (FFMPEG wrapper with Q&A interface for the most common tasks):
added on the 2015-05-09 18:36:34 by Salinga Salinga
KeyJ: Thanks for that, I can confirm it works with some other 64bit things as well :)
added on the 2016-03-23 07:19:41 by ferris ferris
Also I'm sure this has been asked here before, but what codec's would you guys recommend these days?
added on the 2016-03-23 07:35:00 by ferris ferris
(/container for that matter)
added on the 2016-03-23 07:40:11 by ferris ferris
Is there still really anything else worth even considering than h264 (and x264, specifically)? Googles VP9 is good too I guess, but not really any better and with worse options and support. x265 is out there too, I guess, but it hardly offers any benefits and has piss poor support at the moment.
added on the 2016-03-23 07:44:42 by noby noby
As for container, mp4 is probably the most well rounded option. Mkv doesn't benefit anything in this case and has worse support. My current workflow is 1. kkapture into segmented .avi files (uncompressed) (the DirectShow option has been unreliable) 2. join into one file with ffmpeg 3. just upload the enormous file to youtube, OR compress with HandBrake if needed (mp4/x264/AAC, custom settings etc..).
added on the 2016-03-23 07:49:29 by noby noby
noby: awesome, thanks :) I'll give that a shot.
added on the 2016-03-23 19:49:01 by ferris ferris
Note that my modified version isn't just a 64-bit port, it also contains a direct interface to the x264 command-line encoder. If you are going to encode in single-pass quality-based "CRF" VBR mode (which you absolutely should!), you save a few gigabytes of temporary data this way. Also, you don't need to wait for kkapture to finish, set up encoding, and then wait again for x264. Instead, when kkapture is done, all the time-consuming stuff is done too, and all that's left to do is encode the audio and mux it into a container of your choice, which takes less than a minute.

Regarding the useful formats:
- For best compatibility, video should be H.264 High Profile Level 4.1 or lower. This is sufficient for 720p60 or 1080p30 (Blu-ray spec). Somewhat recent mobile devices should play that too; for older phones and tablets, try Main Profile Level 3.0 (720p30). If you want more resolution or framerate (1080p60: Level 4.2, 2160p30: Level 5.1, 2160p60: Level 5.2), be aware that most hardware players won't cope with that. High10 profile and H.265 would be nice, but are even less well supported by the devices out there. Stay clear of VP8/9 unless you absolutely need to use it (licensing issues or HTML5 video compatibility with pre-H.264 browsers).
- The typical container format is MP4 with LC-AAC audio. This will work basically everywhere. Don't use HE-AAC; many devices don't play that properly and at the bitrates you're likely going to use, it doesn't make a difference anyway.
- You can also use M2TS with AC-3 audio or Matroska with uncompressed PCM, LE-AAC or MP3, but there aren't as well supported.
- Don't even think about using AVI. Really. AVI doesn't even have proper support for B frames, let alone H.264's byzantine and fragile reference frame management stuff.
added on the 2016-03-28 19:38:39 by KeyJ KeyJ
Can the changes made to .kkapture be summited to the official repo here? https://github.com/rygorous/kkapture
added on the 2016-03-29 17:20:36 by emoon emoon
added on the 2016-03-29 19:46:40 by Sesse Sesse
FYI: After five years of total radio silence, I got two independent "bug reports" for kkapture today, so I revisited it again. Long story short, I forked the official repo and added some stuff:
- version 1.02 (which was already tagged in the original repo, but not merged on master)
- my x264 feature
- my 64-bit port (+ fixes)
- D3D11CreateDeviceAndSwapChain fix (see the other thread)
- VS2017 build fixes
added on the 2018-08-23 22:13:16 by KeyJ KeyJ
Correction: three years, not five. But long enough to be so utterly surprised about two threads on the same day that I decided to do something about it :)
added on the 2018-08-23 22:18:24 by KeyJ KeyJ
Big up!
added on the 2018-08-23 22:24:23 by noby noby
Big up indeed, any chance of providing compiled binaries or releases as well?
added on the 2018-08-24 09:00:27 by Defiance Defiance
BB Image
added on the 2018-08-24 12:47:40 by Defiance Defiance
Just tried KeyJ's build on some Revision demos in Win 10 64-bit and had zero success. Is there an alternate tool I don't know about (it's been a while), or are we back to capturing demos realtime again?
added on the 2019-06-16 05:34:45 by trixter trixter
trixter: What demos are you trying to run? I'm trying to compile the latest version from KeyJ and it might fix your problems.
I've compiled the latest version from KeyJ's github fork. It includes d3d10 fixes not included in the binary he offers on his page.
Download here.
I've compiled the latest version from KeyJ's github fork. It includes d3d10 fixes not included in the binary he offers on his page.
Download here.

Was trying to run Chroma Space/Adapt and Surfaced/Adapt, both fail to hook anything and the demo just runs as normal. Aurora 05 / Cocoon also fails.

So I guess no DX12 solution?
added on the 2020-06-19 20:58:23 by trixter trixter
does not work on my DX11-intros either anymore! :(