Giter Site home page Giter Site logo

silvrwolfboy / ztexturerecorder Goto Github PK

View Code? Open in Web Editor NEW

This project forked from neilcc/ztexturerecorder

0.0 2.0 0.0 369 KB

Surface and texture(video) record library for Android. Android 纹理\Surface 录制库\ 录屏库 Android 视频录制库

Kotlin 3.45% Java 96.34% GLSL 0.22%

ztexturerecorder's Introduction

GLMediaHub \ ZTextureRecorder

Introduction

This is a library that supports record video from surface by MediaRecord or MediaCodec.

openGLES part is based on grafika

Libs and Apis

mediarecorderlib

This is a texture recorder library, which input is openGLES texture and output is mp4 files.

It supports for TEXTURE_2D and TEXTURE_EXT frames.

The encoder can be chosen between MediaRecorder(which requires Android L or Above) and MediaCodec.

This lib can be used to record screen, rtmp surface, offscreen textures, and any texture that obtained from a OpenGL thread.
Remind that it do not create OpenGLES thread, it is necessary to pass a OpenGLES Context into it Or init it in a GL thread, such that I can get GLContext from current thread. Thus it is necessary to create OpenGLES context in your own project. A GLSurfaceView is recommended.
It can easily used by four steps:
  1. init capturing params:
    capturingManager.initCapturing(textureWidth, textureHeight,
                        toSaveFilePath,
                        Texture2dProgram.ProgramType.TEXTURE_EXT,
                        encoderType, eglContext);
  1. start capturing manager:
   capturingManager.startCapturing()
  1. pass texture of each frame into it
   capturingManager.captureFrame(textureId)
  1. stop at proper time
    capturingManger.stop();
  1. release on component destroyed
    capturingManger.release();

For more information, just run the demo or contact me by : [email protected]

mediadecoderlib

A empty lib currently.

glrender

A empty lib currently.

Recorder Struct

StructImg2

ztexturerecorder's People

Contributors

neilcc avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.