- 浏览: 1477851 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (691)
- linux (207)
- shell (33)
- java (42)
- 其他 (22)
- javascript (33)
- cloud (16)
- python (33)
- c (48)
- sql (12)
- 工具 (6)
- 缓存 (16)
- ubuntu (7)
- perl (3)
- lua (2)
- 超级有用 (2)
- 服务器 (2)
- mac (22)
- nginx (34)
- php (2)
- 内核 (2)
- gdb (13)
- ICTCLAS (2)
- mac android (0)
- unix (1)
- android (1)
- vim (1)
- epoll (1)
- ios (21)
- mysql (3)
- systemtap (1)
- 算法 (2)
- 汇编 (2)
- arm (3)
- 我的数据结构 (8)
- websocket (12)
- hadoop (5)
- thrift (2)
- hbase (1)
- graphviz (1)
- redis (1)
- raspberry (2)
- qemu (31)
- opencv (4)
- socket (1)
- opengl (1)
- ibeacons (1)
- emacs (6)
- openstack (24)
- docker (1)
- webrtc (11)
- angularjs (2)
- neutron (23)
- jslinux (18)
- 网络 (13)
- tap (9)
- tensorflow (8)
- nlu (4)
- asm.js (5)
- sip (3)
- xl2tp (5)
- conda (1)
- emscripten (6)
- ffmpeg (10)
- srt (1)
- wasm (5)
- bert (3)
- kaldi (4)
- 知识图谱 (1)
最新评论
-
wahahachuang8:
我喜欢代码简洁易读,服务稳定的推送服务,前段时间研究了一下go ...
websocket的helloworld -
q114687576:
http://www.blue-zero.com/WebSoc ...
websocket的helloworld -
zhaoyanzimm:
感谢您的分享,给我提供了很大的帮助,在使用过程中发现了一个问题 ...
nginx的helloworld模块的helloworld -
haoningabc:
leebyte 写道太NB了,期待早日用上Killinux!么 ...
qemu+emacs+gdb调试内核 -
leebyte:
太NB了,期待早日用上Killinux!
qemu+emacs+gdb调试内核
假设我的服务器是centos7 192.168.139.117
分别设置
1.发送端
2.服务端
3.客户端
1.发送端:测试windows
声卡
控制面板-->硬件和声音-->声音-->管理音频设备-->录制-->中文的麦克风改成macfeng (英文就行)
ffmpeg -list_devices true -f dshow -i dummy
得到摄像头的名字和刚才的麦克风设备的名字
摄像头:"Built-in iSight"
麦克风:"macfeng (Cirrus Logic CS4206A ("
测试只要视频的
带音频的
2.服务端
服务端参考http://haoningabc.iteye.com/blog/2301124
注意配置mime.types 和nginx.conf
3.客户端
放在服务器上的客户端的代码
index.html
###########
######################
参考
http://blog.csdn.net/leixiaohua1020/article/details/12029543
https://trac.ffmpeg.org/wiki/DirectShow
https://trac.ffmpeg.org/wiki/Capture/Webcam
分别设置
1.发送端
2.服务端
3.客户端
1.发送端:测试windows
声卡
控制面板-->硬件和声音-->声音-->管理音频设备-->录制-->中文的麦克风改成macfeng (英文就行)
ffmpeg -list_devices true -f dshow -i dummy
C:\Users\Administrator\Desktop\ffmpeg\bin>ffmpeg -list_devices true -f dshow -i dummy ffmpeg version N-80101-gd970f7b Copyright (c) 2000-2016 the FFmpeg developers built with gcc 5.3.0 (GCC) configuration: --enable-gpl --enable-version3 --disable-w32threads --enable-nv enc --enable-avisynth --enable-bzlib --enable-fontconfig --enable-frei0r --enabl e-gnutls --enable-iconv --enable-libass --enable-libbluray --enable-libbs2b --en able-libcaca --enable-libfreetype --enable-libgme --enable-libgsm --enable-libil bc --enable-libmodplug --enable-libmfx --enable-libmp3lame --enable-libopencore- amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable- librtmp --enable-libschroedinger --enable-libsnappy --enable-libsoxr --enable-li bspeex --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvo -amrwbenc --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libweb p --enable-libx264 --enable-libx265 --enable-libxavs --enable-libxvid --enable-l ibzimg --enable-lzma --enable-decklink --enable-zlib libavutil 55. 24.100 / 55. 24.100 libavcodec 57. 43.100 / 57. 43.100 libavformat 57. 37.100 / 57. 37.100 libavdevice 57. 0.101 / 57. 0.101 libavfilter 6. 46.100 / 6. 46.100 libswscale 4. 1.100 / 4. 1.100 libswresample 2. 0.101 / 2. 0.101 libpostproc 54. 0.100 / 54. 0.100 [dshow @ 0000000000462400] DirectShow video devices (some may be both video and audio devices) [dshow @ 0000000000462400] "Built-in iSight" [dshow @ 0000000000462400] Alternative name "@device_pnp_\\?\usb#vid_05ac&pi d_8507&mi_00#6&c1e2697&0&0000#{65e8773d-8f56-11d0-a3b9-00a0c9223196}\global" [dshow @ 0000000000462400] DirectShow audio devices [dshow @ 0000000000462400] "macfeng (Cirrus Logic CS4206A (" [dshow @ 0000000000462400] Alternative name "@device_cm_{33D9A762-90C8-11D0- BD43-00A0C911CE86}\macfeng (Cirrus Logic CS4206A (" dummy: Immediate exit requested
得到摄像头的名字和刚才的麦克风设备的名字
摄像头:"Built-in iSight"
麦克风:"macfeng (Cirrus Logic CS4206A ("
测试只要视频的
ffmpeg -r 25 -f dshow -s 640x480 -i video="Built-in iSight" -vcodec libx264 -b 600k -ab 128k -f flv rtmp://192.168.139.117/hls/mystream
带音频的
ffmpeg -r 25 -f dshow -s 640x480 -i video="Built-in iSight":audio="macfeng (Cirrus Logic CS4206A (" -vcodec libx264 -b 60k -ab 128k -f flv rtmp://192.168.139.117/hls/mystream
2.服务端
服务端参考http://haoningabc.iteye.com/blog/2301124
注意配置mime.types 和nginx.conf
3.客户端
放在服务器上的客户端的代码
index.html
###########
<b>Play</b> | <a href="record.html">Record</a> <br/> <script type="text/javascript" src="/jwplayer/jwplayer.js"></script> <div id="container">Loading the player ...</div> <script type="text/javascript"> jwplayer("container").setup({ sources: [ { //file: "rtmp://192.168.139.117/myapp?carg=1/mystream?sarg=2" file: "rtmp://192.168.139.117/hls?carg=1/mystream?sarg=2" } ], image: "bg.jpg", autostart: false, width: 640, height: 480, primary: "flash" }); </script>
######################
参考
http://blog.csdn.net/leixiaohua1020/article/details/12029543
https://trac.ffmpeg.org/wiki/DirectShow
https://trac.ffmpeg.org/wiki/Capture/Webcam
发表评论
-
srt学习笔记零:srt总结帖
2020-05-09 14:50 6941。无服务的方式:udp, 2。srs作为服务端:rtmp推收 ... -
srt学习笔记七:使用265推rtmp
2020-05-08 20:56 732概念: 视频码率:视频码率就是数据传输时单位时间传送的数据位数 ... -
srt学习笔记六:srt-live-server
2020-04-30 18:45 1303除了srs,有个可以直接支持srt的sls srt-live ... -
srt学习笔记五:手写个srt的socket
2020-04-24 18:12 820参考:https://www.jianshu.com/p/39 ... -
srt学习笔记四:srs支持srt
2020-04-17 19:27 1841协议:rtmp. hls flv 264 265 ... -
ffmpeg使用srs推srt
2020-04-13 18:43 0相关内容参考 https://github.com/ossrs ... -
srt学习笔记三:ffmpeg使用srs推rtmp(桌面录制)
2020-04-09 20:06 959srs代码: git clone https://github ... -
srt学习笔记二:支持srt的ffmpeg
2020-04-06 02:38 1776注意:scl enable devtoolset-7 bash ... -
srt学习笔记一:srt的helloworld
2020-03-27 19:13 7921。无服务的方式:udp, 2。srs作为服务端:rtmp推收 ... -
xl2tp 备份
2019-09-24 16:25 6932019年9月24日更新: 注意,需要开启firewall ... -
sdl笔记
2019-01-31 17:19 733sdl教程教程 https://github.com/Twin ... -
tinyemu
2019-01-24 17:59 1433参考https://bellard.org/jslinux/t ... -
aws搭建xl2tp给iphone使用
2018-12-26 21:37 18922019年12月26日 可以参考原来的配置 https:// ... -
ios的safari使用自制ca证书测试webrtc
2018-08-20 13:31 2441这个需要注意 https://stackoverflow.c ... -
nginx push_upstream模块的websocket
2018-05-04 23:27 1221参考 https://www.rails365.net/art ... -
openresty聊天室的helloworld
2018-04-22 19:25 800openresty的websocket + redis的sub ... -
openresty websocket
2018-04-18 17:08 1520mac安装openresty brew install o ... -
nginx模块开发(三)upstream模块
2017-08-20 23:48 845使用nginx-1.13.4版本 三个文件ngx_http_ ... -
nginx模块开发(二) 使用gdb-dashboard调试
2017-08-11 18:47 2010gdb-dashboard或者 gdbgui 或者gdb自带 ... -
nginx模块开发(一)
2017-07-29 22:44 566决定重新整理nginx模块开发 helloworld con ...
相关推荐
用C#Winform写的GB28181监控项目,采用FFMpeg解码,推RTMP流,推流需要Nginx-RTMP配合,在我的另一个资源里有,可以实现稳定接收和解码推流播放,播放用FFPlay直接播放即可测试。因为是测试项目,只支持一路视频播放...
在这个场景中,我们使用FFmpeg从摄像头和麦克风采集原始数据,然后进行转码,最后通过RTMP协议将处理后的流推送到Nginx服务器。 1. **FFmpeg采集**: FFmpeg支持多种设备输入,包括摄像头(如V4L2、DShow等)和...
- `-i`: 指定输入源,这里是本地的摄像头和麦克风。 - `-vcodec libx264`: 视频编码器选择H.264。 - `-acodec libvo_aacenc`: 音频编码器选择AAC。 - `-preset:v ultrafast`: 编码速度设置为最快。 - `-tune:v ...
在Android中,使用JNI调用FFmpeg的avcodec_encode_video2和avcodec_encode_audio2函数,将摄像头和麦克风的原始数据编码为H.264(视频)和AAC(音频)流。 5. **构建RTMP包**:编码后的数据需要封装成RTMP包,这...
在本项目中,ffmpeg被用作视频采集和编码的库,负责将来自摄像头和麦克风的原始数据转化为适合网络传输的格式。 3. **rtmp**:Real-Time Messaging Protocol(实时消息传输协议)是一种应用层协议,常用于在线视频...
这通常通过调用手机或电脑的摄像头和麦克风来实现,源码中可能包含了相应的API接口调用。 2. **编码模块**:采集到的原始音视频数据需要进行编码处理,以便在网络上传输。常见的编码格式有H.264(视频)和AAC(音频...
这通常包括设置摄像头参数(如分辨率、帧率)、麦克风音量控制以及预览和录制功能。 2. 编码与推流:编码是将原始音视频数据转换为适合网络传输的格式,如H.264视频编码和AAC音频编码。开源库如FFmpeg可用来实现...
- 用户必须授予麦克风和摄像头访问权限才能进行直播,需要处理好权限请求。 9. **实时互动**: - **聊天室功能**:允许观众发送文字、表情等互动信息。 - **礼物打赏**:虚拟物品购买和赠送机制,增加用户参与度...
用于演示如何利用JavaCV进行摄像头录制、麦克风录音、音视频转码以及通过RTSP(Real Time Streaming Protocol)和RTMP(Real-Time Messaging Protocol)进行推流,从而实现简单的直播功能。以下是对这些关键概念的...
在Android系统中,通常通过Camera API和AudioRecord类来获取摄像头和麦克风的数据。Camera API允许开发者控制摄像头参数,捕获图像帧,而AudioRecord则用于录制音频。这两个API是Android多媒体框架的基础,使得...
10. **权限管理**:在Android上,访问摄像头和麦克风需要获取相应的运行时权限,开发者需要处理好权限申请流程,确保应用能在用户同意后正常工作。 综上所述,"StreamDemo.rar"可能是一个包含视频直播功能的Android...
服务器通常采用流媒体服务器软件,如FFmpeg、Wowza或Nginx-RTMP等。VideoServer的主要任务包括: 1. **连接管理**:建立并维护客户端之间的连接,确保视频和音频数据的稳定传输。 2. **流处理**:接收来自...
- **设备适配**:支持不同设备的摄像头和麦克风,以及各种屏幕尺寸和分辨率的适配。 - **网络优化**:通过ICE(Interactive Connectivity Establishment)策略,寻找最佳传输路径,优化网络状况差时的通信质量。 ...
8. **权限管理**:在移动设备上访问媒体库和使用摄像头、麦克风需要获取用户权限。开发者需了解Android的Manifest和iOS的Info.plist文件中的权限设置。 9. **离线缓存**:为了提供离线观看体验,应用可能需要实现...