`
z303729470
  • 浏览: 134460 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

vlc的应用之九:用vlc串流摄像头

    博客分类:
  • VLC
 
阅读更多
n就没有更新博客了,主要是Jeremiah最近对vlc研究的非常的少了,工作重点转移了,又增加了管理工作,让Jeremiah忙的晕头转向的。

    这篇博客是很久之前就想写的,今天终于提笔写了,心情还是比较爽的。废话不多说。

0. 环境搭建
Jeremiah这次主要是用的vlc-1.0.0(英文版)进行讲解。首先需要准备摄像头,Jeremiah用的是一个普通摄像头(以前钓MM用的,嘻嘻),驱动安装好后,在“我的电脑”中显示如下。


1. vlc播放摄像头
开启vlc-1.0.0,media->open capture device,进入Capture Device页面。这个也可以通过media->Advanced open file,选取此标签页。
video device name选择VIMICRO USB PC Camera (ZC0301PLH),如果没有,请先选择Refresh list刷新列表。
audio device name选择SoundMAX HD Audio,这个是Jeremiah的声卡。

之后可以勾选show more options,里面可是设置缓冲及看到MRL和Edit Options,这些信息都是很重要的。Advance Option按钮里面有一些详细设置,大家可以进去选择,其中video size是可以做调整的。下面会讲到。

之后点play,就可以播放了。

2. 用命令行开启vlc播放摄像头
命令行的最大好处就是,vlc命令后面的参数,就是我们在编程的时候调用libvlc_new的argv,将这些参数搞明白,我们就可以在编程的时候调用了。

开启cmd,切换到vlc目录下。

根据1中的MRL和Edit Options信息,设置vlc播放参数如下。
vlc dshow:// :dshow-vdev="VIMICRO USB PC Camera (ZC0301PLH)" :dshow-adev="SoundMAX HD Audio" :dshow-size=320*240

各个参数什么意思都是很明显的,如果不明白,就运行vlc -H,然后到vlc目录下面去找vlc-help.txt,里面是全部的参数的介绍。

3. 将vlc播放的摄像头信息存入文件中
播放成功之后,在达到我们的目的前,我们先做一个简单的验证工作,就是播放摄像头并存入文件。

根据以前stream到文件的参数,修改2的参数如下。
vlc dshow:// :dshow-vdev="VIMICRO USB PC Camera (ZC0301PLH)" :dshow-adev="SoundMAX HD udio" :dshow-size=320*240 :sout=#transcode{vcodec=h264,vb=800,scale=1,acodec=mp3,ab=128,channels=2,samplerate=44100}:std{access=file,mux=ts,dst=D:/01.ts}}

这里用到了转码,就是将摄像头的视频编码为h264,音频编码为MP3,然后封装为ts写入到d:/01.ts中。

这个不会显示摄像头,但是通过刷新d:/01.ts就会发现这个文件是在增大的,也就是有视频流在写入。

4. 将摄像头串流到网络中
根据3的参数做简单的修改就可以达到串流摄像头视频流到网络的目的了。修改3的参数如下。
vlc dshow:// :dshow-vdev="VIMICRO USB PC Camera (ZC0301PLH)" :dshow-adev="SoundMAX HD Audio" :dshow-size=320*240 :sout=#transcode{vcodec=h264,vb=800,scale=1,acodec=mp3,ab=128,channels=2,samplerate=44100}:duplicate{dst=display,dst=rtp{dst=127.0.0.1,mux=ts,port=1234}}

这里的duplicate大家应该都很熟悉了,因为在录像,vlm里面都讲过这个参数。参数的意思是,将摄像头的音视频流分别编码为MP3和h264之后封装为ts,然后通过rtp发送到127.0.0.1的1234端口上,同时显示出来。如果希望发送到其他网络地址或组播里面只需要改变127.0.0.1和1234为我们需要的地址和端口即可。

再开启一个vlc,播放这个ts over rtp流。
vlc rtp://@:1234 --rtp-caching=1500

成功后就可以看到了。切图如下:




左边的是摄像头的流服务,右边的是流的客户端,从下边的地址就能看的很清楚。

5. 遗留问题:
从图片可以看出,播放的视频颜色是不对的,是摄像头的问题还是vlc本身的问题还是参数设置的问题,现在不得而知,当然摄像头本身是没问题的,因为qq视频都很正常。希望谁研究出来告诉我一声。谢谢。
本文出自 “海狗哥的流媒体空间” 博客,请务必保留此出处http://jeremiah.blog.51cto.com/539865/245509
  • 大小: 42 KB
分享到:
评论

相关推荐

    基于安卓的vlc+rstp串流视频直播

    本项目是一个基于安卓的视频直播项目源码,编译安装到手机上后,在电脑上安装vlc播放器,在vlc播放器(媒体-打开串流)里面输入安卓客户端生成的rstp地址点击播放就可以串流你手机摄像头实时看到的东西。前提条件:...

    VLC单播串流到rtsp平台后通过机顶盒播放的配置说明

    本文将详细介绍如何使用VLC将普通USB摄像头的视频流传输到RTSP平台,并通过机顶盒播放的配置步骤。 一、USB摄像头对接VLC 首先,需要将USB摄像头连接到电脑,然后在VLC中选择“媒体-打开捕获设备”,在捕获模式中...

    VLC方式查看监控

    在“VLC方式查看监控”这个场景下,我们主要关注的是利用VLC来观看网络摄像头或者监控系统的视频流。 首先,VLC不仅能够播放本地存储的媒体文件,还能够接收并播放来自网络的实时视频流。这得益于其强大的流媒体...

    VLC播放RTSP流实例

    7. **客户端配置**: 在VLC中播放RTSP流,用户需要知道流的URL,并在“媒体”菜单中选择“打开网络串流”或使用快捷键`Ctrl+N`,输入URL即可。 8. **编码格式兼容性**: RTSP流中的视频和音频需要被编码,常见的编码...

    vlc软件播放rtmp串流

    VLC媒体播放器是一款强大的开源跨平台多媒体播放器,它支持多种格式的视频、音频文件以及网络串流。"rtmp串流"是Real-Time Messaging Protocol(实时消息传输协议)的简称,常用于在线视频直播和点播服务。VLC软件...

    VLC服务器转发海康实时流(RTSP)

    程序可配置多个海康摄像头地址,转发成本地IP地址的RTSP地址,使用VLC客户端可直接播放。 使用前,请修改配置文件中摄像头的地址,以及本机的IP地址。

    VLC media player视频播放器安卓APP支持串流rtsp

    支持串流:http,tsp,mms,rtsp 支持格式:.3gp,.asf, .wmv,.asf, .au,.avi,.divx,.flv,.mov,.mp4,.ogm, .ogg,.mkv, .mka,.ts, .mpg,.mpg, .mp3, .mp2,.nsc,.nsv,.nut,.ra, .ram, .rm, .rv , .rmbv,a52, dts, aac, ...

    rtspserver.rar_VLC串流_rtspserver-vlc_rtsputils_vlc_播放器

    通过C语言搭建的RTSP服务器源码,在linux中运行,客户端通过VLC播放器播放网络串流播放264格式的视频文件,附带详细搭建介绍文档。

    Java利用vlc实现播放在线视频

    这个库允许我们通过Java代码控制VLC播放器,并与之交互。安装完成后,你可以创建一个`VLCInstance`实例,这是播放视频的基础。 以下是一段简单的代码示例,展示了如何初始化VLC实例并加载在线视频URL: ```java ...

    基于labview的调用VLC视频播放

    1. **ActiveX控件**:ActiveX是一种技术,允许开发人员将各种组件(如VLC播放器)集成到应用程序中,特别是那些使用Visual Basic、LabVIEW等支持ActiveX的编程环境中。在LabVIEW中,可以通过添加ActiveX服务器节点来...

    VLC播放不了H.264码流

    1. **H.264编码**:H.264,也称为MPEG-4 Part 10或AVC(Advanced Video Coding),是一种高效的视频压缩标准,广泛应用于网络视频传输、数字电视和监控摄像头等领域。它能以较低的带宽提供高质量的视频流。 2. **...

    vlc万能流媒体播放器支持网络URL播放

    在使用VLC播放网络流媒体时,用户界面友好且操作简便。只需在打开的媒体菜单中选择“打开网络串流”,然后输入URL或者粘贴从网页上获取的流媒体链接,VLC就能自动识别并开始播放。同时,VLC提供了丰富的自定义选项,...

    VLC Media Player for Unity.unitypackage

    VLC视频监控摄像头串流

    VLC直播和推流

    压缩包中的"VLC直播和推流所有代码"文件可能包含了实际的代码示例,用于演示如何使用编程语言(如Python、Java或C#)与VLC的libvlc接口交互,实现自动化直播和推流。这些代码通常包括设置参数、创建播放器实例、启动...

    VLC直播设置

    "VLC直播设置" 在本文中,我们将介绍如何使用 VLC 实现直播视频,并详细介绍 VLC 的配置过程。 VLC 简介 VLC(Videolan)是一款免费、开源、跨平台的...VLC 的强大功能和跨平台支持,使其成为直播视频的不二之选。

    vlc创建UDP组播

    组播IP地址通常在224.0.0.0到239.255.255.255这个范围内,例如,你可以使用224.0.0.1作为测试用的组播地址。 7. **设置组播参数**:你可以根据需要配置其他参数,比如端口号(默认是8000),以及是否启用转码。如果...

    VLC的HTTP服务器设置

    其中,`IP地址`是运行VLC的计算机的IP,`端口号`是你希望VLC监听的任意未使用的端口,`路径`是可选的,用于区分不同的流。 3. **添加媒体源**: 点击“播放”按钮后,VLC会开始监听指定的端口。接下来,你需要指定...

    android VLC可实现rtsp播放 录屏 截图等功能

    VLC是一款著名的开源媒体播放器,它在Android平台上同样有着广泛的应用。在Android开发中,VLC库(通常称为VLC SDK)可以帮助开发者实现多种功能,如RTSP流媒体播放、屏幕录制和截图等。以下将详细介绍这些功能的...

    VLC + 具体步骤.rar

    在这个“VLC + 具体步骤.rar”压缩包中,提供了使用VLC实现摄像头串流的具体操作指南,这对于那些在设置摄像头画面时遇到困难的用户来说是一份非常实用的资源。 首先,我们来看压缩包中的"vlc-3.0.8-win64.exe",这...

Global site tag (gtag.js) - Google Analytics