Trim video using native win32 api.

About ZVideoTrimmer


Launching big video editors like Davinci/FinalCut is annoying to simply trim a video file. ZVideoTrimmer is an attempt to create a simple little tool to trim video files.

Read more
Filters

Recent Activity

&zvideotrimmer Went a bit overtime but calling it there for the jam. Couldnt quite get encoding working well. But will definitely finish this up post-jam. Learned a bunch about the Media Foundation api and video encoding. Also that multithreading is super important in this domain as video decoding is computationally VERY expensive, even with modern hardware.
Also noticed how bad almost all video players scrub video, even high quality ones like MPV. I did not realize that pre-jam. Feel like its certainly doable to do better job and get close to what proper video editors like Davinci offer with scrubbing/trimming in a much lighter weight package. Even though I'm not encoding well, it is close, and the program is only 149kb with zero dependencies on windows. So even though this jam project was a fail, I really enjoyed diving into this problem domain, and look forward to improving it. Thanks very much Handmade Network admin, this jam was awesome.

View original message on Discord

At first I managed to get really fast scrubbing, but then I realized that was because only key frames were being previewed by IMFSourceReader_SetCurrentPosition. Things slowed significantly once I started decoding all the frames around the cursor. It made me realize why scrubbing is generally slow in most video players, frames need to be decoded in real time when you seek, as all the frame information isn't actually present in the video file. Mainly key frames and diffs.
But that made me think of a slight optimization, outside of caching all frames, you could just display key frames while scrubbing quickly, then decode all frames if scrubbing really slow. Practically, human speed of mouse cursor movement should be enough information to do this well. If I dont manage to actually finish the trimming part (handling video using the MediaFoundation api is a bit trickier than I realized), I'll try implementing the seek optimization. &ZVideoTrimmer

View original message on Discord

Having some fun with scaling video &ZVideoTrimmer

View original message on Discord

Shouldn't have procrastinated on the jam, but just figured out how to play an mp4 using MediaFoundation and Direct2D. Gonna be a scramble to the end :grug: &ZVideoTrimmer

View original message on Discord

Just got my d2d backend setup on the first day, along with basic immediate mode gui stuff to draw ui elements later &zvideotrimmer

View original message on Discord