Comments (5)
Thank you for the detailed feedback @bramkok 😌 We'll be shipping a fix with the release that's coming tomorrow! 😄
from kap.
Can reproduce. Looking into it.
from kap.
@bramkok could you see if you can reproduce it with a recording from QuickTime?
from kap.
Can't reproduce this behavior with QuickTime screen recording.
QuickTime screen recording test
MPlayerX playback test
VLC playback test
^ all recorded with Kap.
from kap.
Well, sadly we could not find a viable solution for this 😔
It's a pretty weird bug – you can play the Kaptures on Chrome and QuickTime, for example, with no problems 😕
We spent some time yesterday researching about this and here's what we found:
Info about a Kapture via ffprobe file.mp4
Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p(tv, bt709), 1016x1016 [SAR 1:1 DAR 1:1], 50 kb/s, 30 fps, 30 tbr, 6k tbn, 50 tbc (default)
Info about a QuickTime recording via ffprobe file.mp4
Stream #0:0(und): Video: h264 (Main) (avc1 / 0x31637661), yuv420p(tv, bt709), 1216x872 [SAR 1:1 DAR 152:109], 113 kb/s, 60 fps, 60 tbr, 6k tbn, 50 tbc (default)
Notice that they are almost the same – the only difference is the profile name (High
vs Main
).
Fixing it
ffmpeg -i Kapture.mp4 -pix_fmt yuv420p -preset ultrafast Kapture-fixed.mp4
This will change the ffprobe
output to:
Stream #0:0(und): Video: h264 (Constrained Baseline) (avc1 / 0x31637661), yuv420p, 1016x1016 [SAR 1:1 DAR 1:1], 25 kb/s, 30 fps, 30 tbr, 15360 tbn, 60 tbc (default)
Notice that the (tv, bt709)
is gone.
This is enough to make VLC open the file without trouble.
Fixing it with Swift
We could also fix it low level – you can choose the pixel format when recording with AVFoundation
. There's some (rare) info about that out there, like this article. It's a hard task and I'm afraid we don't have time for it now 😔 We want to focus on features like GIF support (#14) and kap-server
(#23).
Conclusion
We'd like to add it to aperture.js
, but the problem is: it can add a lot of post processing time to a Kapture. With small ones (~500x500), it's ok; with bigger ones (3000x1800 for instance) it takes something like 3 seconds for each second of video (tested in a MacBook Pro Retina 13" Mid 2014) 😕
For now, I would like to classify this as a kinda upstream
issue, since Chrome, Slack, QuickTime etc have no problem to play Kaptures.
Any help with this is more than welcome!
from kap.
Related Issues (20)
- libwebp : Vulnerable Electron 13.6.9 found in Kap
- Unhandled Promise Rejection HOT 1
- Has Kap development been abandoned? HOT 5
- Does not show the UI, and doesn't show up in the menubar. HOT 1
- Unhandled Promise Rejection HOT 2
- Error on startup (M1 Mac)
- Directly Record Compressed
- Activation of Kap is slow with large displays HOT 4
- The background color of reduced size on white is pink-ish. HOT 1
- Add support for multiple loop types HOT 1
- Kap Behaves Unexpectedly when Magnification tool on MacOS is used.
- Dotted line shows at the bottom after convert. HOT 3
- Limiting In-app Navigation, Santizing Links, and Electron.js Version Upgrade
- Unhandled Promise Rejection Error: Cannot download "https://objects.githubusercontent.com/github-production-release-asset-2e65be/65411043/dc097279-94c4-4189-adf7-7eb46e2930a0?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIWNJYAX4CSVEH53A%2F20220303%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20220303T202905Z&X-Amz-Expires=300&X-Amz-Signature=14ded9e5de067facf9d78c074c08405ca088590d94d4d27acf996a3251ce2927&X-Amz-SignedHeaders=host&actor_id=0&key_id=0&repo_id=65411043&response-content-disposition=attachment%3B%20filename%3DKap-3.5.4-mac.zip&response-content-type=application%2Foctet-stream", status 503: at ClientRequest.<anonymous> (/Applications/Kap.app/Contents/Resources/app.asar/node_modules/electron-updater/node_modules/builder-util-runtime/out/httpExecutor.js:213:34) at SimpleURLLoaderWrapper.<anonymous> (electron/js2c/browser_init.js:105:6816) HOT 1
- Support local Google Drive copy
- Crash on start M3 Pro HOT 6
- Contributing – running app locally by yarn start, but I can't allow recording permissions in the development HOT 5
- Option to Disable Overlay in Non-Recording Screen
- Unhandled Error
- After fresh installation, could not find the option "Select input device". After solved this issue, no Audio in playback.
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from kap.