首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏RTSP/RTMP直播相关

    Android平台RTSP|RTMP播放器(SmartPlayer)集成必读

    ​技术背景好多开发者拿到大牛直播SDK的Android平台RTSP、RTMP播放模块,基本上不看说明,测试后,就直接集成到自己系统了。 从高效率的角度,磨刀不误砍柴工,在模块集成之前,还是希望开发者能了解播放器集成的一些前置条件,少走弯路,尽快完成RTSP、RTMP低延迟播放能力构建。 本文不关注接口集成调用细节,主要介绍下,播放器集成的一些前置条件和注意事项。 直播播放器Demo工程源码SmartPlayerV2\app\src\main\jniLibssmartavengine.jar和libSmartPlayer.soSmartPlayerV2\app\src :name="android.permission.WRITE_EXTERNAL_STORAGE" ></uses-permission><uses-permission android:name="android.permission.INTERNET

    1.5K10编辑于 2024-09-05
  • 来自专栏RTSP/RTMP直播相关

    Android平台RTSP|RTMP直播播放器技术接入说明

    ​摘要本文详细介绍了在 Android 平台上集成 RTSP 和 RTMP 直播播放模块的技术背景、系统要求、准备工作、接口设计、功能支持以及接口调用流程。 " /><uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />3. 初始化接口 SmartPlayerOpen:初始化播放器,设置上下文信息,返回播放实例句柄。 SetSmartPlayerEventCallbackV2:设置事件回调接口,用于接收播放器的状态信息。 2. RTMP 增强:支持 Enhanced RTMP。 录像功能:支持扩展录像功能。 系统兼容:支持 Android 5.1 及以上版本。 六、接口调用详解1.

    1.4K20编辑于 2025-03-02
  • 来自专栏RTSP/RTMP直播相关

    Android平台RTSP|RTMP直播播放器技术接入说明

    无需赘述,全自研内核,行业内一致认可的跨平台RTSP、RTMP直播播放器。本文以Android平台为例,介绍下如何集成RTSP、RTMP播放模块。 :name="android.permission.WRITE_EXTERNAL_STORAGE" > </uses-permission> <uses-permission android:name= "android.permission.INTERNET" > </uses-permission> <uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS 接口调用详解 本文以大牛直播SDK Android平台SmartPlayerV2为例,播放之前,设置初始化参数配置(软解还是硬解、buffer time等)和需要播放的RTSP或RTMP URL,点开始播放即可 ; import android.util.Log; import android.view.Surface; import android.view.SurfaceView; import android.view.View

    1.1K10编辑于 2024-07-25
  • 来自专栏RTSP/RTMP直播相关

    Android平台RTMP|RTSP直播播放器功能进阶探讨

    我们需要怎样的直播播放器?很多开发者在跟我聊天的时候,经常问我,为什么一个RTMP或RTSP播放器,你们需要设计那么多的接口,真的有必要吗? 带着这样的疑惑,我们今天聊聊Android平台RTMP、RTSP播放器常规功能,如软硬解码设置、实时音量调节、实时快照、实时录像、视频view翻转和旋转、画面填充模式设定、解码后YUV、RGB数据回调等 :图片延迟延迟延迟RTMP或RTSP直播播放器,特别是在一些交互场景下,对延迟要求近乎苛刻,所以,毫秒级的延迟,是一个直播播放器聊下去的基础,200-400ms的整体时延,是大家比较期望的,是的,你没看错 ,RTMP的也可以做到极低延迟。 或RTSP播放器,还需要支持的客制化功能有支持回调H.264/H.265/AAC数据,或回到解码后的YUV或RGB数据,设置播放缓冲、设置快速播放、设置音频输出类型等,一个通用的RTSP、RTMP播放器

    1.4K20编辑于 2023-08-26
  • 来自专栏RTSP/RTMP直播相关

    Android平台RTSP|RTMP播放器之视音频效果设置

    ​RTSP|RTMP播放器模块是大牛直播SDK的SmartMediaKit下非常优异的子产品,功能丰富、性能优异,毫秒级超低延迟,支持Windows、Linux(x86_64|aarch64架构)、Android 平台的SmartPlayer主要设计的功能如下:音频:AAC/Speex(RTMP)/PCMA/PCMU;视频:H.264、H.265;播放协议:RTSP|RTMP;支持纯音频、纯视频、音视频播放;支持多实例播放 ;支持扩展录像功能; 支持Android 5.1及以上版本。 一个好的RTMP或RTSP播放器,不仅是需要功能完善,还需要有非常优异的性能,特别是多实例播放,资源占有也是考量的一个重要因素,其次,直播特别是和操控相关的场景,都需要极致的低延迟才行,真是应了那句话, 做播放器容易,做个好的播放器,真的太难了!

    90010编辑于 2024-09-05
  • 来自专栏RTSP/RTMP直播相关

    庖丁解牛之-Android平台RTSP|RTMP播放器设计

    ​ 背景 我们在做Android平台RTSP或者RTMP播放器开发的时候,需要注意的点非常多,以下,以大牛直播SDK(官方)的接口为例,大概介绍下相关接口设计: 接口设计 1. 网络状态回调 一个好的播放器,好的状态回调必不可少,比如网络连通状态、快照、录像状态、当前下载速度等实时反馈,可以让上层开发者更好的掌控播放端状态,给用户更好的播放体验。 拉流回调编码后的数据(配合转发模块使用) 拉流回调编码后的数据,主要是为了配合转发模块使用,比如拉取rtsp流数据,直接转RTMP推送到RTMP服务。 平台RTSP、RTMP播放器接口设计需要参考的点,对于大多数开发者来说,不一定需要实现上述所有部分,只要按照产品诉求,实现其中的40%就足够满足特定场景使用了。 一个好的播放器,特别是要满足低延迟稳定的播放(毫秒级延迟),需要注意的点远不止如此,感兴趣的开发者,可以参考blog其他文章。 ​

    75040发布于 2021-11-18
  • 来自专栏RTSP/RTMP直播相关

    Android平台RTMP|RTSP播放器如何回调YUV或RGB数据?

    ​技术选型我们知道,Android平台一般RTMP|RTSP播放器通常不直接提供回调YUV或RGB数据的功能。 你可以通过JNI在Android的Java层调用C/C++层的FFmpeg库来解码RTSP流,并获取YUV或RGB数据。步骤:将FFmpeg库集成到你的Android项目中。 3. 使用第三方RTMP|RTSP播放器直接回调数据以大牛直播SDK的RTMP|RTSP播放模块为例,我们是可以直接设置YUV或RGB数据回调,并提供相关调用示例:btnStartStopPlayback.setOnClickListener static final int NT_FRAME_FORMAT_ABGR = 2; // public static final int NT_FRAME_FORMAT_I420 = 3;

    66210编辑于 2024-09-12
  • 来自专栏RTSP/RTMP直播相关

    如何在Android中实现低延迟的多实例RTSP|RTMP播放器

    尤其是在 Android 上开发高性能、低延迟的多实例 RTSP|RTMP 播放器时,涉及到资源管理、线程同步和回调事件处理等多个层面的考虑。 项目背景和需求本项目的目标是实现一个支持多个 RTSP|RTMP流播放的 Android 播放器,用户可以通过不同的界面组件(如按钮和 SurfaceView)控制多个 RTSP|RTMP播放流的启动、 播放器需要具备以下特点: 多实例管理:能够同时管理多个 RTSP|RTMP播放器实例,确保每个实例的生命周期独立。 低延迟播放:优化播放器的启动时间和播放延迟。 String param4, Object param5);}2.2 LibPlayerWrapper.javaLibPlayerWrapper 是 RTSP|RTMP播放器的核心包装类,负责管理播放器的初始化 总结与展望通过将 LibPlayerWrapper 设计为一个独立的播放器实例包装类,结合大牛直播SDK的JNI层提供的底层播放控制接口,我们能够实现一个功能完备的多实例 RTSP|RTMP播放器

    1.2K10编辑于 2025-04-24
  • 来自专栏RTSP/RTMP直播相关

    RTMP播放器开发填坑之道

    好多开发者提到,在目前开源播放器如此泛滥的情况下,为什么还需要做自研框架的RTMP播放器,自研和开源播放器,到底好在哪些方面?以下大概聊聊我们的一点经验,感兴趣的,可以关注 github: 1. 低延迟:大多数RTMP的播放都面向直播场景,如果延迟过大,严重影响体验,所以,低延迟是衡量一个好的RTMP播放器非常重要的指标,目前大牛直播SDK的RTMP直播播放延迟比开源播放器更优异(大牛直播SDK ; 备注:如果是超低延迟模式下,可以0 buffer,不做音视频同步: 3. 支持多实例:大牛直播SDK提供的RTMP直播播放SDK支持在设备性能允许的情况下,支持多实例播放RTMP流数据,大多开源播放器对多实例支持不太友好; 除了常规的多实例外,比如大屏监控场景下,尽管我们CPU D3D检测:一般来说市面上的大多Windows都支持D3D,有些小众化的,只支持GDI模式绘制,所以为了更好的兼容性,这个接口非常必要; 15.

    2.8K30发布于 2021-03-15
  • 来自专栏EasyNVR

    网页可以播放RTMP视频流?支持RTMP的网页播放器

    我们知道多数监控摄像头都是支持RTMP协议的,当然公安部的摄像头是支持GB28181协议的,这个我们在本文不做过多赘述,我们来探讨一下网页播放RTMP视频流的播放器。 ? ? 网页可以播放RTMP视频流吗?当然是可以的,但是对于PC端来说,网页播放RTMP流媒体视频流将会承受更多的服务器压力,满足网页播放RTMP视频流有哪些要求,下文我们一起来看一下。 1.便捷。 跨平台支持PC端、安卓端、iOS端等主流终端; 3.易用。无须安装任何自有插件、监控APP等,减少资源消耗; 4.无限制。对接自有流媒体服务器平台,不限制观看人数。 本文已经为大家介绍完毕啦,结论就是网页是能够播放RTMP视频流的,如果想体验网页播放RTMP视频流的流媒体服务器或者播放器,可以继续关注本栏目。

    8.2K20发布于 2020-05-04
  • 来自专栏RTSP/RTMP直播相关

    Windows平台RTSP播放器RTMP播放器几点设计细节讨论

    我们在实现Windows平台RTSP播放器RTMP播放器的时候,需要考虑的点很多,比如多实例设计、多绘制模式兼容、软硬解码支持、快照、RTSP下TCP-UDP自动切换等,以下就其中几个方面,做个大概的探讨 视频绘制模式 我们在实现Windows平台播放的时候,一般首选D3D,D3D不支持的情况下,考虑数据回上来,采用GDI模式,一般实现如下,先做D3D检测,以大牛直播SDK播放端为例(Github),调用 实时快照 实时快照功能不表,是一个好的RTSP播放器RTMP播放器必备的功能,实时快照是把解码后的yuv数据重新编码成png,所以有一定的CPU消耗,不建议过于频繁操作,具体实现如下: set_capture_image_call_back_(result, image_name); } } 后续,我们将针对RTSP和RTMP 播放器设计过程中的其他点,做更进一步的探讨,谢谢大家的关注。

    2K00发布于 2020-06-07
  • 来自专栏RTSP/RTMP直播相关

    Android平台实现Unity3D下RTMP推送

    像Unity3D下的RTMP或RTSP播放器一样,好多开发者苦于在Unity环境下,如何高效率低延迟的把数据采集并编码实时推送到流媒体服务器,实现Unity场景下的低延迟推拉流方案。 Android平台Unity3D的RTSP或RTMP播放器,可以参考 https://cloud.tencent.com/developer/article/1800633 本文以Android平台为例 ,介绍下Unity环境下的Android平台RTMP推流,数据采集在Unity完成,数据编码推送,调用大牛直播SDK(官方)Android平台RTMP直播推送SDK原生库对外二次封装的接口,高效率的实现 RTMP推送。 下图系Android平台Unity环境下采集屏幕,编码推送到RTMP服务器,然后Windows平台播放器拉取RTMP流播放,为了方便看到延迟效果,特地在Android端的Unity窗口显示了当前时间,可以看到

    1.2K30发布于 2021-06-08
  • 来自专栏RTSP/RTMP直播相关

    Android平台RTSP|RTMP播放器技术实践:基于大牛直播SDK的深度探索

    本文将基于大牛直播 SDK,详细讲解如何在 Android 平台开发一个高效的 RTSP|RTMP 播放器。 " /><uses-permission android:name="android.permission.INTERNET" /><uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS 多实例管理:通过封装播放器实例,支持多路视频同时播放。 ;import android.util.Log;import android.view.Surface;import android.view.SurfaceView;import android.view.View 在实际项目中,建议根据具体需求对播放器进行深度定制,以提升用户体验。

    1.2K10编辑于 2025-04-25
  • 来自专栏RTSP/RTMP直播相关

    RTMP播放器延迟最低可以做到多少?

    ​技术背景RTMP播放器的延迟可以受到多种因素的影响,包括网络状况、推流设置、播放器配置以及CDN分发等。因此,RTMP播放器的延迟并不是一个固定的数值,而是可以在一定范围内变化的。 正常情况下,网上大多看到的,针对RTMP播放器的延迟在2秒到3秒左右。这是基于RTMP协议本身的特性和一般的推流、播放设置所得出的结论。 然而,当网络状况不佳、推流设置不当或播放器配置不合理时,延迟可能会增加。具体来说,RTMP播放器的延迟可能受到以下因素的影响:网络状况:网络延迟和丢包是影响RTMP播放器延迟的重要因素。 此外,由于视频数据的处理和传输需要一定的时间,因此即使在最理想的情况下,RTMP播放器的延迟也会存在一定的最小值。综上所述,RTMP播放器的延迟可以控制在一定范围内,但具体数值会受到多种因素的影响。 所以,我们可以有底气的说,在没测试过大牛直播SDK的SmartPlayer RTMP播放器之前,你甚至不相信行业内,RTMP播放器延迟可以稳定的做到毫秒级。

    1.4K10编辑于 2024-09-08
  • 来自专栏RTSP/RTMP直播相关

    Android平台RTSP|RTMP播放器高效率如何回调YUV或RGB数据?

    ​技术背景我们在做Android平台RTSP、RTMP播放器的时候,经常遇到这样的技术诉求,开发者希望拿到播放器解码后的YUV或RGB数据,投递给视觉算法,做AI分析,本文以ffmpeg和大牛直播SDK 例如,将 MP4 格式转换为 AVI 格式,或者将 WAV 音频文件转换为 MP3 格式。支持几乎所有常见的音视频编码格式,如 H.264、H.265、AAC、MP3 等。 集成 FFmpeg将 FFmpeg 库集成到 Android 项目中,可以通过使用 Android NDK 来编译和链接 FFmpeg 库。 直播播放器SDK,功能齐全、高稳定、超低延迟,超低资源占用,适用于安防、教育、单兵指挥等行业。 平台RTSP、RTMP播放器回调yuv数据,意义非常重大,既保证了低延迟传输解码,又可以通过回调解码后数据,高效率的投递给AI算法,实现视觉处理。

    72800编辑于 2024-10-30
  • 来自专栏用户1692782的专栏

    手撕Rtmp协议细节(3)——Rtmp Body

    上一篇讲了RTMP数据包中关于Header的数据组织格式,不过一个完整的RTMP数据包除了Header之外,紧跟着的是RTMP Body,这一篇就继续来说一下RTMP Body的数据组织结构了。 AMF英文全称Action Message Format,是Adobe定义的一套用来进行数据打包的格式,主要的版本有AFM0和AMF3,不过发展至今,实际场景中AMF0一直用的比较多,AMF3相对少见, 那么AMF和RTMP Body又有什么关系呢,不才,RTMP数据包的序列化就是按照AMF的格式进行的。 这样,我们通过对RTMP Body的分析,也熟悉了AMF0的一些标准,当然还有其他的一些类型,朋友有需要可以自行学习,举一反三了,Adobe关于AMF0和AMF3的官方文档放在下方,各位自取哈。 AMF3:https://www.adobe.com/content/dam/acom/en/devnet/pdf/amf-file-format-spec.pdf AMF0:https://wwwimages2

    3.4K40发布于 2020-05-20
  • 来自专栏Hongten

    android开发_mp3_player音乐播放器

    新建项目: 1 New Android Project-> 2 Project name:androidPlayer 3 Build Target:Android 2.2 4 Application name > 2 <manifest xmlns:android="http://schemas.android.com/apk/res/android" 3 package="cn.itcast.audio </string> 4 <string name="app_name">音乐播放器</string> 5 <string name="filename">文件名称</string> > 2 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 3 android:orientation private Button btn_stop; 28 /** 得到文件名称 */ 29 private String filename; 30 /** 定义一个播放器对象

    1.6K30发布于 2018-09-13
  • 来自专栏RTSP/RTMP直播相关

    RTSP播放器RTMP播放器常用Event事件回调设计

    很多开发者在开发RTSP或RTMP播放器的时候,不晓得哪些event回调事件是有意义的,针对此,我们以大牛直播SDK(github)的Android平台RTSP/RTMP直播播放端为例,简单介绍下常用的 视频宽高信息回调:用于上层显示回调的分辨率信息; 3. 快速切换url:如播放过程中,切换其他url时,分辨率发生变化,给到回调事件; 4. 录像状态:如开始录像、录像完成; 5. 流实时下载回调:显示播放rtsp或rtmp流时,实时流量,注意,这块最好是可设置回调时间间隔,防止不必要的资源消耗; 8. RTSP错误状态:如401鉴权不通过。 以下接口定义可供参考: Android 播放端 SDK Event 回调说明事件 ID事件描述EVENT_DANIULIVE_ERC_PLAYER_STARTED开始播放EVENT_DANIULIVE_ERC_PLAYER_CONNECTING 返回包含录像 路径在内的录像文件 名)EVENT_DANIULIVE_ERC_PLAYER_ONE_RECORDER_FILE_FINISHED已生成一个录像文件 (param3 返回包含录像 路径在内的录像文件

    1.4K22发布于 2020-10-15
  • Android如何直播RTMP

    通过搭载并赋能第三方架构完成强实时通讯RTMP/m3u8协议部署的军火库引流方案。 本文将展示如何引入基于强悍FFmpeg底层的开源大杀器Vitamio组件进行架构替换,不仅重装突破RTMP直播壁垒,同时降维平趟m3u8(HLS)、RTSP和MMS在泛版本Android设备上的兼容性苦海 降维打击工具:Vitamio库重置流媒体内核如果硬要在Android上依赖原生骨架强行运行RTMP(如通过挂载内核带Flash支持等旁派手段的WebView等去强制渲染),换来的无疑是极其恶劣的控制性与崩坏的用户交互体系 在极少初始防线核准通过之后:苹果防线下的重武器:HLS(m3u8协议)流全网最大的呼声。 Android开发在应对全异构和极速点播流平台搭建之时,盲目寄望于原生系统的兼容补丁无异是死路一条。

    12910编辑于 2026-04-28
  • 来自专栏RTSP/RTMP直播相关

    Android平台如何实现Unity3D下RTMP推送

    像Unity3D下的RTMP或RTSP播放器一样,好多开发者苦于在Unity环境下,如何高效率低延迟的把数据采集并编码实时推送到流媒体服务器,实现Unity场景下的低延迟推拉流方案。 本文以Android平台为例,介绍下Unity环境下的Android平台RTMP推流,数据采集在Unity完成,数据编码推送,调用大牛直播SDKAndroid平台RTMP直播推送SDK原生库对外二次封装的接口 ,高效率的实现RTMP推送。 下图系Android平台Unity环境下采集屏幕,编码推送到RTMP服务器,然后Windows平台播放器拉取RTMP流播放,为了方便看到延迟效果,特地在Android端的Unity窗口显示了当前时间,可以看到 = new AndroidJavaClass("com.unity3d.player.UnityPlayer"); java_obj_cur_activity_ = android_class.GetStatic

    1.5K20发布于 2021-06-08
领券