我正在尝试使用 easy screen 录制我的屏幕。我认为它使用一个名为的 CLI 工具ffmpeg
,并为我们提供了一个 GUI 来使用 CLI 版本。我这样想对吗?
无论如何,当我尝试录制屏幕时,我收到一个错误屏幕
ffmpeg version 2020-12-15-git-32586a42da-essentials_build-www.gyan.dev Copyright (c) 2000-2020 the FFmpeg developers
built with gcc 10.2.0 (Rev5, Built by MSYS2 project)
configuration: --enable-gpl --enable-version3 --enable-static --disable-w32threads --disable-autodetect --enable-fontconfig --enable-iconv --enable-gnutls --enable-libxml2 --enable-gmp --enable-lzma --enable-zlib --enable-libsrt --enable-libssh --enable-libzmq --enable-avisynth --enable-sdl2 --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxvid --enable-libaom --enable-libopenjpeg --enable-libvpx --enable-libass --enable-libfreetype --enable-libfribidi --enable-libvidstab --enable-libvmaf --enable-libzimg --enable-amf --enable-cuda-llvm --enable-cuvid --enable-ffnvcodec --enable-nvdec --enable-nvenc --enable-d3d11va --enable-dxva2 --enable-libmfx --enable-libgme --enable-libopenmpt --enable-libopencore-amrwb --enable-libmp3lame --enable-libtheora --enable-libvo-amrwbenc --enable-libgsm --enable-libopencore-amrnb --enable-libopus --enable-libspeex --enable-libvorbis --enable-librubberband
libavutil 56. 62.100 / 56. 62.100
libavcodec 58.115.102 / 58.115.102
libavformat 58. 65.100 / 58. 65.100
libavdevice 58. 11.103 / 58. 11.103
libavfilter 7. 93.100 / 7. 93.100
libswscale 5. 8.100 / 5. 8.100
libswresample 3. 8.100 / 3. 8.100
libpostproc 55. 8.100 / 55. 8.100
Input #0, rawvideo, from '\\.\pipe\captura-fe91177e-9004-4cd3-96f9-3111a2b67705':
Duration: N/A, start: 0.000000, bitrate: 335708 kb/s
Stream #0:0: Video: rawvideo (BGRA / 0x41524742), bgra, 1366x768, 335708 kb/s, 10 tbr, 10 tbn, 10 tbc
C:\Users\44746\Documents\EasyScreen\2020-12-18-07-46-39.mp4: Permission denied
另一个错误屏幕显示此信息(管道破裂)
System.IO.IOException: Pipe is broken.
at System.IO.Pipes.PipeStream.WinIOError(Int32 errorCode)
at System.IO.Pipes.PipeStream.BeginWriteCore(Byte[] buffer, Int32 offset, Int32 count, AsyncCallback callback, Object state)
at System.IO.Pipes.PipeStream.BeginWrite(Byte[] buffer, Int32 offset, Int32 count, AsyncCallback callback, Object state)
at System.IO.Stream.<>c.<BeginEndWriteAsync>b__53_0(Stream stream, ReadWriteParameters args, AsyncCallback callback, Object state)
at System.Threading.Tasks.TaskFactory`1.FromAsyncTrim[TInstance,TArgs](TInstance thisRef, TArgs args, Func`5 beginMethod, Func`3 endMethod)
at System.IO.Stream.BeginEndWriteAsync(Byte[] buffer, Int32 offset, Int32 count)
at System.IO.Stream.WriteAsync(Byte[] buffer, Int32 offset, Int32 count, CancellationToken cancellationToken)
at System.IO.Stream.WriteAsync(Byte[] buffer, Int32 offset, Int32 count)
at Captura.Models.FFmpegWriter.WriteFrame(IBitmapFrame Frame)
at Captura.Models.WithPreviewWriter.WriteFrame(IBitmapFrame Image)
at Screna.Recorder.DoWrite()
您认为我只需要以管理员身份运行吗?如果是这样,我该如何让 easy screen 在 CLI 中以管理员身份运行?
或者您认为我应该放弃这种无用 GUI 并坚持使用 PowerShell?
(我的意思是,这段代码看起来像是试图输入下一组命令,但由于缺乏管理员权限而失败......这有意义吗?)