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

    Linux平台屏幕|摄像头采集并实现RTMP推送两种技术方案探究

    ​ 技术背景随着国产化操作系统的推进,市场对国产化操作系统下的生态构建,需求越来越迫切,特别是音视频这块,今天我们讨论的是如何在linux平台实现屏幕|摄像头采集,并推送至RTMP服务。 我们知道,Linux平台,如果需要采集摄像头,可使用V4L2相关接口,屏幕采集用X相关接口实现,如果是Wayland协议, 用PipeWire相关接口实现采集就好。 FFmpeg VS SmartPublisher今天我们探讨的是,两种技术选型下的linux平台同屏摄像头RTMP推送实现:FFmpeg技术方案在Linux平台上采集屏幕和摄像头内容,并将其推送到RTMP X11屏幕采集;支持部分V4L2摄像头设备采集;[屏幕/V4L2摄像头]支持帧率、关键帧间隔(GOP)、码率(bit-rate)设置;[V4L2摄像头]支持V4L2摄像头设备选择(设备文件名范围:[/dev ]支持基于libpulse接口采集本机PulseAudio服务音频;[预览]支持推送端实时预览;[对接服务器]支持自建标准RTMP服务器或CDN;支持断网自动重连、网络状态回调;屏幕和摄像头合成/多层合成

    63210编辑于 2024-09-06
  • 来自专栏RTMP推送

    Android平台如何采集摄像头数据并实现低延迟RTMP推送

    ​技术背景2015年,我们发布了第一版的Android平台RTMP摄像头|屏幕直播推送模块,几经迭代,功能强大、性能优异,在前些年几乎已经是业内延迟体验和口碑最好的RTMP模块了(毫秒级延迟,低延迟模式下 鉴于我们侧重于传统行业音视频直播方案,我们从以下几个维度,介绍下Android平台RTMP摄像头采集推送模块的使用场景。 远程监控家庭监控:将带有摄像头的 Android 设备放置在家中合适的位置,通过 RTMP 推流将摄像头采集到的视频数据传输到远程的服务器或手机端,用户可以随时随地通过网络查看家中的实时情况,保障家庭安全 医疗健康远程医疗诊断:医护人员可以使用 Android 设备的摄像头采集患者的病情症状、伤口等画面,通过 RTMP 推流将视频数据传输给远程的医生,医生根据实时画面进行诊断和指导,为患者提供及时的医疗服务 Camera2的采集优势在哪里呢?功能更强大更精细的控制:Camera2 提供了对摄像头更底层、更精细的控制能力。

    1.4K10编辑于 2024-11-20
  • 来自专栏韩曙亮的移动开发专栏

    【Android RTMP】Android Camera 视频数据采集预览 ( 视频采集相关概念 | 摄像头预览参数设置 | 摄像头预览数据回调接口 )

    文章目录 一、 Android 端数据采集涉及到的相关概念 二、 Camera 预览图像尺寸设置 三、 获取摄像头采集的数据格式 一、 Android 端数据采集涉及到的相关概念 ---- 1 . 为 Camera 设置最合适的像素值 parameters.setPreviewSize(mWidth, mHeight); } 三、 获取摄像头采集的数据格式 ---- 1 . PreviewCallback 回调接口的作用 : PreviewCallback 接口中定义了 onPreviewFrame 方法 , 该方法中的 byte[] data 参数就是摄像头采集的数据 ; 采集到的图像数据 : 这是摄像头采集的图像数据 , Android 中的 Camera 摄像头采集数据成功后 , 就会回调该 PreviewCallback 接口中的 onPreviewFrame 方法 // 设置 Camera 预览数据回调接口 mCameraHelper.setPreviewCallback(this); // .... /** * Camera 摄像头采集数据完毕

    2.1K10编辑于 2023-03-27
  • 来自专栏RTMP推送

    如何快速实现Windows平台屏幕摄像头采集并推送RTMP|轻量级RTSP服务能力?

    大牛直播SDK的RTMP推送|轻量级RTSP服务模块实现主要涉及到SDK的初始化、视频采集设置、音频采集设置、编码设置、推流设置以及实时预览和停止预览等功能:目前,以RTMP推送模块为例,目前我们主要设计支持以下功能 :音频编码:AAC/SPEEX;视频编码:H.264、H.265;推流协议:RTMP;[音视频]支持纯音频/纯视频/音视频推送;[屏幕/摄像头]支持帧率、关键帧间隔(GOP)、码率(bit-rate)设置 采集设置、启/停用Aero;[音频]采集麦克风;[音频]采集扬声器;[预览]支持推送端实时预览;支持实时静音、取消静音;[对接服务器]支持自建标准RTMP服务器或CDN;支持断网自动重连、网络状态回调; 视频采集设置数据源选择:支持从摄像头、屏幕或外部数据源采集视频数据。参数设置:包括帧率、分辨率、码率、关键帧间隔等。这些参数可以通过SDK接口单独设置,以满足不同的推流需求。 摄像头设置:支持摄像头选择、分辨率设置、帧率设置、水平/垂直翻转、旋转等。屏幕采集:支持全屏采集或部分区域采集,同时支持DXGI采集设置和启/停用Aero等功能。3.

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

    Linux|麒麟操作系统下实现屏幕|摄像头|声音采集

    背景随着国产操作系统的推进,传统行业对Linux平台的呼声和需求越来越大,之前几年,我们发布了Linux平台运营商级的RTSP转RTMP推送模块、RTMP推送模块和RTSP、RTMP播放模块,前段时间, 有开发者问我们,是不是可以在Linux平台实现轻量级RTSP服务,通过采集摄像头或者屏幕,在Linux平台实现类似于IPC的功能,便于第三方系统对接。 技术实现轻量级RTSP服务实际上前几天我们在做Linux模块的时候,已经实现了,只是没有在demo上加这块,原因很简单,这块诉求一方面比较少,另一方面,我们windows、Android和iOS平台都有相关的接口和 最大码率4000kbps push_api->SetVideoEncoderSpecialInt32Option(push_handle, "usage_type", 0); //0是摄像头编码 NT_PB_E_VIDEO_OPTION_CAMERA = 0x2, // 摄像头采集 NT_PB_E_VIDEO_OPTION_LAYER = 0x3, // 视频合并,

    3K20编辑于 2023-02-13
  • 来自专栏RTSP/RTMP直播相关

    基于RTMP实现Linux|麒麟操作系统下屏幕|系统声音采集推送

    在欧美,我们不时听到一些政府部门将采用Linux桌面办公:慕尼黑市政府用十年的时间,成功的“赶走”了微软;伯明翰市政府、法国国会、瑞士、挪威和南非政府部门也都采用了Linux桌面办公。 国产操作系统|LinuxRTMP同屏推送 在发布国产操作系统|Linux平台的RTMP直播推送SDK之前,大牛直播SDK(官方)的RTMP推送模块已稳定运行在Windows、Android和iOS平台几年了 相对Windows、Android和iOS平台,Linux在桌面采集等方面,资料非常少,数据采集可以采用调用XLib相关接口实现,本Demo实现的是Linux上实现桌面和系统声音采集,然后使用RTMP协议推出去的一个 同屏.png 总结 实际测试下来,以RTMP推送和RTMP播放为例,整体测试时延都在毫秒级,可满足像内网无纸化、教育同屏等场景需求。 LinuxRTMP推送接口,和Windows平台的相差无几,通用接口四个平台几乎一致,不存在集成难度。

    1.6K40发布于 2021-07-22
  • 来自专栏RTSP/RTMP直播相关

    大牛直播SDK跨平台RTMP直播推送模块技术设计和功能列表

    ​整体架构大牛直播SDK跨平台RTMP直播推送模块,始于2015年,支持Windows、Linux(x64_64架构|aarch64)、Android、iOS平台,支持采集推送摄像头、屏幕、麦克风、扬声器 Linux平台x64_64架构|aarch64架构RTMP直播推送SDK音频编码:AAC/SPEEX;视频编码:H.264;推流协议:RTMP;[音视频]支持纯音频/纯视频/音视频推送;支持X11屏幕采集 接口采集本机PulseAudio服务音频;[预览]支持推送端实时预览;[对接服务器]支持自建标准RTMP服务器或CDN;支持断网自动重连、网络状态回调;屏幕和摄像头合成/多层合成;支持窗口采集(一般不建议使用 SDK音频编码:AAC/SPEEX;视频编码:H.264、H.265;推流协议:RTMP;[音视频]支持纯音频/纯视频/音视频推送;[摄像头]支持采集过程中,前后摄像头实时切换;支持帧率、关键帧间隔(GOP iOS平台RTMP直播推送SDK音频编码:AAC;视频编码:H.264、H.265;推流协议:RTMP;[音视频]支持纯音频/纯视频/音视频推送;[摄像头]支持采集过程中,前后摄像头实时切换;支持帧率、

    87610编辑于 2024-07-24
  • 来自专栏C++

    iOS摄像头采集和编码

    设计思路 采集参数设置 开始/停止采集 编码参数设置和销毁 图像处理 完整例子代码 参考 设计思路 使用AVCaptureSession创建采集会话,获取图像数据后通过VideoToolBox进行编码。 采集参数设置 AVCaptureSession需要AVCaptureDeviceInput作为输入和AVCaptureVideoDataOutput接收输出数据(就是采集图像数据)。 采集参数设置 //采集参数设置 -(int)doCapturePrepare{ NSError* error; //获取摄像头设备对象 AVCaptureDevice * device position] == position) { device = dev; break; } } //设置摄像头帧率 dikeyking.github.io/2020/01/02/CVPixelBuffer%E8%A3%81%E5%89%AA%E6%97%8B%E8%BD%AC%E7%BC%A9%E6%94% 【免费】FFmpeg/WebRTC/RTMP

    1.3K20编辑于 2022-05-09
  • 来自专栏RTSP/RTMP直播相关

    RTMP推送端如何调整采集端音量

    好多开发者提到,有些Windows机器或Android手机采集麦克风的音频,过小或过大,一般过小居多,还有就是,混音的时候,希望背景音音量大小可实时调整,针对这种情况,大牛直播SDK(Github)做了如下的设计

    90900发布于 2020-06-15
  • 来自专栏RTMP推送

    跨平台音摄像头|屏幕推送选OBS还是SmartPublisher?

    Linux平台x64_64架构|aarch64架构RTMP直播推送SDK音频编码:AAC/SPEEX;视频编码:H.264;推流协议:RTMP;[音视频]支持纯音频/纯视频/音视频推送;支持X11屏幕采集 接口采集本机PulseAudio服务音频;[预览]支持推送端实时预览;[对接服务器]支持自建标准RTMP服务器或CDN;支持断网自动重连、网络状态回调;屏幕和摄像头合成/多层合成;支持窗口采集(一般不建议使用 )、码率(bit-rate)设置;支持RTMP推送 live|record模式设置;支持前置摄像头镜像设置;支持软编码、特定机型硬编码;支持横屏、竖屏推送;支持Android屏幕采集推送;支持自建标准RTMP iOS平台RTMP直播推送SDK音频编码:AAC;视频编码:H.264、H.265;推流协议:RTMP;[音视频]支持纯音频/纯视频/音视频推送;[摄像头]支持采集过程中,前后摄像头实时切换;支持帧率、 推流功能: RTMP 推流:提供超低延时的 RTMP 协议直播推流功能,并且 Windows、Linux、Android、iOS 支持 RTMP 扩展 H.265 推送,在保证推流质量的同时,能够有效降低带宽占用

    1.2K20编辑于 2024-10-18
  • 来自专栏海之滨云视频和流媒体技术

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

    NDK开发Android端RTMP直播推流程序 经过一番折腾,成功把RTMP直播推流代码,通过NDK交叉编译的方式,移植到了Android下,从而实现了Android端采集摄像头和麦克缝数据,然后进行 h264视频编码和aac音频编码,并发送到RTMP服务器,从而实现Android摄像头直播。 和其他平台一样,要实现采集摄像头推送直播流,需要实现以下几点 获取Android摄像头数据 对摄像头数据进行h264编码 编码后数据以RTMP协议封装数据并推送 下面分开来讲开发思路: Android端采集摄像头原始数据 关于Camera2接口获取摄像头数据,可以参考之前的文章“Android流媒体开发之路一:Camera2采集摄像头原始数据并手动预览”,不同的是,那篇文章里直接使用ImageReader的Surface 首先要生成一个OES SurfaceTexture,后面要把它传递给Camera2接口,用于接收摄像头画面,之后开始创建RTMP推流模块调用线程,并创建摄像头捕获模块,和渲染模块 ?

    2.6K60发布于 2018-05-11
  • 来自专栏RTSP/RTMP直播相关

    RTMP推流迈向专业级:跨平台SDK与OBS的深度对比与行业落地

    / Linux / Android / iOS / 嵌入式 等环境无缝运行 低延迟传输 → 弱网、长链路下是否依然能保持毫秒级响应 可深度定制 → 是否能灵活接入外部采集源、编码器及业务逻辑 模块化扩展 多源采集与混合推流:支持摄像头、屏幕、麦克风、扬声器等多路采集,可实现实时合成与多层叠加(水印、字幕等)。 扩展 H.265 数据类型:纯音频 / 纯视频 / 音视频推送 采集能力:摄像头 / 屏幕 / 麦克风 / 扬声器 画面控制:帧率、关键帧间隔(GOP)、码率可调 音频处理:降噪、自动增益控制 DXGI / Aero 控制 / 窗口采集 / 裁剪+码流推荐X11 采集系统屏幕采集推送—摄像头支持设备选择 / 分辨率 / 帧率设置 / 镜像 / 旋转V4L2 摄像头选择 / 分辨率 / 帧率 / 镜像 / 旋转前后摄像头实时切换 / 镜像前后摄像头实时切换 / 镜像音频采集麦克风+扬声器混音(WASAPI)ALSA / PulseAudio麦克风+扬声器混音麦克风采集预览能力支持实时预览支持实时预览支持实时预览支持实时预览硬编码支持特定机型硬编码

    55100编辑于 2025-08-11
  • 来自专栏RTSP服务器

    深入探讨后台摄像头|麦克风采集与轻量级RTSP服务|RTMP推流架构设计

    为了解决这个问题,我们需要构建一个基于前台服务(Foreground Service)的独立采集架构。 = null) { if (engine_.is_opened_camera()) sb.append("摄像头已开启;"); if (engine_.is_audio_record_running Notification.Builder(this) .setSmallIcon(R.mipmap.ic_launcher) .setContentTitle("摄像头采集前台服务 五、 核心实现四:RTSP Server 与多路分发系统不仅支持 RTMP 推流,还内置了一个轻量级的 RTSP Server。这意味着手机本身变成了一个 IPC(网络摄像机)。 功能全:同时支持 RTMP 推流、RTSP 服务端、水印叠加、软硬编码自动切换。 这套架构不仅适用于 Demo 演示,更是开发行车记录仪、远程协助、无人机图传等商业级产品的坚实基础。

    55741编辑于 2025-12-18
  • 来自专栏RTMP推送

    协同办公场景中的技术实践:跨平台音视频推流播放与信创环境适配方案

    大牛直播SDK基于多年协议栈积累与工程落地经验,在以下五个维度构建了高度可嵌入、可私有部署的协同音视频能力模块:核心能力模块能力说明对协同办公的价值体现 摄像头/屏幕推流支持桌面屏幕采集摄像头画面采集 ✅ 架构设计思路 终端采集层:桌面端通过摄像头或屏幕采集生成视频源;移动端可通过 App 采集上传; 推流与中转层:大牛推流SDK将音视频编码为 RTMP 格式推送至内网 RTMP 服务,支持私有流控与转发 架构组成模块模块描述推流 SDK支持摄像头 / 麦克风 / 桌面屏幕等采集来源,编码为 RTMP 或裸流推送内网 RTMP 服务轻量级嵌入式服务,可部署于任意服务器,支持流转发、多终端并发播放播放器 SDK UOS 桌面 + ARM终端屏幕采集 + RTMP分发 + 多平台播放本地编码推流,支持大屏/移动端多终端并发播放✅ 科研/高校远程报告答辩统信 Linux教师端摄像头推流 + 播放器嵌入低延迟互动演示 、信创平台兼容良好✅ 金融行业办公桌面通话系统麒麟桌面 + 私有视频服务器点对点 RTMP 推拉流可控部署、可审计、支持双向实时视频通信✅ 智慧园区多楼宇视频广播Linux中控平台 + 多RTMP节点本地采集推流

    47210编辑于 2025-07-25
  • 来自专栏全栈程序员必看

    ffmpeg采集摄像头数据_手机显示无法获取摄像头数据

    直接播放摄像头的数据 使用ffplay可以直接播放摄像头的数据,命令如下: ffplay -f dshow -i video="Integrated Camera" 如果设备名称正确的话,会直接打开本机的摄像头 编码为H.264,发布RTMP 下面这条命令,实现了:获取摄像头数据->编码为H.264->并发送至RTMP服务器。 屏幕录制(Windows平台下保存为本地文件或者发送实时流) Linux下使用FFmpeg进行屏幕录制相对比较方便,可以使用x11grab,使用如下的命令: ffmpeg -f x11grab -s 1600x900 crf 18 -f mpegts udp://localhost:1234 详细时使用方式可以参考这篇文章:DesktopStreaming With FFmpeg for Lower Latency Linux 编码为H.264,发布RTMP 原理同上,不再赘述。

    4.6K30编辑于 2022-11-04
  • 来自专栏RTMP推送

    Linux(含麒麟操作系统)如何实现多显示器屏幕采集录制

    在这样的背景下,我们实现了Linux平台下的以屏幕采集摄像头采集、麦克风扬声器采集为数据源的RTMP推送模块、轻量级RTSP服务模块,和RTMP播放器和RTSP播放器模块,并同时覆盖了x86-64架构和 技术实现xrandr本文我们要讨论的是,如何在Linux平台实现多显示器的屏幕采集录制。我们知道,Linux下,X Window Sysem支持多显示器的配置和显示器列表获取。 /纯视频/音视频推送;支持X11屏幕采集;支持部分V4L2摄像头设备采集;[屏幕/V4L2摄像头]支持帧率、关键帧间隔(GOP)、码率(bit-rate)设置;[V4L2摄像头]支持V4L2摄像头设备选择 接口的音频采集;[音频]支持基于libpulse接口采集本机PulseAudio服务音频;[预览]支持推送端实时预览;[对接服务器]支持自建标准RTMP服务器或CDN;支持断网自动重连、网络状态回调;屏幕和摄像头合成 RTMP推送调用示例以大牛直播SDK的Linux平台RTMP直播推送模块为例,本Demo实现的是Linux上实现桌面和系统声音采集,然后使用RTMP协议推出去的一个SDK. 集成调用非常简单。

    1K10编辑于 2024-09-26
  • 来自专栏RTMP推送

    SmartMediaKit 模块化音视频框架实战指南:场景链路 + 能力矩阵全解析

    推送模块(Push Stack) RTMP 推流 SDK 支持摄像头采集、屏幕采集、音视频编码、码率控制、断网续传、音视频同步。 推送 + CDN 发布适用场景:移动直播、执法记录、远程诊疗移动推送 链路组合:手机摄像头 / 屏幕 → [RTMP 推送 SDK] → CDN 节点(如腾讯云、阿里云) → 用户播放端推荐模块配置: 适用场景:无人机中继节点、边缘计算盒子、低空经济网关 链路组合:RTSP 摄像头 → [RTSP → RTMP / GB28181 模块] → 平台端(RTMP / 国标 SIP Server)推荐模块配置 推送 SDKAndroid / iOS / Windows–RTMP硬编 / 软编YUV 输入 / SEI 注入是(推送端录像)自动重连、码率控制支持屏幕/摄像头采集、音视频同步轻量级 RTSP Server 案例2:Android 移动终端采集 + 推送 + 录像 场景描述:用于远程运维、巡检、教学、新闻移动直播等场景,需边拍边推 + 实时录像 推荐组合: RTMP 推送模块(支持摄像头采集、屏幕录制)

    49610编辑于 2025-08-06
  • 来自专栏RTMP推送

    电脑共享同屏的几种方法分享

    使用成熟的屏幕采集软件使用大牛直播SDK的RTMP直播推送模块,或者轻量级RTSP服务模块,本文以RTMP直播推送为了。 大牛直播SDK跨平台RTMP直播推送模块,始于2015年,支持Windows、Linux(x64_64架构|aarch64)、Android、iOS平台,支持采集推送摄像头、屏幕、麦克风、扬声器、编码前 Windows平台RTMP直播推送模块功能列表音频编码:AAC/SPEEX;视频编码:H.264、H.265;推流协议:RTMP;[音视频]支持纯音频/纯视频/音视频推送;[屏幕/摄像头]支持帧率、关键帧间隔 180° 270°旋转;[屏幕]支持DXGI采集设置、启/停用Aero;[音频]采集麦克风;[音频]采集扬声器;[预览]支持推送端实时预览;支持实时静音、取消静音;[对接服务器]支持自建标准RTMP服务器或 CDN;支持断网自动重连、网络状态回调;屏幕和摄像头合成/多层合成;支持窗口采集(一般不建议使用);支持实时动态水印;支持实时快照;支持降噪处理、自动增益控制、VAD端点检测;支持扬声器和麦克风混音;支持外部编码前音视频数据对接

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

    Android平台Unity下如何通过WebCamTexture采集摄像头数据并推送至RTMP服务器或轻量级RTSP服务

    技术背景 我们在对接Unity下推送模块的时候,遇到这样的技术诉求,开发者希望在Android的Unity场景下,获取到前后摄像头的数据,并投递到RTMP服务器,实现低延迟的数据采集处理。 在此之前,我们已经有了非常成熟的RTMP推送模块,也实现了Android平台Unity环境下的Camera场景采集,针对这个技术需求,有两种解决方案: 1. 技术实现 本文以大牛直播SDK的Unity下WebCamTexture采集推送为例,audio的话,可以采集麦克风,或者通过audioclip采集unity场景的audio,video数据的话,可以采集 unity场景的camera,或者摄像头数据。 总结 Unity场景下采集摄像头数据并编码打包推送到RTMP服务器或轻量级RTSP服务,采集获取数据不麻烦,主要难点在于需要控制投递到原生模块的帧率,比如设置30帧,实际采集到的数据是50帧,需要均匀的处理数据投递

    1.3K10编辑于 2024-01-18
  • 来自专栏TSINGSEE青犀视频

    如何联合RTMP推流摄像头构建智慧消防方案?

    最近我们遇到了河北某消防行业视频监控需求,通过在消防车上安装多个摄像头,将实时采集的音视频画面回传到指挥台,便于指挥台对消防现场进行实时监控、指挥调度与信息交换。 根据此项目要求方案主要分有两部分:车载摄像头(前端采集)、流媒体服务器(控制台监控)。推荐方案架构如下: 1、设备层:消防车安装车载推流摄像头2-4路,采集车辆的状态数据。 2、通讯层:通过4G/5G路由设备将摄像头统一接入,实现各种传感数据的通信支持。 3、数据与服务器层:利用流媒体服务器接收前端设备的RTMP推流数据,实现大并发、主流品牌接入、转码、分发及存储等功能。

    60210发布于 2021-03-01
领券