Changes for page Video Capture of Computer Screens
Last modified by Drunk Monkey on 2024-10-09 05:32
From version
27.1


edited by Drunk Monkey
on 2022-01-27 16:24
on 2022-01-27 16:24
Change comment:
There is no comment for this version
To version
34.1


edited by Drunk Monkey
on 2022-07-18 04:45
on 2022-07-18 04:45
Change comment:
There is no comment for this version
Summary
Details
- Page properties
-
- Content
-
... ... @@ -68,7 +68,11 @@ 68 68 === Mac OSX === 69 69 70 70 1. Install VLC 71 + 71 71 1. Install Keka 73 + 74 +1. Install FFmpeg through the use of [[HomeBrew>>https://brew.sh]] (recommended because of all the other useful things you can install if you like this kind of stuff) or install the statically linked binary version of the [[FFmpeg binaries>>http://ffmpeg.org/download.html]] from [[https:~~/~~/evermeet.cx/ffmpeg/>>https://evermeet.cx/ffmpeg/]]. This file will need to be placed into a directory that's on your path (not yet described how to do) 75 +\\The statically linked installation is going to be faster and easier to do than the homebrew version. 72 72 ))) 73 73 ))) 74 74 ... ... @@ -82,7 +82,7 @@ 82 82 ((( 83 83 (% class="col-xs-12 col-xs-6" style="border-right:black solid 1px;" %) 84 84 ((( 85 -=== Windows Video Capture===89 +=== Windows === 86 86 87 87 Open a command window, and run the following commands: 88 88 ... ... @@ -91,11 +91,12 @@ 91 91 92 92 (% style="font-size:14px" %)This will create a video file called "screenCapture.mkv" on your desktop that you can replay using VLC Media Player. 93 93 94 -(% style="font-size:14px" %)The parameters to the ffmpeg command have the following meaning 98 +(% style="font-size:14px" %)The parameters to the ffmpeg command have the following meanings 95 95 96 -(% class="min" %) 100 +(% class="grid min" %) 97 97 |-f gdigrab|gdigrab is the windows framebuffer, where the screen is stored 98 -|-t 6|capture 6 seconds of video and exit. 3600 = 1 hour, 14400 = 4 hours 102 +|-t 6|capture 6 seconds of video and exit. 3600 = 1 hour, 14400 = 4 hours. If you omit this parameter, the capture will continue until you press [Control C] to gracefully tell ffmpeg to stop 103 +|(% style="font-size:14px" %)-framerate 60|if you want to see the candles paint second by second, you should have a framerate of at least 60. Technically speaking, you actually need 120, but let's not get too crazy. 99 99 |-draw_mouse 1|capture the mouse pointer 100 100 |-i desktop|capture the entire desktop - remember to maximize your window 101 101 |-c:v libx264rgb|this video encoder will preserve the rgb color values losslessly ... ... @@ -111,10 +111,68 @@ 111 111 112 112 (% class="col-xs-12 col-xs-6" %) 113 113 ((( 114 -=== Mac VideoCapture===119 +=== Mac OSX === 115 115 116 - sfasd121 +Open a terminal window and run the following commands: 117 117 118 -asdfasdf 123 +>(% style="font-size:14px" %)cd ~~/Desktop 124 +>(% style="font-size:14px" %)ffmpeg -f avfoundation -t 6 -pixel_format 0rgb -capture_cursor 1 -capture_mouse_clicks 1 -framerate 60 -i "1:" -filter:v "format=yuv444p" -c:v libx265 -crf 0 -preset ultrafast screenCapture.mkv 125 + 126 +(% style="font-size:14px" %)This will create a video file called "screenCapture.mkv" on your Desktop that you can replay using VLC Media Player. 127 + 128 +(% style="font-size:14px" %)The parameters to the ffmpeg command have the following meanings 129 + 130 +(% class="lined min" %) 131 +|-f avfoundation|gdigrab is the windows framebuffer, where the screen is stored 132 +|-t 6|capture 6 seconds of video and exit. 3600 = 1 hour, 14400 = 4 hours. If you omit this parameter, the capture will continue until you press [Control C] to gracefully tell ffmpeg to stop 133 +|(% style="font-size:14px" %)-framerate 60|if you want to see the candles paint second by second, you should have a framerate of at least 60. Technically speaking, you actually need 120, but let's not get too crazy. 134 +|-pixel_format 0rgb|get the data as RGB colors instead of some bizzzare color model 135 +|-capture_cursor 1|capture the mouse pointer 136 +|-capture_mouse_clicks 1|and capture the clicks with an onscreen visual notification 137 +|-i "1:" 138 +\\\\-i title="window title"|((( 139 +capture the first screen. Not really important unless you have multiple screens and you are not capturing the primary screen 140 +\\to capture a particular window 119 119 ))) 142 +|-filter:v "format=yuv444p"|transform the input colors into this color format, which is fairly quick when converting from RGB and without too much color shifting 143 +(I'm still looking to improve upon this - the windows encoding has an exact RGB color modelling which means no color shift) 144 +|-c:v libx265|encode the video using H.265 compression. It makes for smaller videos without consuming too much processing time 145 +|-crf 0|lossless compression 146 +|-preset ultrafast|save the data as quickly as possible, don't waste too much time compressing the data. 147 + 148 +There is no point in trying to compress this video any further with these parameters. Further compression will require a lot of time and cpu power to see any further gain. 120 120 ))) 150 +))) 151 + 152 +== Audio Capture == 153 + 154 +=== Windows === 155 + 156 +=== Mac OSX === 157 + 158 + 159 +== References == 160 + 161 +FFmpeg documentation: 162 + 163 +* [[https:~~/~~/ffmpeg.org/documentation.html>>https://ffmpeg.org/documentation.html]] 164 + 165 +Lossless capture: 166 + 167 +* [[https:~~/~~/video.stackexchange.com/questions/25034/lossless-capture-with-ffmpeg>>https://video.stackexchange.com/questions/25034/lossless-capture-with-ffmpeg]] 168 +* [[https:~~/~~/video.stackexchange.com/questions/8305/lossless-screen-recording-software>>https://video.stackexchange.com/questions/8305/lossless-screen-recording-software]] 169 +* [[https:~~/~~/trac.ffmpeg.org/wiki/Capture/Desktop>>https://trac.ffmpeg.org/wiki/Capture/Desktop]] 170 + 171 +Video editing programs 172 + 173 +* black magic davinci resolve 174 +* kdenlive 175 +* shotcut 176 + 177 +== Tips == 178 + 179 +Screen capture portion of a screen 180 + 181 +>(% style="font-size:14px" %)ffmpeg -y -f avfoundation -t 6 -pixel_format 0rgb -capture_cursor 1 -capture_mouse_clicks 1 -framerate 60 -i "1:" -filter:v "format=yuv444p" -filter:v "crop=1920:1080:320:180" -c:v libx265 -crf 0 -preset ultrafast screenCapture.mkv 182 + 183 +