All Projects → zhfeng20108 → ZFScreenRecorder

zhfeng20108 / ZFScreenRecorder

Licence: MIT license
录屏,支持暂停、取消

Programming Languages

objective c
16641 projects - #2 most used programming language
ruby
36898 projects - #4 most used programming language

Projects that are alternatives of or similar to ZFScreenRecorder

Screenity
The most powerful screen recorder & annotation tool for Chrome 🎥
Stars: ✭ 6,229 (+16292.11%)
Mutual labels:  screen-recorder, screen-capture, recorder
screencast
Interface to record a X11 desktop
Stars: ✭ 91 (+139.47%)
Mutual labels:  screen, screen-recorder, screen-capture
autoscreen
Automated screen capture utility
Stars: ✭ 76 (+100%)
Mutual labels:  screen, screen-capture
Recorder
html5 js 录音 mp3 wav ogg webm amr 格式,支持pc和Android、ios部分浏览器、和Hybrid App(提供Android IOS App源码),微信也是支持的,提供H5版语音通话聊天示例 和DTMF编解码
Stars: ✭ 2,891 (+7507.89%)
Mutual labels:  recording, recorder
p5.rec
🍿 p5.rec lets you record your p5.js sketches and convert them to mp4 in your browser ▶️
Stars: ✭ 70 (+84.21%)
Mutual labels:  screen-recorder, screen-capture
Chipkizi
a recording app for up and coming artists
Stars: ✭ 26 (-31.58%)
Mutual labels:  recording, recorder
Termtosvg
Record terminal sessions as SVG animations
Stars: ✭ 9,310 (+24400%)
Mutual labels:  recording, recorder
camstudio
CamStudio fork
Stars: ✭ 83 (+118.42%)
Mutual labels:  screen-recorder, screen-capture
Asciinema
Terminal session recorder 📹
Stars: ✭ 9,880 (+25900%)
Mutual labels:  recording, recorder
rdScreenRecordSDK-for-Windows
Windows录屏SDK
Stars: ✭ 19 (-50%)
Mutual labels:  screen, recording
Kap
An open-source screen recorder built with web technology
Stars: ✭ 14,488 (+38026.32%)
Mutual labels:  screen-recorder, screen-capture
webcam-glass
Cross-platform tool for making video tutorials and video conferencing, blending the webcam over the screen.
Stars: ✭ 16 (-57.89%)
Mutual labels:  screen-recorder, screen-capture
Sharex
ShareX is a free and open source program that lets you capture or record any area of your screen and share it with a single press of a key. It also allows uploading images, text or other types of files to many supported destinations you can choose from.
Stars: ✭ 18,143 (+47644.74%)
Mutual labels:  screen-recorder, screen-capture
Scrcpy
Display and control your Android device
Stars: ✭ 58,880 (+154847.37%)
Mutual labels:  screen, recording
castty
A CLI tool to record audio-enabled screencasts of your terminal, for the web.
Stars: ✭ 109 (+186.84%)
Mutual labels:  recording, recorder
Android Screen Recorder Plugin
A simple android library project for record android screen in Unity
Stars: ✭ 28 (-26.32%)
Mutual labels:  screen-capture
vcr.js
Mock server with Proxy and Record support inspired by ruby VCR.
Stars: ✭ 41 (+7.89%)
Mutual labels:  recording
sounds
Flutter plugin for sound. Audio recorder and player.
Stars: ✭ 74 (+94.74%)
Mutual labels:  recorder
Tracker
Even the best of apps have their issues
Stars: ✭ 113 (+197.37%)
Mutual labels:  recorder
ScreenSelector
Provides screen selector UI for iOS.
Stars: ✭ 31 (-18.42%)
Mutual labels:  screen

ZFScreenRecorder

基于GPUImage实现的录屏,性能很好。

安装

target 'TargetName' do
pod 'ZFScreenRecorder'
end

核心思路

ZFScreenVideoCamera是用来采集视频和音频的信息,音频信息直接发送给GPUImageMovieWriter;视频信息传入响应链作为源头,渲染后的视频信息再写入GPUImageMovieWriter,文件保存在沙盒里。 ZFScreenVideoCamera实现灵感来源于GPUImageVideoCamera。 ZFScreenVideoCamera和GPUImageVideoCamera相似,唯一不同的是视频的采集方式。ZFScreenVideoCamera采用截屏方式,GPUImageVideoCamera采用的是摄像头。所以ZFScreenVideoCamera完美兼容GPUImage的所有功能,在视频的处理上节约了大量开发时间。

流程图

image

使用

	_movieWriter = [[GPUImageMovieWriter alloc] initWithMovieURL:movieURL size:finalSize];
	//截屏
	self.videoCamera = [[ZFScreenVideoCamera alloc] initWithView:screenView inRect:rect];
	self.videoCamera.runBenchmark = YES;
	[self.videoCamera addTarget:_movieWriter];
    //*/
    self.videoCamera.microphoneEnabled = microphoneEnabled;
    if (microphoneEnabled) {
        self.videoCamera.audioEncodingTarget = _movieWriter;
    }
    _movieWriter.encodingLiveVideo = YES;
    //开始录屏
    [self.videoCamera startScreenCapture];
    //视频写文件
    [_movieWriter startRecording];
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].