- 博客(137)
- 资源 (8)
- 收藏
- 关注
原创 配置Xshell+Xming使用Centos7中wireshark抓包
CentOS7安装wireshark:yum -y install wireshark wireshark-gnomeyum -y install xorg-x11-xauthWindows安装Xshell、Xming:Xming 下载Xming X Server for WindowsXming安装可以不选安装putty组件,其它默认就行
2020-08-25 11:29:27
1268
原创 程序中unsigned char 类型的意义
对于无符号数来说,左移和右移都是用的逻辑移位,即左移低位空出的补0,右移高位空出的补0;对于有符号数来说,用的是算术移位,左移多出的会移进符号位,低位空出的补0,右移空出的高位补符号位。例如:char m = 0xa6;unsigned char n = 0xa6;printf("0x%02hhx\n", m >> 1);printf("0x%02hhx\n", n &...
2019-08-31 17:34:38
2642
转载 关于MPEG-4 、mp4v 和 mp4a
MPEG-4MPEG-4是个协议簇,包含了多个协议。MPEG-4只是定义了一部分AAC类型,AAC主要包括MPEG-2 AAC和MPEG-4 AAC,详细如下图:可以看出MPEG-4中只是定义了一部分类型的AAC。MP4VMP4V stands for MPEG-4 Video.It was created by Moving Pictures Expe...
2019-07-31 09:41:41
10421
1
转载 RTMP协议封装AAC(ADTS)格式详解
第一部分 AAC ADTS格式分析AAC音频格式分析AAC音频格式有ADIF和ADTS:ADIF:Audio Data Interchange Format 音频数据交换格式。这种格式的特征是可以确定的找到这个音频数据的开始,不需进行在音频数据流中间开始的解码,即它的解码必须在明确定义的开始处进行。故这种格式常用在磁盘文件中。ADTS:Audio Data Transport St...
2019-06-21 16:54:01
3974
转载 RTMP协议封装H264格式详解
首先我们获得h264的流,在监听里,我们通过参数可以获得RTMP包IStreamPacket,调用getData()方法直接获得包数据 放入IOBuffer。以下是提取并修改数据存成h264文件的步骤1. 添加监听IStreamListener2. 通过IOBuffer的put函数将每次获得的包数据放入新的IObuffer3. 在流结束时将IOBuffer存成文件4. 用工具,...
2019-06-21 16:50:13
4418
原创 ffmpeg 一些常用命令
===[encode]===ffmpeg -f dshow -i audio="麦克风 (Realtek High Definition Au" -f dshow -i audio="virtual-audio-capturer" -filter_complex amix=inputs=2:duration=first:dropout_transition=2 -f gdigrab -i de...
2019-06-07 11:31:06
2509
原创 vim 配置tab为4个空格
在配置文件末尾添加如下内容:set tabstop=4set softtabstop=4set shiftwidth=4set noexpandtab配置文件位置:linux:/etc/vimrcwindows:vim安装目录/_vimrc
2019-06-01 13:03:54
2716
转载 Linux 程序后台运行的方法(nohup、setsid、&)
我们经常会碰到这样的问题,用 telnet/ssh 登录了远程的 Linux 服务器,运行了一些耗时较长的任务, 结果却由于网络的不稳定导致任务中途失败。如何让命令提交后不受本地关闭终端窗口/网络断开连接的干扰呢?下面举了一些例子, 您可以针对不同的场景选择不同的方式来处理这个问题。nohup/setsid/&场景:如果只是临时有一个命令需要长时间运行,什么方法能最简便的保证它...
2019-04-28 15:16:50
1456
原创 ubuntu内网ntp服务搭建及嵌入式移植测试
//////ntp服务搭建apt install ntpvim /etc/ntp.confservice ntp restart//////嵌入式移植测试wget http://archive.ntp.org/ntp4/ntp-4.2/ntp-4.2.8p13.tar.gztar xzvf ntp-4.2.8p13.tar.gzcd ntp-4.2.8p13/./configu...
2019-04-04 17:44:33
753
原创 ubuntu16.04 环境配置及问题解决
ubuntu安装后,root初始密码为随机的,需要先设置1、先用安装时候的用户登录进入系统2、输入:sudo passwd3、输入新密码,重复输入密码,最后提示passwd:password updated sucessfully至此已完成对root密码的设置---------------------------------从Ubuntu14.04开始open-vm-tools...
2019-03-25 18:13:09
1146
1
原创 交叉编译流量监测工具nload
一、编译安装ncurses下载:wget http://ftp.gnu.org/gnu/ncurses/ncurses-6.0.tar.gz配置:./configure --prefix=/home/install/ncurses --host=arm-hisiv300-linux --with-normal 要生成动态库加--with-shared编译安装:ma...
2019-03-25 17:40:10
1156
转载 理解ffmpeg 中的pts,dts,time_base
PTS:Presentation Time Stamp。PTS主要用于度量解码后的视频帧什么时候被显示出来DTS:Decode Time Stamp。DTS主要是标识读入内存中的bit流在什么时候开始送入解码器中进行解码也就是pts反映帧什么时候开始显示,dts反映数据流什么时候开始解码怎么理解这里的“什么时候”呢?如果有某一帧,假设它是第10秒开始显示。那么它的pts是多少呢。是10...
2019-02-28 16:07:46
2324
转载 C11标准和C++11标准
1、 C语言的C11 标准有哪些改进的地方?会对各类C项目起到哪些帮助?1. 对齐处理操作符 alignof,函数 aligned_alloc(),以及 头文件 <stdalign.h>。2. _Noreturn 函数标记,类似于 gcc 的 __attribute__((noreturn))。3. _Generic 关键词,有点儿类似于 gcc 的 typeof。4. ...
2019-02-26 11:00:36
15934
1
原创 c++ 容器的erase使用
#include <iostream>#include <list>#include <vector>using namespace std;int main(){ vector<int> vec; int i; vec.push_back(0); vec.push_back(1); vec.p...
2019-02-22 17:33:16
502
转载 Linux 查看与修改mtu值
MTU:通信术语 最大传输单元(Maximum Transmission Unit)是指一种通信协议的某一层上面所能通过的最大数据包大小(以字节为单位)。 我们在使用互联网时进行的各种网络操作,都是通过一个又一个“数据包”传输来实现的。而MTU指定了网络中可传输数据包的最大尺寸,在我们常用的以太网中,MTU是1500字节。超过此大小的数据包就会将多余的部分拆分再单独传输 。MTU的设置不是一...
2019-02-21 12:01:51
32275
转载 C++ 拷贝构造函数与赋值函数
这里我们用类String 来介绍这两个函数:拷贝构造函数是一种特殊构造函数,具有单个形参,该形参(常用const修饰)是对该类类型的引用。当定义一个新对象并用一个同类型的对象对它进行初始化时,将显式使用拷贝构造函数。为啥形参必须是对该类型的引用呢?试想一下,假如形参是该类的一个实例,由于是传值参数,我们把形参复制到实参会调用拷贝构造函数,如果允许拷贝构造函数传值,就会在拷贝构造函数内调用拷贝构...
2019-02-20 14:09:46
1902
转载 C++ 各种构造函数的调用方式
c++的类中有5种值得注意的基本的函数:无参构造函数 有参构造函数 拷贝构造函数 赋值函数 析构函数关于析构函数,需要注意的点在上一篇博客里面 c++: 是否会自动delete? 也提到过了,在这里暂时不多说。这篇博客主要记录这3个构造函数、1个赋值函数的调用方式,希望大家学习之后,不但知道如何调用,还可以根据一句话来判断到底调用了几次构造函数。可以通过一个例子来说明,假如我现在...
2019-02-20 14:02:21
2807
转载 H.264 视频的 RTP 载荷格式
H.264 视频的 RTP 载荷格式本文是 IETF 的规范 RFC 6184 的一部分的翻译,该规范 地址。翻译这份文档,主要是为了编写一段用 RTP 传输 H.264 流的代码。本想在网上找一些文章完成任务了事的,但由于个人之前音视频编解码相关的知识比较匮乏,网上找的文章大都没有办法把我的问题讲的很详细很明确,所以就找来了这份 IETF 的规范来学习。当然翻译这份文档的另外的原因是,我认...
2019-02-19 17:01:30
547
原创 雷神开源视音频项目汇总
https://blog.youkuaiyun.com/leixiaohua1020/article/details/42658139#comments
2019-01-17 14:54:57
1103
转载 ffmpeg处理hikvision平台PS流
在多媒体指挥调度系统中,将监控平台的IPC音视频转发到视频会议、视频话机以及直播平台,是一个常见的需求。常见的监控平台在提供的SDK中通常以回调的方式将音视频媒体用复合流的方式送给应用程序。所谓的复合流,安防行业当然以PS流见多,hikvision平台也是如此。 既然是PS流,当然要仔细研究一下iso13818-1规范,本来想自己写PS流的解析代码,但考虑到已经有众多的PS流解析开源代码...
2019-01-15 14:32:35
1669
转载 Android.mk 语法简介
0. Android.mk简介:Android.mk文件用来告知NDK Build 系统关于Source的信息。 Android.mk将是GNU Makefile的一部分,且将被Build System解析一次或多次。所以,请尽量少的在Android.mk中声明变量,也不要假定任何东西不会在解析过程中定义。Android.mk文件语法允许我们将Source打包成一个"modules". modul...
2019-01-11 14:44:43
286
转载 GCC 原子操作实例
/** =====================================================================================** Filename: atomic.c** Description: gcc-4.1.1: Built-in functions for atomic memory access* ...
2018-12-19 17:31:52
668
转载 GCC 原子操作
GCC 提供的原子操作gcc从4.1.2提供了__sync_*系列的built-in函数,用于提供加减和逻辑运算的原子操作。其声明如下:type __sync_fetch_and_add (type *ptr, type value, ...)type __sync_fetch_and_sub (type *ptr, type value, ...)type __sync_fetch_an...
2018-12-19 17:27:18
605
原创 Python 读文件并按十六进制输出
from __future__ import print_functionf = open('test.pcm','rb')n = 0;s = f.read(1)while s: byte = ord(s) n = n+1 print('0x%02x,'%(byte),end='') if n%16==0: ...
2018-12-19 16:21:31
15227
原创 Linux 命令xxd输出十六进制
xxd能将一个给定文件或标准输入转换为十六进制形式,也能将十六进制转换回二进制形式。Usage: xxd [options] [infile [outfile]] or xxd -r [-s [-]offset] [-c cols] [-ps] [infile [outfile]]Options: -a toggle autosk...
2018-12-19 16:04:54
16496
转载 Linux gcc编译和程序运行时头文件及库搜索顺序
一、头文件gcc 在编译时如何去寻找所需要的头文件:※所以header file的搜寻会从-I开始※然后找gcc的环境变量 C_INCLUDE_PATH,CPLUS_INCLUDE_PATH,OBJC_INCLUDE_PATH※再找内定目录/usr/include/usr/local/include(centos7中该目录下是空的)gcc的一系列自带目录/usr/in...
2018-11-29 15:33:08
1619
原创 C++引用ffmpeg出错#error missing -D__STDC_CONSTANT_MACROS / #define __STDC_CONSTANT_MACROS
在报错对应的common.h开头添加如下代码:#ifdef __cplusplus#define __STDC_CONSTANT_MACROS#ifdef _STDINT_H#undef _STDINT_H#endif# include "stdint.h"#endif#ifndef INT64_C#define INT64_C(c) (c ## LL)#d...
2018-11-28 11:04:06
2241
原创 利用configure裁剪编译ffmpeg
ffmpeg按默认配置编译出来的库文件可能很大,如果要在移动端或是嵌入式等设备上使用可能就需要进行裁剪configure配置选项如下: ./configure --prefix=/home/ffinst/ --disable-debug --disable-avdevice --disable-indevs --disable-outdevs --disable-encoders --...
2018-11-28 10:50:28
745
转载 H264解析sps获取分辨率等信息
#include <stdio.h>#include <stdint.h>#include <string.h>#include <math.h> typedef unsigned int UINT;typedef unsigned char BYTE;typedef unsigned long DWORD; UINT Ue...
2018-11-28 10:26:59
1890
转载 Y4M(YUV4MPEG2) 格式文件详解
Y4M 格式详解· 扩展名: .y4m· 格式样例: http://samples.mplayerhq.hu/yuv4mpeg2/YUV4MPEG2 是一种简单的文件格式,它被设计用来保存原始的YCbCr(如 YCbCr 4:2:0, YCbCr 4:2:2, YCbCr 4:4:4等)数据。YUV的来源就来源于色彩空间YCbCr(常用于数字媒体中的彩色编码),YUV常在模拟PAL制传输...
2018-11-28 10:22:16
5836
转载 Linux 定位进程中CPU占用高的线程
一、Top+pstack+gdb的组合拳闲言少述,先直接上操作实例,再做原理讲解。1.1 用top命令找到最占CPU的进程topPID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND22688 root 20 0 1842m 136m 13m S 110.0 0.9 1568:44 test-program1.2 使用pst...
2018-11-19 16:41:32
1618
原创 地图坐标转换C代码
WGS-84:是国际标准,GPS坐标(Google Earth使用、或者GPS模块)GCJ-02(火星坐标):中国坐标偏移标准,Google Map、高德、腾讯使用BD-09:百度坐标偏移标准,Baidu Map使用/* pi: 圆周率。 a: 卫星椭球坐标投影到平面地图坐标系的投影因子。 ee: 椭球的偏心率。 x_pi: 圆周率转换量。 transformLat(doubl...
2018-10-31 15:46:35
1414
转载 Windows 动态链接库DLL
一、概念DLL:Dynamic Link Library,即动态链接库,这种库包含了可由多个程序同时使用的代码和数据。它是microsoft在windows操作系统中实现共享函数库概念的一种实现方式。其中windows中 一些作为DLL实现的文件有:ActiveX控件(.ocx)文件:如windows上的日历控件。 控制面板(.cpl)文件:控制面板中的每一项都是一个专用的DLL。...
2018-10-31 15:24:42
2966
原创 Windows 下的一款弱网模拟工具Clumsy
Clumsy 是一款小巧而功能强大的开源弱网模拟工具,它能在windows平台下人工造成不稳定的网络状况,方便你调试应用程序在极端网络状况下的表现。你可以选择 clumsy 提供的功能来有目的性的调整网络情况:延迟(Lag),把数据包缓存一段时间后再发出,这样能够模拟网络延迟的状况。 掉包(Drop),随机丢弃一些数据。 节流(Throttle),把一小段时间内的数据拦截下来后再在...
2018-10-17 14:16:14
12260
转载 Windows 下的一款弱网模拟工具NEWT
公司软件产品EB的采集端在网络状况正常时,可进行视频直播,但在网络较差时会出现卡顿,现使用NEWT(Network Emulator for Windows Toolkit)模拟延时的网络环境下进行直播测试。 NEWT是一个简单实用的网络模拟工具软件。开始是微软内部为搭建网络模拟服务于网络的研究工作而开发,之后开发维护并将NEWT的核心代码先后成功地转移到了微软的产品Xbox XDK,Games...
2018-10-17 10:22:38
15619
2
原创 Windows 下安装配置Git、Copssh 4.1.0
一、 下载Git下载地址: https://www.git-scm.com/download/Copssh下载地址: https://download.youkuaiyun.com/download/jctian000/10706397 二、 安装Git 安装步骤比较简单,注意安装路径最好不要带空格和中文,其它基本上是保持默认下一步,这里安装在C: \Git目录Copssh 安装前...
2018-10-10 01:08:15
1731
转载 docker 镜像导入导出(import export)和加载保存(load,save)
很喜欢玩docker,但最新遇到一个问题,公司给的新机器的dns有问题,导致pull不下来镜像。没办法了,没有镜像什么神马都干不了,又不能花很多时间去搭建私有的镜像库,只有另寻办法了。废话少说,经过探究,发现 docker 提供把镜像导出export(保存save)为文件的机制,这样就可以把镜像copy到任意地方了。 1. 导出 export - 导入 import格...
2018-09-14 15:52:17
13574
转载 进入Docker容器的4种方式
在使用Docker创建了容器之后,大家比较关心的就是如何进入该容器了,其实进入Docker容器有好几种方式,这里我们就讲一下常用的几种进入Docker容器的方法。进入Docker容器比较常见的几种做法如下:使用docker attach 使用SSH 使用nsenter 使用exec一、使用docker attach进入Docker容器 Docker提供了attach命令来进入...
2018-09-14 15:05:34
559
转载 使用docker搭建开发环境
我的主力机是windows,windows下面有太多提升效率的软件.但是开发的时候不得不使用linux.就单单开发而言.我还是喜欢使用linux.所以就造成了我得在windows下面使用虚拟机.这是最开始的办法.后面得知有vagrant这个东西之后,用了一阵子感觉还不错.但是我使用的时候动不动就会出现一些问题,所以一怒之下决定学学docker.然后使用docker来作为开发环境.使用dock...
2018-09-14 14:32:04
31626
7
转载 八个Docker的真实应用场景
【编者的话】Flux 7介绍了常用的8个Docker的真实使用场景,分别是简化配置、代码流水线管理、提高开发效率、隔离应用、整合服务器、调试能力、多租户环境、快速部署。我们一直在谈Docker,Docker怎么使用,在怎么样的场合下使用?也许本文可以帮到你。有需要交流的地方,可以通过评论与我们交流。 几周前我们参加了DockerCon ,Dockercon是首个以Docker为中心的技...
2018-09-14 13:57:04
1240
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人