之前做过开源videocore的推流改进:1)加入了美颜滤镜; 2) 加入了librtmp替换原来过于简单的rtmpclient;

后来听朋友说,在videocore上面进行opengl修改,加入新的滤镜比较麻烦,IOS的滤镜最好的要算GPUImage了。

自己就决定将多滤镜开源GPUImage来实现rtmp的直播推流;

实现的方案:

1,GPUImageMovieWriter进行rgba视频数据的输出。

通过重写GPUImageMovieWriter,实现一个代理协议pixelBufferdelegate,讲gpu滤镜编码后的RGBA视频数据进行输出;

self.movieWriter = [[GPUImageMovieWriterEx alloc] initWithMovieURL:movieURL size:CGSizeMake(360.0, 640.0)];

self.movieWriter.encodingLiveVideo = YES;

self.movieWriter.pixelBufferdelegate = self;

2,初始化编码和rtmp模块

self.rtmpSession = [[VCRtmpSession alloc] initWithVideoSize:VIDEO_SIZE_CIF fps:25 bitrate:BITRATE_CIF];

[self.rtmpSession startRtmpSession:@"rtmp://192.168.1.104/live/123456"];

3,设置想要的GPUImage滤镜

self.filter = [[GPUImageBeautifyFilter alloc] init];

[self.videoCamera addTarget:self.filter];

现在就可以使用基于GPUImage的RTMP推流了,

github代码地址: https://github.com/runner365/GPUImageRtmpPush

基于GPUImage的多滤镜rtmp直播推流相关推荐

  1. 魔坊APP项目-26-直播、docker安装OSSRS流媒体直播服务器、基于APICloud的acLive直播推流模块实现RTMP直播推流、直播流管理

    一.docker安装OSSRS流媒体直播服务器 在外界开发中, 如果要实现直播功能.常用的方式有: 1. 通过第三方接口来实现.可以申请阿里云,腾讯云,网易云,七牛云的直播接口,根据文档,下载集成SD ...

  2. windows下ffmpeg+nginx-rtmp环境搭建及opencv+ffmpeg+python实现拉流和rtmp直播推流

    由于工作需要最近在研究rtsp拉流与直播推流的问题,目前先在我本机上进行了实验,本博客记录学习的内容,包含windows下ffmpeg.nginx-rtmp环境搭建及opencv+ffmpeg+pyt ...

  3. 用安卓RTMP直播推流进行音频侦听时,出现播放几秒后就无法播放问题的解决方法

    Real Time Messaging Protocol(RTMP)即实时消息传输协议,是 Adobe 公司开发的一个基于 TCP 的应用层协议,目前国内的视频云服务都是以 RTMP 为主要推流协议. ...

  4. 【Android RTMP】RTMP 直播推流阶段总结 ( 服务器端搭建 | Android 手机端编码推流 | 电脑端观看直播 | 服务器状态查看 )

    文章目录 安卓直播推流专栏博客总结 一. 服务器搭建 二. 手机端推流 三. 电脑端观看直播 四. RTMP 服务器端状态 安卓直播推流专栏博客总结 Android RTMP 直播推流技术专栏 : 0 ...

  5. 【Android RTMP】RTMP 直播推流服务器搭建 ( Ubuntu 18.04.4 虚拟机 )

    文章目录 安卓直播推流专栏博客总结 一. Android RTMP 直播推流简介 二. Nginx.RTMP Module 编译环境源码准备 三. pcre.OpenSSL.zlib 函数库安装 四. ...

  6. 本系列介绍了rtmp直播推流全过程(已完结)

    本系列介绍了rtmp直播推流全过程 完整项目地址 (已完结) 以下文章是针对每一个情况,介绍音视频相关知识,以及实现的原理,总共分五章: 第一章:直播推流全过程:视频数据源之YUV(1) RGB或YU ...

  7. Android流媒体开发之路二:NDK C++开发Android端RTMP直播推流程序

    经过一番折腾,成功把RTMP直播推流代码,通过NDK交叉编译的方式,移植到了Android下,从而实现了Android端采集摄像头和麦克缝数据,然后进行h264视频编码和aac音频编码,并发送到RTM ...

  8. rtmp直播推流 app-livestream v0.0.1.002 发布

    rtmp直播推流 app-livestream 使用说明书 2020-07-14  Win64位版本v0.0.1.002发布    Author: hybase@qq.com  QQ: 2320768 ...

  9. 【Android RTMP】RTMP 直播推流 ( 阿里云服务器购买 | 远程服务器控制 | 搭建 RTMP 服务器 | 服务器配置 | 推流软件配置 | 直播软件配置 | 推流直播效果展示 )

    文章目录 安卓直播推流专栏博客总结 一. 阿里云服务器购买 二. 远程服务器控制软件 三. 配置 Ubuntu 服务器 1 . 更新 apt 源 2 . 安装 pcre.OpenSSL.zlib 库 ...

最新文章

  1. 【开源方案共享】VDO-SLAM:基于视觉的动态SLAM感知系统
  2. 【Micropython】发光二极管手工制作炫彩跑马灯
  3. aac fhg lc哪一个模式_电流模式变换器输出LC滤波器对反馈环影响
  4. UVA - 1587 Box
  5. 映射技术之储存器映射
  6. python2 unicode编码_如何优雅解决python2.x的unicode编码优雅输出?
  7. linux下网络监听与发送数据包的方法(即libpcap、libnet两种类库的使用方法)
  8. 一步一步学Silverlight 2系列(2):基本控件_转载
  9. 哔哩哔哩---WPF入门基础教程(合集)
  10. (笔记)《游戏脚本高级编程》——第1章 脚本编程概论
  11. 多元:复相关系数和偏相关系数
  12. linux monitor工具,5 款 Ubuntu 系统监控工具
  13. Matlab Coder杂记
  14. php短网址还原,短网址还原 API 接口调用请求
  15. 微信每日早安推送 Windows版
  16. 【计算机网络】 网关:即“默认网关”的作用, 以及 默认路由的作用(只有路由器才有默认路由)
  17. java/php/net/python“最终幻想14”游戏时装图鉴网站设计与制作
  18. outlook邮件撤回操作
  19. Linux下Mysql数据库
  20. 2022-05-14 Unity核心7——2D动画

热门文章

  1. 权限认证php,2016年Linux认证基础知识:php做权限管理
  2. php 换台电脑 表单部分_PHP更新购物车数量(表单部分/PHP处理部分)
  3. 一个类的实例是另一个类的属性python_Python中的类属性和实例属性引发的一个坑...
  4. linux下eclipse的使用教程,linux下Eclipse的使用方法总结.doc
  5. php实现变声,PHP:用UTF-8字符串中最接近的7位ASCII等效替换变音符号
  6. GitHub上的这本开源算法书火爆了
  7. 皮一皮:这是人干的事?
  8. 知乎高赞:字节总监的开发手记!
  9. suse 安装mysql5.6_SuSE11安装MySQL5.6.40:RPM安装方式
  10. java数据通道抽象为流_【java】IO流