- 博客(55)
- 资源 (82)
- 收藏
- 关注
原创 ios平台上 hls直播 第二次点击无法播放
html5 video 标签中 支持 m3u8 直播当网页在ios平台展示时,第一次点击正常播放,第二次点击就无法播放需要刷新页面。 具体机制还没搞明白。 使用了比较土的方法实现了每次点击都能实时播放 JW Player for Flash body { background-color: #fff; padding: 0 20px;
2015-02-06 17:58:20
1926
原创 http live streaming (hls) 实时切片
之前是通过nginx进行 hls 直播,现在尝试自己去实现hls服务,以方便后续需求的更改。实时的h264视频流封装为一段一段的ts流并生成一个动态更新的 m3u8文件。目前 h264 直接封装为ts流还有点问题,暂时采用下面的方案:h264 封装为 mp4文件 再通过ffmpeg 转码为ts文件m3u8 文件格式如下#EXTM3U#EXT-X-TARG
2015-02-05 17:10:13
2238
原创 c++ 配置文件操作类
配置文件类似下面的格式param1=value1param2=value2....简单封装了c++类,可以读取任一参数接口定义/* author cwliu date: 2015-01-05*/#ifndef CONFIGFILE_H#define CONFIGFILE_H#include #
2015-01-05 15:20:07
939
原创 rtsp获取视频帧 ffmpeg解码h264数据 D3D显示yv12数据
代码下载地址: http://download.youkuaiyun.com/detail/mtour/8302907本代码实现了 通过rtsp协议获取视频流数据,通过ffmpeg解码为yv12数据,通过D3D进行图像显示整个程序包含 RtspStream模块 H264Decoder模块 D3D模块RtspStream模块源码可在之前的文章中找到。
2014-12-26 13:52:25
2674
原创 c语言实现cgi程序
在tplink上刷了openwrt固件, 在上面编写了cgi测试程序 示例如下:#include #include "socket/Net.h"// test user name and passwordint Login(char* sJrmAddr,int nJrmPort,char* sUserNmae,char* sUserPwd);int main
2014-12-10 14:00:55
1015
原创 c++ 实现 http 上传和下载
代码下载地址: http://download.youkuaiyun.com/detail/mtour/8243527 最近写了个程序需要用到http通讯,由于flash空间比较小,没有考虑 libcurl库,用c++封装了一个http类,实现了http 文件上传和下载 #include #include #include #include
2014-12-10 13:46:17
7977
原创 xml 转义字符
今天在接入大华dvr 时发现 大华rtsp地址中存在&符号,但是我的配置文件是xml格式的,如下dah001rtsprtsp://admin:admin@10.10.2.250:554/cam/realmonitor?channel=1&subtype=0hik001对于&符号需要转义XML实体中不允许出现"&",""等特殊字符,否则XML语法检查时将出错,如果编
2014-12-02 15:12:16
1087
原创 nginx http代理配置
示例:location /test{ proxy_pass http://zhidao.baidu.com/ ; }
2014-11-22 17:30:08
530
原创 ntp 服务编译安装 及 更改端口
开源库下载地址: http://download.youkuaiyun.com/detail/mtour/8151863
2014-11-13 09:10:03
11882
7
转载 c++ 虚函数表解析
在面试中jingc前言 C++中的虚函数的作用主要是实现了多态的机制。关于多态,简而言之就是用父类型别的指针指向其子类的实例,然后通过父类的指针调用实际子类的成员函数。这种技术可以让父类的指针有“多种形态”,这是一种泛型技术。所谓泛型技术,说白了就是试图使用不变的代码来实现可变的算法。比如:模板技术,RTTI技术,虚函数技术,要么是试图做到在编译时决议,要么试图做到运行时决议。
2014-11-04 15:37:32
362
原创 UDP 打洞示例 包含 服务器 客户端
客户端示例:#include "Net.h"#include "../p2pInfo.h"int main(){ CUdp udp; if (0!=udp.Open(16888)) { printf("client udp open failed \n"); return -1; } P2P_CLIENT_INFO clientInfo; mems
2014-11-04 15:28:11
1047
转载 linux epoll 使用详解
epoll - I/O event notification facility在linux的网络编程中,很长的时间都在使用select来做事件触发。在linux新的内核中,有了一种替换它的机制,就是epoll。相比于select,epoll最大的好处在于它不会随着监听fd数目的增长而降低效率。因为在内核中的select实现中,它是采用轮询来处理的,轮询的fd数目越多,自然耗时越多。并且
2014-10-22 18:03:26
458
原创 linux下编译libcurl
http://curl.haxx.se/download.html 地址下载最新版本源码解压源码包: tar -xzvf curl-7.38.0.tar.gz进入源码目录: cd curl-7.38.0/配置编译环境./configure --prefix=/usr/local/curl --disable-shared --enable-s
2014-10-22 14:40:04
518
原创 libcurl 通过http协议下载文件并显示下载进度
vc6 测试工程下载地址: 代码如下:size_t my_write_func(void *ptr, size_t size, size_t nmemb, FILE *stream){ return fwrite(ptr, size, nmemb, stream);} int my_progress_func(char *progress_data,
2014-10-22 14:22:51
4964
原创 json c++ 解析库 jsoncpp 编译和使用
jsoncpp 源码下载地址 : https://github.com/open-source-parsers/jsoncpp
2014-10-21 17:39:29
1278
原创 libcurl 上传文件至 web服务器
下载地址: http://download.youkuaiyun.com/detail/mtour/8060775php 内容
2014-10-20 19:16:40
1756
转载 libcurl 示例代码
http://curl.haxx.se/libcurl/c/example.htmlSome of the Examplessimple HTTPsimple.c shows how to get a remote web page in only four libcurl function calls.simple HTTPShttps.c get
2014-10-17 17:41:36
672
原创 基于live555的rtsp客户端模块
基于live555 testRtspClient.cpp 改造, 已经封装成 dll 模块,提供了视频帧回调接口. live555 需要编译成静态库, 请自行编译,网上很多例子,比较简单源码下载地址:
2014-10-14 10:42:34
1716
转载 视频压缩编码和音频压缩编码的基本原理
转载备忘之。 本文介绍一下视频压缩编码和音频压缩编码的基本原理。其实有关视频和音频编码的原理的资料非常的多,但是自己一直也没有去归纳和总结一下,在这里简单总结一下,以作备忘。1.视频编码基本原理(1) 视频信号的冗余信息以记录数字视频的YUV分量格式为例,YUV分别代表亮度与两个色差信号。例如对于现有的PAL制电视系统,其亮度信号采样频率为13.5M
2014-10-13 17:19:35
916
转载 视音频技术入门
转载 备忘 原文链接: 1. 视频播放器原理视音频技术主要包含以下几点:封装技术,视频压缩编码技术以及音频压缩编码技术。如果考虑到网络传输的话,还包括流媒体协议技术。视频播放器的源代码详细解析(Media Player Classic - HC,Mplayer,FFplay,XBMC)可以参考系列文章:Media Player Classic:Med
2014-10-13 16:59:35
950
转载 live555 源码架构分析
live555源代码分析 , 写的不错 转载备忘源代码下载(VC6工程):http://download.youkuaiyun.com/detail/leixiaohua1020/6374387liveMedia 项目(http://www.live555.com/)的源代码包括四个基本的库,各种测试代码以及Media Server。四个基本的库分别是: UsageEn
2014-10-13 16:28:10
4234
原创 通过rtmpdump推送海康视频流到red5服务器
现在主流的网络摄像机都支持标准H264视频格式,例如 海康网络摄像机, 通过海康提供的网络SDK可以获取到视频码流。我测试的这款相机,视频编码采用的是H264,音频编码采用的是G711a。 这里,我仅测试了视频。 通过海康SDK获取到视频流为PS流,根据PS协议格式,抽取其中的H264帧数据,SPS PPS 信息。 推送RTMP流采用开源库 rtmpdump, RTM
2014-10-10 13:53:51
7480
原创 ubuntu 上采用nginx做rtmp 直播 服务器
sudo apt-get install autoconf automakesudo apt-get install libpcre3 libpcre3-dev安装 zlib库sudo apt-get install opensslsudo apt-get install libssl-dev./configure --add-module=../ngi
2014-10-10 13:30:01
985
原创 32位linux操作系统上编译 64位应用程序
sudo apt-get install gcc-multilibsudo apt-get install g++-multilib编译链接时 加参数 -m64
2014-05-06 14:15:57
1005
原创 基于DirectShow和FFmpeg的USB摄像头监控软件
第一个版本### 软件版本及实现功能0.0.1 1. USB摄像头枚举和设备信息获取2. 实时视频观看3. 24小时不间断录像,录像文件支持暴风影音播放### 软件说明:软件基于 DirectShow 和 FFMpeg开发### 软件使用说明:1. 第一次使用(以管理员权限运行)打开系统配置进行设备获取
2013-10-23 18:05:40
1692
原创 基于FFMpeg的H264解码库
最近基于ffmpeg做了个h264视频流解码库,支持多路同时解码,主要提供的对外接口如下 : #ifdef _H264DECODER_EXPORTS#define H264DECODER_API __declspec(dllexport)#else#define H264DECODER_API __declspec(dllimport)#endif#define
2013-09-20 21:40:00
1245
原创 Linux进程基础知识
程序: 存储在磁盘上的可执行指令和数据的静态实体。进程: 具有一定功能的程序关于一个数据集合的一次运行活动。 Linux中每创建一个进程,系统将从内存中创建一个task_struct 放入到 task 数组。进程有两种运行模式: 用户模式 ,系统模式进程不能被抢占。Linux采用了预加载调度策略,每个进程只允许运行很短的时间(200ms), 这段时间称之为时
2012-12-15 15:55:53
474
原创 设计模式之装饰者模式 及 c++实现
动机: 为某个经常变化的对象动态的添加职责,通过组合的方式而不是继承的方式。因为通过继承的方式会增加类的继承层次,增加了软件的复杂度。 装饰者模式类图如下所示。 该模式的巧妙之处在于, Decorator类与要修饰的类的基类是继承和组合的关系。对于Component类的所有派生类都可以用一个Decorator类进行修饰。 c++ 实现代码如下: cl
2012-12-15 12:00:21
512
div+css float 布局,适配手机
2015-08-31
http live streaming doc 官方协议文档
2015-07-02
微信公众平台及应用开发-带书签 附随书源码
2015-01-25
flv.js 测试demo (h5 video标签播放flv视频)
2019-10-24
redis-destop-manager
2017-09-24
go 标准库手册
2017-05-05
Web Development with Go
2016-11-13
mysql-connector-java-5.1.39-bin.jar
2016-08-03
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人