自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

爱写代码的自由人

分享我的开发经验和流媒体方面的知识

  • 博客(8)
  • 资源 (49)
  • 收藏
  • 关注

原创 查看视频文件格式信息的工具--MediaInfo

MediaInfo是一个用来分析视频和音频文件编码和内容信息的工具。免费开源,支持众多视频和音频文件格式,具有树状结构、文本、XML、网页等多种查看方式,信息可导出为文本,CSV,HTML等文件。该工具非常好用,可以验证保存的视频文件的格式是否合法,可以帮助开发者了解文件的详细信息。下面是该工具的一些截图:使用方法:这个工具是集成到Windows资源管理器的,要查看一个媒体文件...

2019-01-31 11:49:49 13844

原创 VLC接收RTP流的SDP文件写法

接收RTP流我们经常用VLC来进行测试,但是对于RTP,如果直接在VLC的网络协议框输入RTP地址来播放是播放不了的,如下图,会提示"SDP required"的错误信息。因为VLC打开RTP流需要一个SDP文件,SDP文件定义了流的一些信息比如视频编码格式,帧率,接收端的IP、端口号等。关于SDP文件的格式网上有详细的介绍,这里就不作详细说明了。反正,打开一个流,播放器需要根据SDP...

2019-01-31 11:28:28 8192 1

原创 使用FFmpeg命令行进行UDP、RTP推流(H264、TS),ffplay接收

我们在开发网络程序时经常用到UDP或RTP来发送和接收流媒体,而开发程序完毕需要搭建一个环境测试,这时候可能你需要一个推流端或接收端。对于推流端,我们可以借助FFmpeg工具轻松完成该功能,只需要敲一条命令后就可以实现发流,并且支持多种网络协议(UDP/RTP/RTSP/RTMP)。而接收端我们可以使用ffplay,这个程序也是在FFmpeg工具包的Bin目录里面。大家可以根据自己需要使用这两个工...

2019-01-31 10:43:56 220450 8

原创 如何发送和接收RTP封包的H264,用FFmpeg解码

这篇文章给大家介绍怎么打包H264分片到RTP包,并且实现一个播放程序演示接收RTP包和用FFmpeg解码。为了让大家更了解H264打包成RTP的细节,有必要罗嗦一下向大家介绍一些相关的基础知识,下面分三节介绍,其中前面两节是基础知识,第三节重点讲解怎么实现RTP包的发送和接收,以及怎么用FFmpeg解码显示。一、H264的组成结构H264以NALU(NALunit)为单位来支持编码数据在...

2019-01-16 18:10:06 11298 3

原创 如何发送和接收RTP包,用FFmpeg分离、解码

RTP是网络上进行流媒体传输的一种常用协议,现在有很多封装RTP协议的开源库,比如:ortp, jrtplib,而其中最有名的要数jrtplib,本文给大家演示怎么用jrtplib开发一个带RTP发送和接收功能的应用程序,但这篇文章不会讲述jrtplib的基本用法知识,如果你要了解更多关于这个库的用法,可以参考这篇文章:http://www.cnblogs.com/yuweifeng/p/755...

2019-01-16 12:07:38 13141 5

原创 如何使用jrtplib进行RTP发送和接收

RTP 协议是目前流媒体实时传输用得最广的一种协议,大家在开发用到RTP协议的程序时,可能会考虑使用一些开放源代码的RTP库,比如大名鼎鼎的JRTPLIB。 JRTPLIB是一个面向对象的RTP库,它完全遵循RFC 1889设计,在很多场合下是一个非常不错的选择,JRTPLIB 是一个用C++语言实现的RTP库,目前已经可以运行在Windows、Linux、FreeBSD、Solaris、Unix...

2019-01-15 18:41:32 3666 1

原创 用FFmpeg实现的RTMP接收类

      现在很多直播都用到RTMP来传输,而接收RTMP用FFmpeg比较常见(当然也有用其他库的)。FFmpeg对RTMP接收有比较完善实现了,API使用方法也很简单,大多数流程跟文件流处理一样,但是一些区别的地方。下面大概说一下用FFmpeg怎么实现RTMP接收功能,后面再附上封装类的代码。1.  初始化和打开流。 这是第一步要做的工作,打开了流后才能往下接收数据,打开流需要调用F...

2019-01-10 10:36:23 3607

原创 如何枚举系统的视音频采集设备

    用Directshow SDK很容易实现该功能,但是开发者必须了解Directshow SDK的一些基础知识,对于不了解Directshow的开发员就有点头疼了。为了更方便他们开发,我封装了一个动态库,可以枚举系统的视音频采集设备(仅支持Windows系统),动态库使用非常简单,因为只有一个接口://枚举指定类型的所有采集设备的名称ENUMDEVICE_API HRESULT Enu...

2019-01-09 18:34:56 1751 1

使用FFmpeg API实现的RTMP接收类

基于FFmpeg实现的RTMP接收类,已经在项目中经过验证,完全可用。

2019-01-09

代码例子:如何用FFmpeg读取内存的PS/TS流,分离出视频和音频

演示如何用FFmpeg读取内存的PS/TS流,分离出视频和音频,用VC2008编译的,支持读取TS文件或PS文件到内存,支持分离、解码

2018-12-08

Android采集摄像头图像--MediaCodec编码

支持从摄像头采集图像,并用MediaCodec API进行硬编码,编码后的数据保存到一个H264文件。这个例子也支持软编码,使用的是FFmpeg。

2018-07-21

Directshow采集摄像头(或其他采集卡)图像的封装类

一个老外写的Directshow采集卡封装类,代码写得比较完善

2018-02-25

DirectX 9 SDK的安装包,包含DirectShow

Directshow SDK,包含DirectShow的SDK 文件, Samples例子,还有一个编译步骤

2018-02-25

FFmpeg + Directsound实现的音频播放器,只支持Windows系统

用FFmpeg解码音频文件,支持非常多的音频文件格式,音频输出用DirectSound,支持Seek播放,有播放进度显示。

2018-02-25

基于Directshow技术播放音频,带歌词显示功能的音乐播放器

用MFC开发的音乐播放器,带歌词显示,使用Directshow播放音频。

2018-02-24

一个基于FFmpeg实现的音频播放器,只支持Windows系统

一个FFmpeg实现播放音频的播放器,基于别人的代码改的,播放音频用WaveForm API,界面用Win32做的,能显示播放的进度。

2018-02-24

基于Directshow的万能格式播放器

一个基于Directshow的文件播放器,Filter插件是用大名鼎鼎的LAVSplitters,可以播放常见的文件格式。

2018-02-23

一个分离PS和TS流的动态库,带一个播放器Demo

可以从PS或TS文件中分离出音频和视频,也支持从内存读数据。里面有SDK的头文件和LIB库,并且有一个演示的例子

2018-02-23

Direct3D技术实现的图片浏览器V1.2

一个用Direct3D技术渲染的图像浏览器,支持图像旋转,图像放大,比例调整,还支持动画特效。

2018-02-18

基于Live555的RTSP服务器V1.2,视频源为摄像头

基于Live555写的RTSP服务器,有图形界面,支持采集USB摄像头的视频和麦克风的音频,支持编码参数设置。修改了上一版本的几个Bug。

2018-02-18

使用FFmpeg采集摄像头图像和麦克风音频

使用FFmpeg API采集摄像头图像和麦克风音频,支持图像预览,把图像和音频编码后保存成文件,实现视音频同步机制。为更好理解代码,请阅读我博客上相关的一篇文章:https://blog.csdn.net/zhoubotong2012/article/details/79338093

2018-02-15

VC的虚拟列表控件的用法

实现了一个基于MFC的虚拟列表控件,选择目录路径后,显示目录里的所有文件,该控件采用回调方式获取每一行ListItem的数据,显示到哪一页就加载哪一页的数据。用虚拟列表控件显示效率很高,可显示上万条的记录。

2018-02-08

用GDI+实现图片透明度变化的效果

实现图片淡入淡出效果,主要用了GDI++的AlphaBlend函数。

2018-02-08

播放器经典实现例子

Windows平台的播放器例子,实现了一个很好的播放器框架,简单易懂。

2018-02-08

Direct3D技术实现的图片动画效果

一个用Direct3D技术渲染的图像浏览器,支持图像旋转,图像放大,比例调整,还有支持多种动画特效。

2018-02-08

VC2008运行时库

VC2008的运行时库,某些VC2008编译的以MFC动态链接的EXE需要装这个库。

2018-02-06

Directshow SDK包(无须安装)

微软的Directshow SDK包,解压后把Include和Lib目录添加到工程路径。

2018-02-06

LAVSplitters---Directshow分离器和解码器Filter

世界上最好的Directshow分离器和解码器插件,目前开源播放器MPC也是调用这个的。

2018-02-06

VirtualCamConfig.rar

该工具是我写的虚拟摄像头Filter的配置工具,用来配置视频文件路径和帧率,详情请浏览网页:https://blog.csdn.net/zhoubotong2012/article/details/79368648

2019-12-24

Android摄像头获取图像_FFmpeg软编

实现如下功能: 在Android系统上采集摄像头图像,然后将图像压缩成H264,支持两种方式压缩:1. FFmpeg软编方式;2.调用MediaCodec硬件编码。压缩输出的流保存成文件。我博客上有一篇相关的文章:https://blog.csdn.net/zhoubotong2012/article/details/81144708

2019-11-25

OpenCV输出的图像嵌入显示到控件窗口中--TestCVShow(GDI && SDL).zip

默认OpenCV是采用弹出窗口的方式来显示图像的,而很多情况下我们需要将采集出来的图像用内嵌或子窗口方式显示到我们自己的软件窗口中。这个程序就是实现这样的功能:将OpenCV采集出来的图像帧内嵌显示到MFC的窗口中。分别采用了两种方法显示图像:一种是用GDI(仅支持Windows),另外一种用跨平台的SDL库。

2019-11-19

MPEG-PS/TS流实时流播放器例子--PsAndTsPlayer_V1.3.zip

该播放器支持PS/TS流读取,支持从文件读取或从内存读取,支持从网络(用UDP)接收到PS/TS流,然后送到SDK 缓冲区进行读取和解析。有拆包、分离ES帧、解码视频ES帧的功能。下载前请阅读我博客上的文章:https://blog.csdn.net/zhoubotong2012/article/details/79354950

2019-11-12

FFmpeg API读取视音频文件信息的一个工具----MediaFileInfoList.zip

一个含界面窗口的程序,调用FFmpeg API读取视音频文件信息(MP4、AVI、MKV...),可以读取文件播放时长、码率、视音频编码格式,视频分辨率,帧率,音频属性等信息。

2019-10-27

使用Direct3D技术实现的一个图片浏览器---ImageTex_2.1.zip

利用Direct3D实现的一个简单的图片浏览器,支持打开PNG、BMP、JPG文件,可以加载2个图层,支持对图层进行旋转、放大、改变图层大小等。

2019-10-24

使用Direct3D实现如幻灯片的动态图片切换效果---SlideShowD3D

支持3种图像切换特效(淡入淡出、水平扫描、百叶窗),利用Direct3D进行画图。

2019-10-24

Directshow播放文件封装类---VideoPlayGraph(evr).zip

DirectShow播放器构建FilterGraph播放文件的封装类,调用的Filters是LAV,支持连接VMR或EVR,支持设置解码模式为软解,硬解。

2019-10-17

SimplePlayer(DShow).zip

该播放器基于Directshow框架,调用的解码器来自于开源的LAVFilters。支持的所有常见的多媒体格式播放。

2019-10-17

SlideShow.zip--实现图片切换特效(如幻灯片效果)

SlideShow-- 实现多达11种图像切换特效(包括向上扫描,向左扫描,马赛克,水平栅条,淡入淡出等),利用GDI+进行画图。

2019-10-12

FFmpeg的加水印滤镜例子(有图形界面) ---ffmpeg_filter_mix_logo

ffmpeg_filter_mix_logo -- 在视频上叠加OSD文字或Logo图标,用到了FFmpeg的加水印滤镜。

2019-10-12

在视频上叠加OSD文字和Logo图标---SubtitleMixVideo

SubtitleMixVideo -- 在视频上叠加OSD文字和Logo图标,通过在原图像上修改像素的方法进行叠加,支持多种图像格式(RGB565/RGB555/RGB24/RGB32),可叠加多个OSD区域。

2019-10-12

在视频上叠加OSD文字和Logo图标--ShowVideoWithOSD

ShowVideoWithOSD -- 在视频上叠加OSD文字和Logo图标,采用渲染时叠加的方法,用到Directdraw API。

2019-10-12

Directshow渲染器Filter上叠加字幕和Logo--FileStreamDecode(Directshow)

FileStreamDecode(Directshow) -- 本例子基于Directshow框架,实现了一个自定义的Renderer Filter,带渲染视频功能,并且可以在视频上叠加OSD文字和Logo图标,用到Directdraw API渲染视频和叠加字幕。

2019-10-12

虚拟摄像头Filter代码--VirtualCamFilter_1.2

安装了这个Dshow插件之后,在系统中就模拟出一个虚拟的视频采集设备,使用Directshow的枚举视频设备方法能枚举出来。这个插件输出的图像是一个已知的视频文件解码出来的图像,需要通过一个工具配置输入的视频媒体文件路径,安装包中带着个工具。

2019-06-06

使用jrtplib发送和接收的例子--PlayStream V1.2

基于jrtplib实现了RTP发送和接收功能,支持发送H264、PS、TS等文件流,接收端读取发送端发来的数据后,取Payload数据,通过FFmpeg分离、解码出视频,将RGB格式的视频在窗口中显示。 了解更多内容请参阅我博客上的相关文章:https://blog.csdn.net/zhoubotong2012/article/category/7467116

2019-01-29

使用jrtplib发送和接收网络流(支持解码、播放)

基于jrtplib实现了RTP发送和接收功能,支持发送H264、PS、TS等文件流,接收端读取发送端发来的数据后,取Payload数据,通过FFmpeg分离、解码出视频,将RGB格式的视频在窗口中显示。该代码对应我博客上的一篇文章:https://blog.csdn.net/zhoubotong2012/article/details/86502327

2019-01-15

使用RTP协议发送和接收H264的例子(支持解码、播放)

MFC实现的窗口程序,集成了发送和接收RTP包的功能,接收到的视频用FFmpeg解码并显示出来。该例子代码对应我博客上的一篇文章:https://blog.csdn.net/zhoubotong2012/article/details/86510032

2019-01-15

jrtplib-3.11.1 实现RTP收发功能的静态库

JRTPLIB 是一个用C++语言实现的RTP库,目前已经可以运行在Windows、Linux、FreeBSD、Solaris、Unix和 VxWorks等多种操作系统上

2019-01-15

如何枚举系统的视音频采集设备

如何用Directshow API枚举系统的视音频采集设备,这是一个动态库,提供了一个接口获取系统所有的采集设备名称。

2019-01-09

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除