首页 > 其他分享 >音视频项目收集

音视频项目收集

时间:2024-07-25 09:51:25浏览次数:12  
标签:视频 github 收集 项目 音视频 https com

来源:简书  梅芳姑

最近项目一直在做这个,对标是抖音,剪影,微视以及b站的必剪。陆陆续续看了不少项目,按开发历程记录如下

1.https://github.com/shaopx/VideoClipEditViewTest

用原生MediaCodec, Opengl对视频进行处理,裁剪,滤镜,特效,抽帧等关键功能在项目初期给了我很多帮助。作者使用mediaPlayer进行播放预览,我们采用exoPlayer,拓展性要好很多。这个项目还包含闪电毛刺等特效。

2.https://github.com/MasayukiSuda/ExoPlayerFilter
基于exoPlayer播放器各种滤镜效果,上面那个半成品项目也是抄的这个,很多类似的视频编辑项目都抄这个,比较经典吧。其实各种滤镜效果跟exo没什么关系,值得参考的就是这些特效的opengl实现,在Android中的接入。

3.https://github.com/aserbao/AndroidCamera
这个demo跑起来效果不错(相对来讲),支持动态贴纸(就是gif)特效,start数有1.6K,文字贴纸的交互接近成品了,文字贴纸这部分很值得一抄。拍照部分总是挂。播放器采用mediaPlayer,抽帧使用MediaMetadataRetriever。断定录制时使用com.googlecode.mp4parse做多段音视频合并(因为音视频格式采样率什么的当然是一致的,用这个库合并也合理,但如果要添加音乐,合并背景音乐与视频原声这个库是不行的)。(有空把自己项目录制的这个参考整理一下呀)他引入了EpMedia 这个库执行ffmpeg命令。他还用了FMOD音频引擎,用来做大叔萝莉等音效变声,但是demo没有发现变声入口。

4.https://github.com/wlanjie/trinity
用kotlin和c++编写,除了界面,所有音视频处理功能都用C++实现的,短视频这块的c++源码很少见开源的,非常难得,而且同时支持软编解码和硬编解码。涉及功能非常全面,几乎覆盖抖音视频编辑的全部功能。不过问题也很多,距离正式搬到生产环境还有距离。这个项目我磕过一个月左右,因为想搭一个跨平台视频编辑sdk,(项目初期确实想走跨平台方向的,后来走偏了...)。我把基于这个项目所做的二次开发(逐帧预览、文字贴纸、修bug等),整理到了github上,地址https://github.com/meiliqin/GoldenVideoClip

5.https://github.com/krazykira/VidEffects
一些视频特效,可作为GPUImageFilter的补充,一些filter与其实现不同,但看起来似乎效果更好(比如高斯模糊)

鼻祖级项目

1.https://github.com/cats-oss/android-gpuimage
上百种滤镜效果,熟悉的GPUImageFilter,很多java做opengl处理的项目做滤镜都是抄的这里的glsl。

2.https://github.com/google/grafika
官方opengl各种用法,初学理解

相机

1.https://github.com/CainKernel/CainCamera
美颜相机,这个项目4年前(可能是16-17年)我就有关注过,当时抖音还没有大火,我在做一个贴纸相机并生成表情包的功能,当时对标的是美颜相机,faceu,B6132,当时这一票app很热门,女生拍照必备,后来被抖音淹没了...呵,.技术的发展真快。

2.https://github.com/robertlevonyan/CameraXDemo
关于cameraX的一个好demo,cameraX各模块各功能都有涉及,研究cameraX主要是因为它的一个牛逼之处:CameraX-extension。这个拓展可以使用硬件厂商提供的相机功能api,比如Oppo的相机美颜啊夜景拍照啊做那么好,我开放第三方app相机预览也可以使用它提供的美颜接口。但是捣腾了半天仅测得一款oppo手机提供了该接口。

3.https://github.com/saki4510t/AudioVideoRecordingSample
录制和编码方面的一个基础项目,能够将 Camera 采集的视频和音频内容编码成一个 MP4 文件。

直播推流

https://github.com/hypeapps/Endoscope
我的rtsp初体验项目,很不错,修改了其中视频流尺寸支持,获取相机预览和手机编码器支持尺寸(各设备各有不同)。另外,pc要装一个vcl,直播玩起来。

自研视频播放器

1.https://github.com/CarGuo/GSYVideoPlayer.git
基于IJKplayer、ExoPlayer等播放器框架的二次开发,实现android上多种热门播放器效果,其实跟我们做的事情差不多。

2.https://github.com/bilibili/ijkplayer.git

3.https://github.com/rockcarry/fanplayer.git
同上,开源视频播放器引擎

音频处理

1.https://github.com/CrazyZty/ComposeAudio
详解如何使用代码进行音频合成

  1. https://github.com/meiliqin/AndroidSoundTouch
    自己整理的soundtouch变速项目

其他

1.https://github.com/xufuji456/FFmpegAndroid
ffmpeg学习项目

2.https://github.com/yangjie10930/EpMedia
ffmpeg很好的android封装



作者:梅芳姑
链接:https://www.jianshu.com/p/e74970e85aa7

标签:视频,github,收集,项目,音视频,https,com
From: https://www.cnblogs.com/8335IT/p/18322362

相关文章

  • 涨见识了!脱离vue项目竟然也可以使用响应式API
    前言vue3的响应式API大家应该都特别熟悉,比如ref、watch、watchEffect等。平时大家都是在vue-cli或者vite创建的vue项目里面使用的这些响应式API,今天欧阳给大家带来一些不一样的。脱离vue项目,在node.js项目中使用vue的响应式API。关注公众号:【前端欧阳】,给自己一个进阶vue的机会......
  • 解锁未来建筑之数字孪生技术如何实现建筑项目的智能化与高效化?
     一、人工智能驱动的现实工具:人工智能驱动的混合现实工具和数字孪生技术正在用于优化建筑项目,提高建筑行业的效率和准确性。这个怎么实现?人工智能驱动的混合现实工具和数字孪生技术通过实时数据处理、模拟和优化,提高了建筑项目的效率和准确性。这些技术通过集成传感器、物联......
  • BI项目中ETL工程师的工作职责与技能要求
    在商业智能(BI)项目中,ETL工程师扮演着至关重要的角色,他们负责数据提取、转换和加载,确保数据仓库中的数据准确、一致和可用。一、工作职责:数据需求分析:与业务分析师和数据架构师合作,了解业务需求并确定数据提取和转换规则。数据抽取和加载:设计和实施ETL流程,从各种数据源中提......
  • 基于 LangChain+LangGraph 来实现一个翻译项目
    相信大家在看文档的时候,有时会比较苦恼,比如AI相关的文档都是外文,中文文档比较少,看起来会比较吃力,有的时候会看不懂,翻译软件又翻得很乱,完全看不了,今天就基于LangChain和LangGranph将吴恩达博士的一个项目给搬过来。一方面就是为了自己看文档方便点,另一方面也是练练手,用用......
  • HarmonyOS开发实例(附项目源码)
    文件目录如下。本项目共由12个页面组成,其中Index界面为app的4个主界面和Tabs导航栏组件拼接而成的真正的app主界面。page,,livehouse,ticket,my分别不带导航页的4个主界面。M1,M2,M3,M4为在page主界面进行搜索操作后跳转的搜索完成的界面,register,sign为在进入app的主界面之前......
  • Python数据分析与可视化大作业项目说明(含免费代码)
    题目:对全球和中国互联网用户的数据分析与可视化代码下载链接:https://download.csdn.net/download/s44359487yad/89574688一、项目概述1.1.项目背景:互联网是当今时代最重要和最有影响力的技术之一,它已经深刻地改变了人们的生活、工作、学习等方面。互联网用户数据是反映......
  • 类库项目无法引用Microsoft.AspNetCore程序集下的类库
    类库项目无法引用Microsoft.AspNetCore程序集下的类库 在类库项目中不能直接引用WebApplicationBuilder、ApplicationBuilder等类,这些类位于Microsoft.ASPNetCore程序集中,但是无法通过Nuget包引用,因为该Nuget包的版本已经不再支持,很久没有更新过了。解决方法:在项目文件cspr......
  • 音视频入门基础:PCM专题(3)——使用Audacity工具分析PCM音频文件
     =================================================================音视频入门基础:PCM专题系列文章:音视频入门基础:PCM专题(1)——使用FFmpeg命令生成PCM音频文件并播放音视频入门基础:PCM专题(2)——使用Qt播放PCM音频文件音视频入门基础:PCM专题(3)——使用Audacity工具分析PC......
  • Linux 下的项目开发:从入门到精通
    在Linux系统上开发项目是一种常见且高效的实践。Linux提供了强大的工具和环境,使得开发过程更加流畅。本文将带你了解如何在Linux下进行项目开发,从环境搭建到代码管理,再到最终的部署。一、环境搭建1.1安装Linux发行版首先,你需要一个Linux系统。有许多流行的发行版......
  • gitee上传项目
    1、首先保证电脑内有git这里最好按照正确的教程全装和配置;2、在gitee上新建仓库;建好仓库后,应该是这个样子,为空。若是含有readme文件,在后续上传项目时可以用覆盖的方式。3、上传项目找到要上传的项目,用gitbash打开;gitinit在这里若是git按照正确的方式安装和配置,在......