首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏流媒体

    Android平台下RTMPDump的使用简介

    简介 RTMPDump是一个用来处理RTMP流媒体的工具包,是一个C++的开源工程。 而我们需要将Android平台下直接使用RTMPDump来进行RTMP推流,这里就涉及两个方便内容:第一,需要使用NDK对RTMPDump进行交叉编译。 第二,如何在Android平台下使用RTMPDump。 今天这篇文章主要是教会大家如何将RTMPDump移植到Android平台,让大家可以把代码跑起来看到直观的效果,至于具体RTMPDump的使用后面再详细介绍,当然网上也有很多教程,但第一步一般最容易把大家卡住 下载配置RTMPDump RTMPDump直接到官网下载 ? 1.png 我们直接下载最新的版本2.3 ? 2.png 源码在librtmp文件夹下。

    2.2K30发布于 2018-08-23
  • 来自专栏流媒体

    Android RTMP推流之MediaCodec硬编码二(RTMPDump推流)

    Android平台下RTMPDump的使用介绍了如何将RTMPDump移植到Android平台下,并读取解析flv文件进行推流。 有了上面两篇文章的基础后,接下了就是整合,在Android平台下使用MediaCodec进行硬编码,然后使用RTMPDump进行推流。 先来张效果图: ? 我们在Android平台下RTMPDump的使用这篇文章代码基础上修改,其实就是将推送文件流的方法publish_using_packet拆分成三个部分,新增上面声明的三个方法。 这篇文章主要让大家先整个流程跑起来,至于RTMP协议内容以及RTMPDump的源码我们后面再做介绍 结尾 大家可能发现整个过程涉及的代码很少,因为这个体系涉及内容很多,所以我进行了拆分,每一篇文章只讲一个技术点

    5.2K50发布于 2018-08-23
  • 来自专栏韩曙亮的移动开发专栏

    【Android RTMP】RTMPDumb 源码导入 Android Studio ( 交叉编译 | 配置 CMakeList.txt 构建脚本 )

    文章目录 安卓直播推流专栏博客总结 一、 RTMP 协议 二、 RTMP 协议使用 三、 RTMPDump 源码下载 四、 RTMPDump 源码交叉编译 五、 RTMPDump 源码导入 Android 库 : 该库是使用 C 语言开发的处理 RTMP 数据的开源工具包 ; 三、 RTMPDump 源码下载 ---- RTMPDump 下载 : ① 下载地址 : RTMPDump 可以在 RTMPDump 将源码导入 Android Studio 项目 : 这里不使用导入上上述函数库的方式 , 而是直接将源码导入 AS 项目中 ; ① 拷贝源码 : RTMPDump 的源码在 rtmpdump-2.3/librtmp 拷贝后的 Android Studio 工程 : rtmpdump-2.3/librtmp 拷贝到 src/main/cpp 目录下 ; 六、 Android Studio 配置 RTMPDump 源码 配置 RTMPDump 源码独立构建脚本 : 导入的 RTMPDump 是一个完整的项目 , 因此这里为 src/main/cpp/librtmp/ 下的 RTMPDump 源码单独配置一个 CMakeList.txt

    1.1K10编辑于 2023-03-27
  • 来自专栏韩曙亮的移动开发专栏

    【Android RTMP】RTMPDump 封装 RTMPPacket 数据包 ( 封装 SPS PPS 数据包 )

    Android 直播推流流程 : 手机采集视频 / 音频数据 , 视频数据使用 H.264 编码 , 音频数据使用 AAC 编码 , 最后将音视频数据都打包到 RTMP 数据包中 , 使用 RTMP 协议上传到 RTMP 服务器中 ;

    2.1K30编辑于 2023-03-27
  • 来自专栏Helloted

    在iOS上推流

    ### CURRENTPATH=`pwd` ARCHS="i386 x86_64 armv7 armv7s arm64" LIBRTMPREPO="git://git.ffmpeg.org/rtmpdump client. echo 'Clone librtmp git repository' # Remove the directory if already exist rm -rf "${SRCPATH}/rtmpdump " git clone ${LIBRTMPREPO} src/rtmpdump cd "${SRCPATH}/rtmpdump/librtmp" LIBRTMP_REPO="" for ARCH rm -rf ${SRCPATH}/rtmpdump echo "Done." 保存并且执行 .

    2.1K20编辑于 2022-06-07
  • 来自专栏韩曙亮的移动开发专栏

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

    数据排列 | Y 灰度数据拷贝 | U 色彩值数据拷贝 | V 饱和度数据拷贝 | 图像编码操作 ) ④ 将编码后的 H.264 格式的视频帧数据打包成 RTMP 数据包 : 【Android RTMP】RTMPDump 封装 RTMPPacket 数据包 ( 封装 SPS / PPS 数据包 ) 【Android RTMP】RTMPDump 封装 RTMPPacket 数据包 ( 关键帧数据格式 | 非关键帧数据格式 | x264 编码后的数据处理 | 封装 H.264 视频数据帧 ) ⑤ 将 RTMP 数据包发送到服务器端 : 【Android RTMP】RTMPDump 推流过程 ( 独立线程推流 | 创建推流器 应用 , 可以实现直播推流中功能 ; ② 推流端 : 直播推流端就是手机 , 手机端 Camera 采集 NV21 格式的图像数据 , 并使用 x264 将其编码为 H.264 格式 , 最后使用 RTMPDump

    5K10编辑于 2023-03-27
  • 来自专栏音视频开发技术

    FFmpeg开发环境构建

    因此需要安装第三方编码器x265 1.6 librtmp librtmp: RTMPDump Real-Time Messaging Protocol API。 librtmp又称rtmpdump,是用于处理RTMP流的工具。支持所有形式的RTMP,包括rtmp://, rtmpt://, rtmpe://, rtmpte://, 和rtmps://。 librtmp文档:http://rtmpdump.mplayerhq.hu/librtmp.3.html librtmp官网:http://rtmpdump.mplayerhq.hu/ 2. 在上一行命令运行快结束时,出现cmake配置信息编辑界面,将CMAKE_INSTALL_PREFIX的值改成/home/think make make install 2.6 librtmp 根据官网http://rtmpdump.mplayerhq.hu git clone git://git.ffmpeg.org/rtmpdump cd rtmpdump make SYS=posix make install prefix=/home/think 2.7

    5K50发布于 2019-04-02
  • 来自专栏韩曙亮的移动开发专栏

    【Android RTMP】RTMPDump 推流过程 ( 独立线程推流 | 创建推流器 | 初始化操作 | 设置推流地址 | 启用写出 | 连接 RTMP 服务器 | 发送 RTMP 数据包 )

    文章目录 一、 Java 层传入的 RTMP 推流地址处理 二、 RTMPDump 推流线程 三、 创建 RTMP 对象 四、 初始化 RTMP 对象 五、 设置 RTMP 推流地址 六、 启用 RTMP 写出功能 七、 连接 RTMP 服务器 八、 连接 RTMP 流 九、 发送 RTMP 数据包 十、 断开 RTMP 连接并释放资源 十一、 RTMPDump 推流代码 一、 Java 层传入的 RTMP , 使用完毕后及时释放 ; // 释放从 Java 层获取的字符串 // 释放局部引用 env->ReleaseStringUTFChars(path, pushPathFromJava); 二、 RTMPDump 推流结束, 关闭与 RTMP 服务器连接, 释放资源 if(rtmp){ RTMP_Close(rtmp); RTMP_Free(rtmp); } 十一、 RTMPDump 推流代码 - // 释放局部引用 env->ReleaseStringUTFChars(path, pushPathFromJava); } /** * 开始推流任务线程 * 主要是调用 RTMPDump

    3.7K20编辑于 2023-03-27
  • 来自专栏字节流动

    手写 Android 录屏直播

    获取屏幕数据很简单,Android 系统有提供对应的服务,难点在于传输数据到直播服务器,我们使用 RtmpDump 来传输 Rtmp 数据。 由于 RtmpDump 使用 C 语言实现,我们还需要用到 NDK 开发,单单用 Java 无法实现哈。 首先我们在项目的 cpp 文件中,把 Rtmpdump 的源代码导入,我们使用 rtmpdump 连接服务器,以及传输 Rtmp 数据,要知道目前手里的数据还是 h264 码流,是无法直接传输,需要封装成 使用第三方库 Rtmpdump 来实现推流到直播服务器,由于 Rtmpdump 的代码量不是很多,我们直接拷贝源代码到 Android 的 cpp 文件,如果需要用到 Ffmpeg 不能才用该种调用方式了 RtmpDump 的使用 ?

    2.4K20发布于 2021-06-09
  • 来自专栏性能优化

    RTMP协议

    RTMPDump RTMPDump 是一个用来处理 RTMP 流媒体的开源工具包。 它能够单独使用进行 RTMP 的通信,也可以集成到 FFmpeg 中通过 FFmpeg 接口来使用 RTMPDumpRTMPDump源码下载 交叉编译 在 Android 中可以直接借助 NDK 在 JNI 层调用 RTMPDump 来完成 RTMP 通信。但是首先必须得进行交叉编译。 RTMPDump 源码结构如下: 在根目录下提供了一个 Makefile 与一些 源文件。这里的源文件将会编译出一系列的可执行文件。 其他 类型 字节 说明 包长 由 AVC 序列头中定义 后续长度 数据 n H.264 数据 一般情况下,组装的 RTMPPacket(RTMPDump 中的结构体)为: 这里的 sps 与 pps

    2.2K02发布于 2020-11-24
  • 来自专栏python3

    python处理音频文件(mp3)

    with-libvo-aacenc --with-libvorbis--with-libvpx --with-opencore-amr --with-openjpeg --with-opus --with-rtmpdump -with-libvorbis --with-libvpx --with-opencore-amr --with-openjpeg --with-openssl --with-opus --with-rtmpdump

    2.2K10发布于 2020-01-03
  • 来自专栏曾大稳的博客

    Android集成libRtmp

    librtmp下载: http://rtmpdump.mplayerhq.hu/download/ 拷贝相关文件到cpp里面 cmake配置cmake_minimum_required(VERSION

    1.3K21发布于 2020-01-20
  • 来自专栏用户2442861的专栏

    实时消息传输协议 RTMP(Real Time Messaging Protocol)

    开源的命令行工具 rtmpdump 用于回放或者将整个 RTMP 流 (包括 Adobe 用于加密的 RTMPE) 保存到磁盘。 RTMPdump 可以运行在 Linux、Android、Solaris、MacOSX 以及大部分其他的 Unix 派生操作系统,当然也可以运行在微软 Windows。 RTMPdump 的一个分叉,没有包含 Adobe 声称违反了美国 DMCA 的 RTMPdump 代码,以 FLVstreamer 发布了。 2009 年十月,在美国以外的国家,MPlayer 网站 重新启动了 RTMPdump 的研发。现有版本大大改进了功能,并且使用了 C 语言重写,大大利用了 C 的优势。 RTMPdump 的开发者们也为其他一些开源项目 (诸如 MPlayer、FFmpeg、XBMC、cURL、VLC) 提供了 librtmp 的支持。

    3.1K10发布于 2018-09-20
  • 来自专栏用户1692782的专栏

    常用音视频开源框架

    live555官网:http://www.live555.com/ live555源代码下载:http://www.live555.com/liveMedia/public/ librtmp官网:http://rtmpdump.mplayerhq.hu / librtmp源代码下载: git clone git://git.ffmpeg.org/rtmpdump 抓屏 再说一个抓屏的开源框架openbroadcast,openbroadcast简称obs

    3K51发布于 2020-04-09
  • 来自专栏海之滨云视频和流媒体技术

    C++实现RTMP协议发送H.264编码及AAC编码的音视频,摄像头直播

    其实Adobe发布之前,RTMP协议就已经被破解的差不多了,现在也已经有比较完善的实现,比如:RTMPDump,它提供的是C语言的接口,这意味着可以很方便的在其他语言中调用。 librtmp 一、编译librtmp   下载rtmpdump的代码,你会发现,它是一个地道的linux项目,除了一个简单的Makefile,其他什么都没有。

    1.9K50发布于 2018-05-11
  • 来自专栏直播+

    C++实现RTMP协议发送H.264编码及AAC编码的直播软件开发音视频

    其实Adobe发布之前,RTMP协议就已经被破解的差不多了,现在也已经有比较完善的实现,比如:RTMPDump,它提供的是C语言的接口,这意味着可以很方便的在其他语言中调用。 流程如下列代码所示:(process_buf_queue_,即是上图中的DataBufferQueue) librtmp 一、编译librtmp   下载rtmpdump的代码,你会发现,它是一个地道的

    1.4K20发布于 2020-08-26
  • 来自专栏海之滨云视频和流媒体技术

    C++实现RTMP协议发送H.264编码及AAC编码的音视频,摄像头直播

    其实Adobe发布之前,RTMP协议就已经被破解的差不多了,现在也已经有比较完善的实现,比如:RTMPDump,它提供的是C语言的接口,这意味着可以很方便的在其他语言中调用。 流程如下列代码所示:(process_buf_queue_,即是上图中的DataBufferQueue) [lcxhcpza26.jpeg] librtmp 一、编译librtmp   下载rtmpdump

    2.2K50发布于 2018-06-21
  • 来自专栏流媒体人生

    crtmpserver流媒体服务器的介绍与搭建

    也可以使用像rtmpdump的软件将rtmp流录成文件。 3. 简单的配置修改 有时服务器会对某些端口做限制,这时就需要自己指定端口,如"80"端口。

    2.9K10发布于 2019-05-26
  • 来自专栏音视频直播技术专家

    RTMP播放流媒体过程

    其中比较著名的是 librtmp 库,它是 rtmpdump 工具的一部分。 如果我们想实现简单的音视频直接可以直接使用 librtmp库作为我们的流媒体传输库。

    1.8K20发布于 2020-04-02
  • 来自专栏韩曙亮的移动开发专栏

    【Android RTMP】RTMPDump 封装 RTMPPacket 数据包 ( 关键帧数据格式 | 非关键帧数据格式 | x264 编码后的数据处理 | 封装 H.264 视频数据帧 )

    协议中 关键帧 / 非关键帧 数据格式 说明 三、 判定 H.264 帧数据分隔符 四、 初始化 RTMPPacket 五、 设置包头数据 六、 设置 H.264 数据帧数据 七、 设置其它数据 八、 RTMPDump m_hasAbsTimestamp = 0; // 设置头类型, 随意设置一个 rtmpPacket->m_headerType = RTMP_PACKET_SIZE_MEDIUM; 八、 RTMPDump

    97910编辑于 2023-03-27
领券