All Projects → SimformSolutionsPvtLtd → SSffmpegVideoOperation

SimformSolutionsPvtLtd / SSffmpegVideoOperation

Licence: Apache-2.0 license
This is a library of FFmpeg for android... 📸 🎞 🚑

Programming Languages

kotlin
9241 projects

Projects that are alternatives of or similar to SSffmpegVideoOperation

Screen Recorder Ffmpeg Cpp
*Multimedia project* A screen recording application to capture your desktop and store in a video format. Click here to watch the demo
Stars: ✭ 98 (-62.45%)
Mutual labels:  multimedia, video-processing, video-streaming
tssi2
tssi2 is a header-only library for parsing MPEG-2 and DVB Transport Streams in the domain of multimedia processing applications.
Stars: ✭ 18 (-93.1%)
Mutual labels:  mpeg, video-processing, video-streaming
Gifcompressor
An Android tool to compresses your GIFs into lightweight MP4 video using fast, hardware-accelerated encoders. Supports cropping, rotation, GIF concatenation and much more.
Stars: ✭ 85 (-67.43%)
Mutual labels:  compression, mp4, gif
Ffmpeg
Mirror of https://git.ffmpeg.org/ffmpeg.git
Stars: ✭ 27,382 (+10391.19%)
Mutual labels:  mp4, multimedia, mpeg
ZLPhotoBrowser-objc
(ZLPhotoBrowser oc 版本)轻量级照片选择框架,支持预览/相册内拍照及录视频、拖拽/滑动选择,编辑裁剪图片/视频,支持多语言国际化等功能
Stars: ✭ 54 (-79.31%)
Mutual labels:  photos, gif
InstaSmart
A Flutter app to plan and beautify your Instagram feed
Stars: ✭ 18 (-93.1%)
Mutual labels:  photos, frame
Notgif
Play & Share your GIFs in Photos
Stars: ✭ 84 (-67.82%)
Mutual labels:  photos, gif
Gallery shell
📷 Bash Script to generate static responsive image web galleries.
Stars: ✭ 198 (-24.14%)
Mutual labels:  photos, mp4
Flyimg
Dockerized PHP7 application runs as a Microservice to resize and crop images on the fly. Get optimised images with MozJPEG, WebP or PNG using ImageMagick. Includes face detection, cropping, face blurring, image rotation and many other options. Abstract storage based on FlySystem in order to store images on any provider (local, AWS S3...).
Stars: ✭ 762 (+191.95%)
Mutual labels:  compression, gif
Livelygifs
An app show your Live Photo and export as GIF.
Stars: ✭ 92 (-64.75%)
Mutual labels:  photos, gif
FunVideo
A series of embeddable theme into video, include animation and voice.
Stars: ✭ 19 (-92.72%)
Mutual labels:  gif, video-processing
Precomp Cpp
Precomp, C++ version - further compress already compressed files
Stars: ✭ 250 (-4.21%)
Mutual labels:  compression, gif
Essential Image Optimization
Essential Image Optimization - an eBook
Stars: ✭ 1,950 (+647.13%)
Mutual labels:  compression, gif
Zlphotobrowser
Wechat-like image picker. Support select normal photos, videos, gif and livePhoto. Support edit image and crop video. 微信样式的图片选择器,支持预览/相册内拍照及录视频、拖拽/滑动选择,编辑图片/视频,支持多语言国际化等功能;
Stars: ✭ 3,962 (+1418.01%)
Mutual labels:  photos, gif
mp4analyser
mp4 file analyser written in Python
Stars: ✭ 50 (-80.84%)
Mutual labels:  mp4, mpeg
Workflowshare
Workflow实例分享
Stars: ✭ 137 (-47.51%)
Mutual labels:  photos, gif
VideoProcessingLibrary
The easiest library for video processing
Stars: ✭ 52 (-80.08%)
Mutual labels:  video-processing, ffmpeg-android
xaringanBuilder
An R package for building xaringan slides into multiple outputs, including html, pdf, png, gif, pptx, and mp4.
Stars: ✭ 157 (-39.85%)
Mutual labels:  mp4, gif
ExpertVideoToolbox
A lightweight, versatile GUI of x264, x265. Nearly full input formats support, .mkv and .mp4 output support. Avs support will be added soon. Language: Chinese
Stars: ✭ 12 (-95.4%)
Mutual labels:  mp4, video-processing
Compress Images
Minify size your images. Image compression with extension: jpg/jpeg, svg, png, gif. NodeJs
Stars: ✭ 331 (+26.82%)
Mutual labels:  compression, gif

FFMPEG video operations

Kotlin Version Platform API Android Arsenal

FFmpeg compiled for Android. Execute FFmpeg commands with ease in your Android app.

Getting Started

This project is provide in-build FFmpeg operation queries:

Video operation ffmpeg queries like

  • Cut video using time
  • Convert image to video
  • Add water mark on video
  • Add text on video
  • Combine image image and video
  • Combine images
  • Combine videos
  • Compress a video
  • Extract frames from video
  • Fast/Slow motion video
  • Reverse video
  • video fade in / fade out
  • Compress video to GIF
  • Rotate and Flip video (Mirroring)
  • Remove audio from video
  • Update aspect ratio of video

Other extra operation FFmpeg queries like

  • Merge GIFs
  • Merge Audios
  • Update audio volume
  • Fast/Slow audio
  • Crop audio using time
  • Compress Audio

Architectures

FFmpeg Android runs on the following architectures:

  • arm-v7a, arm-v7a-neon, arm64-v8a, x86 and x86_64

Features

  • Enabled network capabilities
  • Multi-threading
  • Supports zlib and Media-codec system libraries
  • Camera access on supported devices
  • Supports API Level 24+

Support target sdk

  • 30

Dependency

Gradle Dependency

  • Add it in your root build.gradle at the end of repositories:

     allprojects {
         repositories {
     	...
     	maven { url 'https://jitpack.io' }
         }
     }
    
  • Add the dependency in your app's build.gradle file

     dependencies {
     	implementation 'com.github.SimformSolutionsPvtLtd:SSffmpegVideoOperation:1.0.8'
     }
    

This is all you have to do to load the FFmpeg library.

Run FFmpeg command

In this sample code we will run the FFmpeg -version command in background call.

  val query:Array<String> = "-i, input,....,...., outout"
        CallBackOfQuery().callQuery(query, object : FFmpegCallBack {
            override fun statisticsProcess(statistics: Statistics) {
                Log.i("FFMPEG LOG : ", statistics.videoFrameNumber)
            }

            override fun process(logMessage: LogMessage) {
                Log.i("FFMPEG LOG : ", logMessage.text)
            }

            override fun success() {
            }

            override fun cancel() {
            }

            override fun failed() {
            }
        })

In-build query example

val startTimeString = "00:01:00" (HH:MM:SS)
val endTimeString = "00:02:00" (HH:MM:SS)
val query:Array<String> = FFmpegQueryExtension().cutVideo(inputPath, startTimeString, endTimeString, outputPath)
CallBackOfQuery().callQuery(query, object : FFmpegCallBack {
            override fun statisticsProcess(statistics: Statistics) {
                Log.i("FFMPEG LOG : ", statistics.videoFrameNumber)
            }

            override fun process(logMessage: LogMessage) {
                Log.i("FFMPEG LOG : ", logMessage.text)
            }

            override fun success() {
                //Output = outputPath
            }

            override fun cancel() {
            }

            override fun failed() {
            }
        })

same for other queries. And you can apply your query also

Medium Blog

For more info go to Multimedia Operations for Android using FFmpeg

Find this library useful? ❤️

Support it by joining stargazers for this repository.

Awesome Mobile Libraries

License

Copyright 2021 Simform Solutions

   Licensed under the Apache License, Version 2.0 (the "License");
   you may not use this file except in compliance with the License.
   You may obtain a copy of the License at

       http://www.apache.org/licenses/LICENSE-2.0

   Unless required by applicable law or agreed to in writing, software
   distributed under the License is distributed on an "AS IS" BASIS,
   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   See the License for the specific language governing permissions and
   limitations under the License.
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].