9 阿龙哥哥

尚未进行身份认证

我要认证

混迹于csdn,不求显山露水,只求共享知识。

等级
TA的排名 8k+

rtmp转http-flv

目前常用的流媒体协议rtmp,HLS,Http-FLV,其中hls协议的延迟太大,rtmp的协议实现比较复杂,而http-flv基于http协议,简单方便,在浏览器上实现播放也非常容易。此文讲解rtmp客户端拉到rtmp流后,转封装成flv格式并通过http服务器发送给客户端的过程。一、rtmp消息格式rtmp协议不作过多说明。握手完成后,主要传输的是视频和声音数据,参考rtmp官方标准规范详细解析https://www.cnblogs.com/chgaowei/p/5445...

2020-10-16 17:01:11

ffmpeg 用 -ss指定起始时间

ffmpeg推流时,用-ss可以从某个时间点开始进行推。./objs/ffmpeg/bin/ffmpeg -re -ss 500 -stream_loop -1 -i ./doc/jqr.mkv \ -vcodec copy \ -acodec copy \ -f flv -y rtmp://abc.yunyun.com/live/my; 参考https://ffmpeg.org/ffmpeg.html ...

2020-10-12 16:08:51

mp4(mov)文件解析相关

MP4Reader工具,用于查看mp4文件结构。软件界面如下所示下载链接:https://download.csdn.net/download/zlf_93_02/10627535mp4文件格式重点解析https://www.jianshu.com/p/44c9567d8fcbMP4文件格式解析https://blog.csdn.net/lxmnet123/article/details/10729463MP4文件格式解析 之 二 (Samp...

2020-09-30 11:05:11

ffmpeg拉hls转推rtmp

注意ffmpeg的版本号,太旧的版本可能会不支持,像centos 7.6自带的 ffmpeg-2.8.15就不行。./ffmpeg -re -i http://ott-live.olympicchannel.com/out/u/OC1_1.m3u8 -vcodec copy -acodec copy -f flv rtmp://127.0.0.1/live/test引用:https://www.wowza.com/community/t/can-wowza-pull-hl...

2020-09-22 17:28:10

某p2p流媒体直播平台相关统计指标

直播系统上每天的用户观看量呈现与时间的高度相关性,且每天基本固定不变。(除非有特别节目播出)下面列举部分,以供学习研究:在线播放人数CCTV13的日播放曲线可以看出,从17:30开始到19:30分,观众人数增加非常厉害,19:30达到最高峰,之后则急剧减少。CCTV1的播放曲线19:35效应更加明显。top 17热门频道排序系统总带宽分享率曲线基本能够达到70%以上,最高达到90%,能够节省至少70%的流量消耗。对直播类应用有巨大的...

2020-09-21 19:26:12

P2P流媒体直播技术介绍

引言p2p对流媒体分发的重要性客户端平台的选择核心技术1.nat穿透2.udp可靠传输3.实时的p2p数据分发4.系统运行效率监控5.内容提供者接入现有解决方案介绍开源:1.p2stream.https://github.com/guangzhuwu/p2streaming (文档不全,项目有一点旧,但是内容比较全)2.webtorrenthttps://github.com/webtorrent/webto...

2020-09-21 18:49:24

电视直播hls协议(m3u8)测试地址

引用自:https://gitee.com/cyrichen/television_live_source/blob/master/iptvsource.m3u#EXTM3U#EXTINF:-1 ,CCTV-1综合http://ywotttv.bj.chinamobile.com/PLTV/88888888/224/3221226155/1.m3u8#EXTINF:-1 ,CCTV-2财经http://ywotttv.bj.chinamobile.com/PLTV/88...

2020-09-21 16:04:12

c++对ipv4和ipv6地址的兼容处理

目前ipv6的应用越来越广泛,慢慢将变成强制的标准,做网络应用开发的,在未来会越来越的要开始支持ipv6,但是ipv6肯定不是一下子就可以大范围应用的,必然有一段时间Ipv4与ipv6共存,要做到对ipv4和ipv6的同时支持。关于如何让程序支持ipv6可以参考 https://blog.csdn.net/v6543210/article/details/106927210示例代码见:https://github.com/alongL/ipv6_demo这个文章只讲如何兼容ipv4和...

2020-09-12 22:14:34

用sokit发送http请求和响应

sokit是一款非常简单易用的tcp、udp调试工具,主要适用于专业的网络管理使用,它可以轻松查看网内的数据情况,能够有效地接收、发送、转发TCP或UDP数据包。链接:https://github.com/sinpolib/sokit可以使用sokit发送HTTP请求[ ]内部的是二进制,相当于\r\n,在文本框中输入\r\n 无效,必须使用 [0d0a]这样的二进制。GET / HTTP/1.1[0d0a]Host: localhost[0d0a0d0a]...

2020-09-09 10:28:13

SRS采用内存磁盘优化性能

SRS是流媒体直播服务器,可以将rtmp转为HLS协议,HLS协议包含.m3u8和.ts文件,一般是存在磁盘上,但借助linux的系统特性,可以将这些文件保存到磁盘上,从而降低磁盘读写次数,并提高流媒体的性能。/dev/shm是linux下的内存文件系统目录,具体介绍可见:https://blog.csdn.net/ctthuangcheng/article/details/46565909https://www.jianshu.com/p/b6adaf2a9919SRS的配置可...

2020-09-08 10:12:33

srs拉流助手(用http json api控制srs拉流)

SRS拉流可以通过配置文件实现,具体可以参看https://blog.csdn.net/v6543210/article/details/108141527但是这种模式只能通过配置文件变更,如果要动态通过程序来控制SRS拉流,要么改SRS的配置文件,要么自己改SRS添加相关的接口(SRS目前是不提供ingest的API接口的)。这里介绍一种方法。由于SRS拉流的实现方法是开启ffmpeg进程拉流再推给SRS,具体的命令是:ffmpeg -f flv -i \rtmp:/...

2020-09-03 12:24:55

常见码率对照表

视频码bai率应该在256以上,视频比特率是多少du,copy主要根据百视频分辨zhi率来确定。通常dao情况下:1080*720的分度辨率,用5000K左右;720*576的分辨率,用3500K左右;640*480的分辨率,用1500K左右。...

2020-09-02 18:18:10

自动拉取rtmp生成hls的程序实现

./ffmpeg \-i rtmp://yunyuntx.com/live/tv \-vcodec copy \-acodec copy \-vbsf h264_mp4toannexb \-f hls \-hls_flags delete_segments \-segment_list_size 10 \-hls_list_size 5 \playlist.m3u8ffmpeg可以摘取rtmp并生成.m3u8,如果加上http服务器不就可以对外发布hls了吗?这是一个好...

2020-08-28 16:48:26

ffmpeg. skipping 1 segments ahead, expired from playlists

ffplay在播放hls时出错skipping 1 segments ahead, expired from playlists在这时会卡顿一下。原因可能是.m3u8中的ts数量只有3个, my-10.ts, my-11.ts, my-12.ts,此时如果ffplay还在请求,my-09.ts则会报这个错误,解决方法是增加m3u8中ts的数量,让客户端延迟一段时间仍能正常播放。...

2020-08-28 16:44:17

ffmpeg拉rtmp流,生成hls或转推rtmp

某些情况下需要将流媒体的rtmp服务拉到本地进行处理后再进行发布,目前最好的一种方案就是ffmpeg拉流,相对比较稳定。SRS也采用的是这种方式。一、ffmpeg拉rtmp转推rtmpffmpeg -f flv -i \rtmp://yunyuntx.com/live/tv \-vcodec copy \-acodec copy \-f flv -y \rtmp://127.0.0.1:1935/live/tv这个命令是srs所采用的拉流命令。拉流后,转推给SRS再发布出去..

2020-08-21 14:20:23

ffmeg 一键编译脚本

ffmpeg一键编译,包含基本上全部的功能,x265,av1等等。各个链接需要更换,或科学上网。整体上可以作为参考或借鉴https://github.com/markus-perl/ffmpeg-build-script/android平台的编译https://github.com/WritingMinds/ffmpeg-android...

2020-08-21 10:35:43

SRS-3.0拉流rtmp转hls 的过程

SRS是比较优秀的流媒体服务器。主要功能是接受媒体发布端的rtmp push,并发布。但是在目前的3.0版本中有ingest功能,即拉流转发。SRS作为客户端拉流后,进行媒体的分发。这在某些情况下非常有用。一、编译SRS具体编译按官方文档,非常容易。我的操作系统是ubuntu 18.04,即使centos差别应该也不大。二、编译ffmpeg拉流转发的内部是使用ffmpeg实现的,没有ffmpeg会导致拉流失败具体可以参考https://github.com/ossrs/s..

2020-08-21 10:29:17

docker制作mysql-client的镜像(基于centos)

由于我的程序需要往mysql数据库中存数据,用到了libmysqlclient.so,所以把我的程序放到docker中运行的时候,需要在docker镜像中包含libmysqlclient.so。网上有基于alpine的mysql-client。感觉不行。我们还是用centos的镜像感觉保险一点。1.build.sh从mysql的官网下载mysql相关rpm到本地#!/bin/bashwget https://repo.mysql.com/yum/mysql-5.7-community

2020-08-20 16:57:57

windows下zlib库的编译与使用

一、zlib库的编译首先要下载这个库,这个谷歌和百度也都可以找得到的。我下载的是zlib-1.2.11,下载完解压出来即可。下边就开始编译吧。(包括动态库和静态库两种)http://zlib.net/zlib-1.2.11.tar.gzzlib的vssln解决方案文件可以在如下路径中找到:zlib-1.2.11/contrib/vstudio/vc14/zlibvc.sln,打开这个解决方案中包含6个工程。其中:(1).zlibvc生成动态链接库zlibwapi.dll和对应的导入库z...

2020-08-19 16:09:49

easylogging 用法和不输出日志的问题解决

1.用法基本用法如下,引用头文件,添加初始化宏,配置log的文件名,配置Log的格式,再写入log写入log的时候,可以使用LOG(INFO) <<这样的格式,也可以使用printf类的格式,但是要注意:printf格式只能用%v,不能使用%s, %d这些。否则此条日志不会有任何输出。 LOG(INFO) << "Here is very simple example."; #include "easylogging++.h"INITIALIZE_EA.

2020-08-17 16:45:12

查看更多

勋章 我的勋章
  • GitHub
    GitHub
    绑定GitHub第三方账户获取
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv2
    勤写标兵Lv2
    授予每个自然周发布4篇到6篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。
  • 分享宗师
    分享宗师
    成功上传21个资源即可获取