首页
学习
活动
专区
圈层
工具
发布

FFmpeg开发笔记(九十六)采用Kotlin+Compose的视频编辑器OpenVideoEditor

​《FFmpeg开发实战:从零基础到短视频上线》一书的“第 12 章  FFmpeg的移动开发”介绍了如何使用FFmpeg在手机上播放视频,基于FFmpeg的国产播放器开源框架也有很多了,前有哔哩哔哩的...ijkplayer,后有小红书的RedPlayer,参见之前的文章《使用国产的ijkplayer播放器观看网络视频》和《使用国产的RedPlayer播放器观看网络视频》。...除此以外,OpenVideoEditor也是一款优秀的Android原生视频编辑器,该框架基于Kotlin+Compose开发,并采用Media3和Jetpack Compose构建,贴近最新的Android...此时界面下方的进度条出现两个圆珠,第一个圆珠代表裁剪开始时间,第二个圆珠代表裁剪结束时间,如下图所示:分别拖动两个圆珠确定裁剪的起止时间后,点击右下角的打勾按钮,此时进度条长度变为视频片段的持续时间比如...总结一下,OpenVideoEditor确实使用简单,剪辑功能也丰富,是个未来可期的下一代视频编辑器。更多详细的FFmpeg开发知识参见《FFmpeg开发实战:从零基础到短视频上线》一书。​

26510

国产的视频裁剪框架AndroidVideoTrimmer

《FFmpeg开发实战:从零基础到短视频上线》一书的“第 12 章 FFmpeg的移动开发”介绍了如何使用FFmpeg在手机上剪辑视频,方便开发者更好地开发类似剪映那样的视频剪辑软件。...那么在Android系统上还有一款国产的开源视频裁剪框架Android-Video-Trimmer,通过该框架可以更快地裁剪视频片段,下面就来介绍如何在App工程中使用Android-Video-Trimmer...Android Video Trimmer是一款专为Android平台设计的强大开源视频处理工具,它通过FFmpeg实现视频裁剪功能,并支持裁剪后的视频压缩功能。...13(API 34)和Kotlin 1.9开发,可见该框架的源码更新十分及时。...实测发现最新版的Android Video Trimmer编译通过后无法正常裁剪视频,只有2019年2月发布的Android-Video-Trimmer-1.0.0才能正常使用,该版本的压缩包下载地址为

57210
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    FFmpeg开发笔记(九十三)国产的Android开源视频编辑器EpMedia

    ​《FFmpeg开发实战:从零基础到短视频上线》一书的“第 12 章  FFmpeg的移动开发”介绍了如何使用FFmpeg在手机上剪辑视频,方便开发者更好地开发类似剪映那样的视频剪辑软件。...那么在Android系统上还有一款国产的开源视频裁剪框架EpMedia,通过该框架可以更方便地加工视频片段,下面就来介绍如何在App工程中使用EpMedia。...EpMedia是一款基于FFmpeg开发的国产视频处理框架,简单易用,体积小,帮助使用者快速实现视频处理功能。...可是不管EpMedia还是EpMediaDemo,其源码的发布时间都较早,为了让小海豚版本的Android Studio Dolphin能够打开它们,需要对App工程作如下修改:1、合并EpMedia和...,然后勾选页面上方的【剪辑】复选框,表示选取视频文件的第0秒到第5秒的片段,接着点击页面右下角的【开始处理】按钮,EpMedia就开始编辑视频如下图所示:裁剪之后的视频片段默认放在App安装路径下的files

    24110

    偶遇FFmpeg(番外)——FFmpeg花样编译入魔1之裁剪大小

    目标确定- 不择手段得最小 在偶遇FFmpeg(三)——Android集成这边文章中曾经介绍过FFmpeg和Android的交叉编译。文章中也提到过如何裁剪SO文件大小的方式。 这边文章就这个问题。...这个协议的部分就是protocol来负责的。 解封装。解封装需要的就是demuxers。同样,对于一个文件,只有找到对应的解封装器,才能成功。 就开始分别对音频和视频文件进行解码。...indevs可用的输入设备和outdevs可用的输出设备 整个基本上在Android上不会用到 filters过滤器 可用于文件的过滤器,如宽高比裁剪,格式化、非格式化 伸缩等。...那同样为parser添加h264和aac demuxer 因为我们的视频是mp4的,所以我们使用mp4 protocol 最后,因为我们是需要播放本地的文件。...运行.png APK中的大小 ? APK.png 撒花~~~ 总结 本文就是通过一个实际的例子,来说明如何裁剪FFmpeg编译大小的解决思路。 1.

    3.8K30

    国产的开源视频剪辑工具AndroidVideoEditor

    《FFmpeg开发实战:从零基础到短视频上线》一书的“第 12 章 FFmpeg的移动开发”介绍了如何使用FFmpeg在手机上剪辑视频,方便开发者更好地开发类似剪映那样的视频剪辑软件。...那么在Android系统上还有一款国产的开源视频剪辑框架Android-Video-Editor,通过该框架可以更方便地对视频进行剪辑和滤镜操作,下面就来介绍如何在App工程中使用Android-Video-Editor...Android-Video-Editor是一款Android视频编辑开源工具,主要功能包括视频拍摄、视频裁剪、视频滤镜、视频压缩等等。...并安装到真机上,点击【相册】后加载系统相册中的所有视频文件,选择一个待加工的视频文件,打开该视频的编辑界面如下图所示: 编辑界面下方可以滑动选择待裁剪的视频片段,点击右下角的【滤镜】按钮,弹出滤镜选择列表如下图所示...稍等片刻剪辑完成后,App会自动跳到视频播放界面观看加工好的视频片段。 更多详细的FFmpeg开发知识参见《FFmpeg开发实战:从零基础到短视频上线》一书。

    49510

    【Android 音视频开发打怪升级:FFmpeg音视频编解码篇】一、FFmpeg so库编译

    教程代码:【Github传送门】 目录 一、Android音视频硬解码篇: 1,音视频基础知识 2,音视频硬解码流程:封装基础解码框架 3,音视频播放:音视频同步 4,音视频解封和封装:生成一个MP4...7,Android FFmpeg视频编码 ---- 本文你可以了解到 使用 GCC 或 CLANG 交叉编译出Android平台可以使用的FFmpeg so库。...一、前言 网上其实已经有很多的关于FFmpeg so库编译的分享,但是大部分都是直接把配置文件的内容贴出来。我想大部分取搜索 「如何编译FFmpeg so库」的人,对交叉编译这个东东都是比较陌生的。...三、如何交叉编译FFmpeg FFmpeg是什么 鼎鼎大名的FFmpeg,不说在音视频界如雷贯耳,就算一个不开发音视频的开发者也都是略有耳闻。...so 生成的头文件 五、使用 GCC 编译FFmpeg 目前大部分网上的文章都是使用 GCC 来编译 FFmpeg 的,下面就来看看如何配置 GCC 的编译参数。

    2.6K30

    直播间源码android音视频开发

    MPEG-4:制定于1998年,MPEG-4是为了播放流式媒体的高质量视频而专门设计的,它可利用很窄的带宽,通过帧重建技术, 压缩和传输数据,以求使用最少的数据获得最佳的图像质量。...[待深入使用,或者用过的可以交流下] 其实这个没有深入分析,ijkplayer是bilibili开源的音视频编解码库,对android,ios进行和很好的抽取封装,易于编译使用.vlc尝试过,稍微复杂些...project Select android/ijkplayer/ and import 可以根据需要对音视频编解码库进行裁剪.编译出最小的满足需要的库 bilibili提供三种裁剪方式 If you.../contrib sh compile-ffmpeg clean 当然也可以根据需要自己裁剪....倍速播放 Not until Android 6.0 为什么往前拖动进度条后,还会往后退几秒 seek只支持关键帧,出现这个情况就是原始的视频文件中i 帧比较少,播放器会在拖动的位置找最近的关键帧。

    4.8K21

    神器 ffmpeg —— 操作视频,极度舒适

    ffmpeg是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序 使用这个神器,便可以处理各种视频素材内容,极度舒适 下面一行来分享一下如何使用这个神器 1安装 首先需要在ffmpeg...-ss [starttime] -t [length] -c copy [newfilename] i 为需要裁剪的文件 ss 为裁剪开始时间 t 为裁剪结束时间或者长度 c 为裁剪好的文件存放 好了.../out.mp4 -ss为开始时间,-to为结束时间。 设置视频大小 $ ffmpeg -i ....={'input.mp4': None}, outputs={'output.avi': None} ) ff.run() 转码 如果同时我们想使用不同的编解码器重新编码视频和音频...文件和mp3文件合成同一个视频文件 这里使用 OrderedDict 来保留输入的顺序,以便它们与输出选项中的流的顺序相匹配: from collections import OrderedDict inputs

    1.7K10

    Android 屏幕录制GIF脚本

    image.png 因为一直需要将Android手机上的效果录制下来,转成gif,然后上传到博客上。 原来都需要手动操作好几次,所以索性的写了一个脚本来配合使用。...环境准备 FFmpeg下载 去官网下载地址下载好,解压就可以了。 adb下载 需要下载AndroidSDK。因为笔者下载了Android Studio,帮忙下好SDK。所以就不过多描述了。...-s 360x640 -r 10 target-%dh%.gif 修改视频的尺寸 -s 参数是修改视频的尺寸。...这样能适当的缩小转出来的gif大小 剪切视频尺寸 -vf crop=width:height:x:y ffmpeg -i 视频源地址 -strict -2 -vf crop=1080:1080:0:...420 视频输出地址(如:out.mp4) 其中的 crop=1080:1080:0:420 才裁剪参数,具体含义是,其中 width 和 height 表示裁剪后的尺寸,x:y 表示裁剪区域的左上角坐标

    1.8K10

    FFMPEG Mac 命令行

    如果你使用 %3d,那么图像的命名像 image-001.png、image-002.png 等等开始。...-filter:v – 表示视频过滤器。 crop – 表示裁剪过滤器。 w – 我们想自源视频中裁剪的矩形的宽度。 h – 矩形的高度。 x – 我们想自源视频中裁剪的矩形的 x 坐标 。...比如说你想要一个来自视频的位置 (200,150),且具有 640 像素宽度和 480 像素高度的视频,命令应该是: $ ffmpeg -i input.mp4 -filter:v "crop=640...-shortest output.mp4 14、使用开始和停止时间剪下一段媒体文件 可以使用开始和停止时间来剪下一段视频为小段剪辑,我们可以使用下面的命令。...在我们的示例中,开始时间是第 50 秒。 -t – 表示总的持续时间。 当你想使用开始和结束时间从一个音频或视频文件剪切一部分时,它是非常有用的。 类似地,我们可以像下面剪下音频。

    2.5K20

    Android的开源音视频剪辑框架RxFFmpeg

    《FFmpeg开发实战:从零基础到短视频上线》一书的“第 12 章 FFmpeg的移动开发”介绍了如何使用FFmpeg在手机上剪辑视频,方便开发者更好地开发类似剪映那样的视频剪辑软件。...那么在Android系统上还有一款国产的开源视频剪辑框架RxFFmpeg,通过该框架可以更快地开发剪辑App,下面就要介绍如何在App工程中使用RxFFmpeg。...RxFFmpeg是一个Android平台的音视频编辑、视频剪辑的快速处理框架,它基于多个音视频开源框架,包括但不限于FFmpeg 4.0、x264、mp3lame、fdk-aac、opencore-amr...RxFFmpeg主要提供拼接、转码、压缩、裁剪、变速、分离音视频、添加片头片尾、添加贴纸、添加字幕、添加滤镜、添加背景音乐等常见功能,能够基本满足音视频文件的日常剪辑需求。...并且RxFFmpeg的源码采用Java+XML编写,对于初学者而言非常友好,使用Android Studio Dolphin(小海豚版本)无需任何改动即可直接导入RxFFmpeg的demo工程。

    73910

    原来FFmpeg这么有意思(一)

    但是FFmpeg不仅仅止于音视频的播放裁剪功能,还能干些更有趣的事情,就比如说视频的画面拼接,对于一个Android开发者来说,一想到FFmpeg c/c++是跑不掉的。...这个我之后的文章会详细说明,这里我只和大家说说有趣在哪里。...Android FFmpeg视频画面拼接 通过标题大家可能还是不太明白啥意思,我就上几张我做的这个App的截图吧,顺便放几张动态图,可能大家能知道个大概功能。...这个App大概有以下功能(目前并未开源,项目地址) 视频画面拼接(主要的) 视频宽高裁剪 视频时长裁剪 添加视频边框及修改边框颜色 添加视频封面 添加视频背景图片 添加视频水印 添加背景音乐 下面是两张视频转...第三步 视频拼接,那么如何视频拼接呢,不用担心 ffmpeg 已经给我们做好了相应的封装了。只要了解相应的命令就可以完成了最基础的视频拼接功能了。

    1.6K30

    (五)利用FFmpeg 命令行fftools转码视频

    利用FFmpeg转码视频并支持裁剪,这是目前我们团队提到的一个需求点,我们的项目多采用Swift语言,Demo便采用Swift吧,并不影响核心代码。...两套方案:fftools和API,本章采用fftools实现,下一章实现调用FFmpeg API实现视频转码 在FFmpeg 命令行工具我们已经详细介绍了视频转码的命令和参数配置,本文结合需求将iPhone...开始前,我们先用iPhone录制一个mov格式的视频,保存在了Demo里面使用。...1、将编译好的FFmpeg、x264、fdk_aac导入工程 2、修配置头文件搜索路径,在工程文件->Bulid Setting->Search Paths->Header Search Paths...本教程FFmpeg版本为最新4.2,只单纯集成FFmpeg,没有使用x264和fdk_aac,如需使用自己单独编译替换lib和对应的include即可,iOS使用fftools转码Demo ---- 如果喜欢

    2.1K30

    音视频基本概念和FFmpeg的简单入门

    -aspect:设置横纵比 4:3 16:9 或 1.3333 1.7777 -ss:position 搜索到指定的时间 [-]hh:mm:ss[.xxx]的格式也支持,比如用来指定剪切开始时间 FFmpeg...如果你使用 %3d,那么图像的命名像 image-001.png、image-002.png 等等开始。...crop – 表示裁剪过滤器。 w – 我们想自源视频中裁剪的矩形的宽度。 h – 矩形的高度。 x – 我们想自源视频中裁剪的矩形的 x 坐标 。...-ss 00:00:13 为视频的下一部分显示开始时间戳。它意味着第 2 部分将从第 30 秒开始,并将持续到原始视频文件的结尾。...-c copy output.mkv 是字幕文件,然后这里选用的是软字幕方式比较快 总结 根据项目需要,简单学习了下音视频的非常基本的概念和FFmpeg的基本使用,留个记录;

    1.7K40

    Serverless 实现视频压缩与格式转换

    所以可以看到视频的压缩/转码等操作,在 Serverless 架构下确实是一个很好的典型应用。那么有了这样的一个"典型"应用,我们应该如何实现它呢?...yasm 是汇编编译器,ffmpeg 为了提高效率使用了汇编指令,如 MMX 和 SSE 等。...-t 指定需要截取多长时间 -i 指定输入文件 这个命令就是从 00 秒开始裁剪到 00+30=30 秒结束,总共 30 秒的视频。...可能有些视频裁剪后的效果,如期望一致,00 秒开始,30 秒结束,总共 30 秒的视频,但是有些视频裁剪后你会发现可能开始和结束都不是很准确,有可能是从 00 秒开始,33 秒结束。这是为什么呢?...的位置开始,截取宽200,高100的视频 ffmpeg -i in.mp4 -filter:v "crop=80:60:200:100" -c:a copy out.mp4 // 截取右下角的四分之一

    1.8K42

    【FFmpeg】Filter 过滤器 ② ( 裁剪过滤器 Crop Filter | 裁剪过滤器语法 | 裁剪过滤器内置变量 | 裁剪过滤器常用用法 )

    的特定区域 ; 裁剪过滤器 Crop Filter 的 主要工作 是 将 输入视频帧 的 指定宽高像素的区域 从 x 和 y 坐标位置 裁剪出来 , 输出 到指定的 宽高像素画面 中 ; x 和 y...( 0 , 0 ) 坐标开始的 100 x 输入视频画面高度 像素区域的画面 ; 5、裁剪过滤器应用 在 ffmpeg 命令中 , 使用 -vf 参数 指定 裁剪过滤器 , 裁剪过滤器 放在 双引号...crop=ow[:oh[:x[:y[:keep_aspect]]]] 裁剪过滤器 语法 , x 和 y 默认就自动设置为 输入画面的 中心位置 , 最终得到的 裁剪过滤器为 crop=200:..., 裁剪命令执行效果 和 播放效果 如下图所示 ; 4、裁剪中心 1/2 宽高画面 这里使用 iw 和 ih 两个变量 , 裁剪的画面宽高都为 1/2 , 由于 x 和 y 默认就是裁剪中心位置 ,...这里不需要设置 , 使用默认设置即可 ; 只需要计算出 ow 和 oh 这两个过滤器参数值 ; ow 是要裁剪的宽度 , 这里设置为 1/2*iw , 即输入视频的 1/2 宽度 ; oh 是要裁剪的高度

    1.5K10

    使用FFmpeg处理音视频

    本文主要是介绍如何使用ffmpeg命令行工具进行各式各样的音视频处理操作——缩放、裁剪、剪辑、旋转、格式转换,etc。。。学了本文,基本可以把格式工厂之类的音视频处理软件删了。。 一....剪辑 有时候我们需要截取一个长视频的其中某一段内容,比如从一个视频的第10秒开始,截取6秒的内容,也就是10~16秒的内容,输入一个out.mp4文件 $ ffmpeg -i in.mp4 -ss 00...-vf crop=1080:1080:0:420 out.mp4 参数解释: crop 和上面的scale一样,也是视频滤镜的一种,crop是裁剪滤镜。...四个参数分别是 width:height:x:y,其中width和height指的是裁剪的宽和高,x和y代表裁剪的区域的左上角的坐标,坐标系原点为原视频的左上角。...比如 0:0就代表原视频的左上角,50:50就代表以原视频的左上角为原点的坐标系的50:50位置 4. 旋转 使用ffmpeg可以轻松地旋转视频。

    6.8K80

    IVWEB玩转wasm系列-纯web视频剪辑转换工具

    ,包括视频的裁剪/转换。...-vf showinfo -strict 2 output.mp4就可以的到输入视频input.webm的mp4格式输入,如果把时间参数带入比如增加-ss 10 -t 60同样可以将视频从第10s开始裁剪...使用命令行 在本地的ffmpeg上使用简单的ffmpeg -i input.m3u8 -c copy output.mp4命令就能把hls视频导出一个mp4文件,如果需要第5到第8分钟的视频,用ffmpeg...当播放视频的时候,需要先读取moov box的信息,来查找视频和音频数据的位置,如果moov box的位置处于视频的尾部,那就需要加载完整个视频才能开始播放。 ?...对于使用视频流的我们来说,这是无法接受的(也有支持seek的方式,让服务器直接seek到视频尾部,不过需要额外的处理)。

    3.4K31

    python将视频抽帧的的多种方式

    发行的跨平台计算机视觉库,可以运行在Linux、Windows、Android和Mac OS操作系统上。...开始编码:**具体思路是:使用cv2中的VideoCapture函数加载视频,然后按帧读取,使用read方法;``` vidcap = cv2.VideoCapture(video_path)...open-cv保存图片完成;**第二种:使用moviepy和PIL**> moviepy是python中处理视频的常用库> PIL是python中处理图片的常用库;> 两个库都是第三方库,使用前需要安装...```**使用FFmpeg抽帧**FFmpeg是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序;使用ffmpeg命令可以很快的抽取视频帧;python在使用ffmpeg命令时,只需要调用内置库...,ffmpeg实现此功能最方便;**使用FFmpeg裁剪视频**使用ffmpeg裁剪视频时的命令如下:> ffmpeg -i video_path -vf crop=405:720:440:0 out_path

    3.8K21
    领券