自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(59)
  • 资源 (4)
  • 收藏
  • 关注

原创 QObject::startTimer: Timers can only be used with threads started with QThread

写Qt定时器时,老是报如下错误,QObject::startTimer: Timers can only be used with threads started with QThread我自己代码如下:class LiveStream : public QObject{ Q_OBJECTpublic: LiveStream(QObject *parent = 0);...

2020-03-18 13:31:22 6040 1

转载 live555 哈希表

转载于:https://www.acodelife.cn/index.php/category/live555/1.创建static HashTable* create(int keyType);//参数:key类型HashTable* HashTable::create(int keyType){//new一个HashTable的派生类BasicHashTable的对象并返回//调...

2019-09-16 15:17:21 381

转载 LIVE555框架概述(1)

转载于acodelife使用了live555一段时间了,现在主要想总结一下使用的过程,以提高对RTSP/RTP的理解。这篇主要为介绍live555的一些主要目录。LIVE555目录文件[图](https://www.acodelife.cn/index.php/archives/4/)从上图看出,live主要包括UsageEnvironment&TaskScheduler,gr...

2019-08-31 21:35:02 466

转载 VLC移植海思(ARM)平台

转载于:acodelife###概述在ARM平台,可以使用live555和vlc用于RTSP推流。live555代码比较简单,但是单线程,效率不足。因为项目需要,所以交叉编译VLC,用于RTSP服务器。###编译过程1.下载vlc源码vlc源码下载,我使用的是vlc-2.2.1版本。2.配置编译脚本,我的编译脚本如下:#!/bin/sh# for armexport PATH=/...

2019-08-30 17:57:57 3305 2

转载 Ubuntu gedit出错:Failed to connect to the session manager

在Ubuntu下刚才用su到root后,用命令gedit发现会出错:** (gedit:2976): WARNING **: 连接已关闭(gedit:2976): EggSMClient-WARNING **: Failed to connect to the session manager: None of the authentication protocols specified are...

2019-06-13 11:15:57 1233

原创 Ubuntu设置网络

这几天,虚拟机Ubuntu上网络突然不能用了。为了使用方便,得把网络弄好。Ubuntu网络设置有两种方式,但是这两种方式,有冲突。建议桌面系统使用network-manager,服务器版本通过文件/etc/network/interfaces 来配置。我是使用network-manager来配置我的网络。1.确保/etc/network/interfaces文件中只有本地环回的内容,如下:...

2019-06-13 09:32:20 1840 2

原创 海思采集视频边框设置

问题:海思采集视频,四周有一个白色的方框把视频包裹。想除去这个边框。有白色边框的代码:VPSS_CHN_ATTR_S stChnAttr ;//= {0}; stChnAttr.bSpEn = HI_FALSE; stChnAttr.bUVInvert = HI_FALSE; stChnAttr.bBorderEn = HI_TRUE; stChnAttr.stBorder.u32Co...

2019-05-10 15:55:05 1296

原创 MinGW 编译libevent

转载于:www.acodelife.cn背景:想使用Qt Creator 编写libevent小型服务器。使用libevent,添加源码的方式,修改的比较大,所以直接把libevent编译成库使用。因为Qt Creator自带的MinGW编译器,所以需要使用MinGW编译器编译libevent。准备与介绍:MSYS,Minimal GNU(POSIX)system on Window,是...

2019-01-03 20:53:31 2523 1

转载 HI3521D串口使用

转载于:www.acodelife.cn概述因项目需要,需要使用的HI3521D的串口1和串口2,并把串口2作为485使用。海思UART启用因为海思默认启用uart0 ,作为调试串口。所以我们需要说明的是uart1和uart2。uart1:我们进入/dev目录下,发现有uart1存在,编写代码的时候,open /dev/ttyARM1,发现报错No such device or add...

2018-12-17 09:48:20 2012

转载 海思HI3798 Qt的使用

转载于:www.acodelife.cn硬件:HI3798MV200 软件:Qt5.5.1 + linux简述: 在单纯的ARM嵌入式平台编写Qt程序,只需要交叉编译Qt,然后把相应的库移植到平台就可以了。但是在海思平台不行。因为海思还有视频的。海思的视频是显示在视频层,而Qt则显示在图形层。运行Qt应用程序后,会遮挡视频层的视频。因此,在播放视频的窗口,需要隐藏Qt界面。并且在海思上运行起Q...

2018-12-11 19:15:20 4157

原创 c++ 单例模式

单例模式是整个程序中该类只有一个实例。要实现单例模式:1.定义一个该类的静态指针。2.把该类的构造函数和析构函数什么为private属性3.定义两个静态函数,分别为返回该类的静态指针和delete该类的静态指针简单实现代码为:class Config{public: static Config *conInstance() { if(conImp =...

2018-11-28 11:00:57 194

原创 C++ 两个类互相调用

总所周知,我们想要调用一个类,一定要添加他的头文件。例如,class A 调用class B,在class A 头文件中,这样子就可以了。如:A.h#ifndef A_H#define A_H#include "B.h"class A{public: A(); B b;};#endif但是,如果我想class A 调用class B , class B 调...

2018-11-22 15:35:57 8531

原创 海思编码呼吸效应

海思编码–>TS–>播放,在动态画面的时候,播放清晰流畅。在播放静止画面的时候,讲会有画面抖动,出现呼吸效应。查找原因,主要为编码原因。编码的时候将SAMPLE_RC_E 设置为SAMPLE_RC_FIXQP,问题解决。开始设置为SAMPLE_RC_CBR...

2018-11-19 14:20:16 2398 1

转载 视频编码名词参数解释

GOP(Group of Pictures)策略影响编码质量:所谓GOP,意思是画面组,一个GOP就是一组连续的画面。MPEG编码将画面(即帧)分为I、P、B三种,I是内部编码帧,P是前向预测帧,B是双向内插帧。简单地讲,I帧是一个完整的画面,而P帧和B帧记录的是相对于I帧的变化。没有I帧,P帧和B帧就无法解码,这就是MPEG格式难以精确剪辑的原因,也是我们之所以要微调头和尾的原因。GOP 越长...

2018-11-19 14:08:21 1024

原创 tinyxml对xml简单的读写操作

背景:如果xml配置文件存在,直接读取配置,如果不存在需要创建一个xml文件,写入默认的配置的配置。判断xml是否存在#define CONFIG_FILE "conf.xml"void Config::initConfig(){ if(access(CONFIG_FILE, F_OK) != F_OK) { createFile(); }else ...

2018-11-15 14:28:36 986

原创 Qt 中文跑马灯

直接上代码:textticker.h#ifndef TEXTTICKER_H#define TEXTTICKER_H#include <QWidget>#include <QLabel>#include <QString>#include <QTimer>#include <QPen>#include <QFon...

2018-11-07 17:19:19 1706

原创 tinyxml库LoadFile函数出错

TiXmlDocument doc;bool loadOk=doc.LoadFile("config.xml" );//加载文档if ( !loadOk ){ printf( "Could not load test file 'demotest.xml'. Error='%s'. Exiting.\n", doc.ErrorDesc() );}LoadFile ,提示出错。...

2018-10-30 15:06:28 5058 2

原创 QTableWidget获取一行数据

直接上代码:ui->tableWidget->setSelectionBehavior(QAbstractItemView::SelectRows);ui->tableWidget->setSelectionMode(QAbstractItemView::SingleSelection);connect(ui->tableWidget, SIGNAL(cell...

2018-10-28 20:06:10 14929

原创 C++定义全局变量

1.创建一个.h和同名的.cpp文件在.h中声名extern int a ;关键字在于extern;在.cpp中定义int a ;2.别的类使用这个变量,只需要添加.h头文件,即可使用

2018-10-28 07:50:34 6204 1

原创 vs2015 安装破解版Visual Assist X

1.下载破解版的Visual Assist X 下载地址2.解压文件,安装VA_X_Setup3.用Crack目录下的VA_X.dll替换VA_X_Setup安装目录下的VA_X.dll4.用Crack目录下的VA_X.dll替换vs2015的目录,我的在C:\Users\Administrator\AppData\Local\Microsoft\VisualStudio\14....

2018-10-27 09:13:01 1630

原创 Ubuntu启动 filesystem check or mount failed

整Ubuntu输入法原因,系统不能正常启动了。黑屏显示Filesystem check or mount failed. A maintenance shell will now be started. CONTROL-D will terminate this shell and continue booting after re-trying filesystems. Any f...

2018-10-12 14:52:46 1166

原创 HI3521D 应用程序更改系统IP

正常思路是修改linux系统文件,海思HI3521D文件系统里面没有,也不做添加这些文件的尝试了。我的思路: 1.建立一个network.sh脚本#!/bin/shifconfig eth0 192.168.1.148 netmask 255.255.255.0route add default gw 192.168.1.1在启动文件/etc/init.d/rcS中,执行该...

2018-09-17 09:25:59 667 1

原创 HI3521D 系统(uboot,kernel,rootfs)打包成一个烧录文件

1.准备文件系统 a.在osdrv/pub/中有已经编译好的文件系统(rootfs_uclibc),因此无需再重复编译文件系统,只需要根据单板上flash的规格型号制作文件系统镜像即可。b.往rootfs_uclibc中,添加自己项目的应用程序,相关库,相关配置c.制作文件系统nand flash 信息:2KB pagesize、4bit ecc即:mkyaffs2imag...

2018-09-14 14:24:19 3620 1

原创 HI3521D 烧录128M nand flash文件系统

1.nand flash信息:SPI Nand(cs 0) ID: 0xef 0xaa 0x21 Name:"W25N01GV"Block:128KB Page:2KB Chip:128MB*1 OOB:64B ECC:4bit/512 2.准备工作 编译好的uboot,kernel,rootfs 我使用的是海思的u-boot-hi3521d.bin,uImage_hi3521d...

2018-09-12 13:48:08 2395

原创 视频压缩编码的一些概念

视频编码压缩的类型:1.无损压缩 无损压缩利用数据的统计冗余(数据之间的相关性和可预测性)进行压缩,以预测编码和熵编码为基础,可完全恢复原始数据而不引起任何失真,压缩比一般不超过10:1 无损压缩应用于一些特殊应用场合的图像数据如,指纹图像,医学图像等的压缩 2.有损压缩 有损压缩最主要的压缩措施是量化处理,合并和丢弃一些不重要的信息,在实际编码中,往往是有损压缩和无损压缩的综合使用,...

2018-09-09 21:36:05 1426

原创 c++ friend

C++中的friend关键字作用: 在一个类中用friend申明其他的类或函数,申明的类或函数能够直接访问该类中的private和protected成员。class Pack{ private: std::string data ; int size ; public: pack(std::string s_data,i...

2018-08-30 17:52:49 693

原创 ubuntu14.04 nfs配置portmap错误

具体的错误忘记了,与nfs的portmap相关。 解决办法: 把rpcbind设置成开机自启动,在setup中设置, 然后把/etc/init.d/rpcbind start 添加到/etc/rc.local中,重启系统。 再次查看就是running状态了...

2018-08-30 15:55:10 655

原创 ctime()函数

ctime函数在C库中,头文件为int main(){ struct timeval tvNow; gettimeofday(&tvNow, NULL); static char timeString[9]; // holds hh:mm:ss plus trailing '\0' time_t tvNow_t = tvNow.tv_sec; ...

2018-08-30 10:52:48 7287

原创 python系列八 python类

相关概念面向对象编程是最有效的软件编写方法之一。 在python中创建一个类和对象是很容易的。 根据类来创建对象被称为实例化。而,什么是类,什么是对象? 类(Class): 用来描述具有相同的属性和方法的对象的集合。它定义了该集合中每个对象所共有的属性和方法。对象是类的实例 对象:类定义的数据结构实例。对象包括两个数据成员(类变量和实例变量)和方法创建和使用类我们创建一...

2018-08-22 23:09:09 206

原创 python系列七 python函数

1、函数定义: *函数是带名字的代码块,用于定义具体的工作 *需要在程序中多次执行同一项任务时,你无须反复编写完成该任务的代码,而只需定义一个执行该任务的函数,反复调用 *通过使用函数,程序的编写,阅读,测试和修复都将更容易定义一个简单函数def print_user(): print("Hello!")print_user()>>说明:...

2018-08-20 23:29:29 221

原创 UDP组播服务器

因为项目需要组播发送TS流,所以自己写了一个组播服务器。组播传输:数据发送者(源数据)将同一数据发送到多个接受者(组播组成员)。无论有多少个接受者,在整个网络链路上,只有一份该数据(在特殊场合,可以节省带宽,减少主干网络阻塞)。组播报文的目的地址使用的是D类IP地址(224.0.0.0到239.255.255.255)。使用组播时,注意参数,生命周期(TTL,Time to live)...

2018-08-19 18:27:29 3205

原创 python系列六 python结构语句

python语言跟别的语言一样(比如C语言)有三种结构化语句,分别为if,for,while。下面分别介绍:  if语句        编程时,经常需要检查一系列条件,并据此条件成立与否去采取什么样的操作。在python中,用if语句检查当前条件的成立与否。 a.   if conditional_test :           ​do something  说明:...

2018-08-08 23:08:59 264

原创 python系列五 字典

dict:dict全称dictionary,在别的语言中叫Map,是一种使用键-值对的方式来存储数据,具有极快的操作速度,存储信息量几乎不受限制。使用{}来标识字典。下面介绍字典(定义,查询,增加,删除,修改...) 一个简单字典,比如根据学生的名字查找对应成绩       2.访问字典中的值    要获取与键相关联的值,可依次指定字典名和放在方括号[]内的键,如下...

2018-08-08 21:42:02 262

原创 程序一运行,就出现Segmentation fault

交叉编译后,运行程序,程序一运行,就出现Segmentation fault。在main函数开头加入打印调试,发现程序都没有进入main函数就出错。猜测:估计是类的初始化调用构造函数或者全局变量的初始化引起的错误。 一步一步的屏蔽,最终发现是一个全局变量分配的内存太大,引起的错误。...

2018-08-06 14:41:29 8112

原创 ffmpeg 静态库使用,undefined reference错误

home/3521dWork/3521dCode/hisiApp/ffmpeg/hisi_lib/libavformat.a(os_support.o): In function `resolve_host':/home/3521dWork/ffmpeg/ffmpeg-0.5/libavformat/os_support.c:69: warning: gethostbyname is obso...

2018-08-06 11:21:53 2577 3

原创 HI3521D外接audio codec转I2S音频采集

经过几天的不断的阅读文档,问人,尝试终于调试成功。反过来一想,原来如此简单。1.硬件原理图a.外接codec部分b.时钟MCLK部分,由海思提供c.海思对接codec部分  对原理图的理解:外接codec通过由海思GPIO9_3/I2S2_MCLK连接MCLK引脚提供时钟,I2S的SD,WS,BCLK线连接海思I2S0的SD,WS,BCLK。2.寄存器配...

2018-08-02 14:36:09 4541 7

原创 Qt Creator 配置.pro使多平台使用

因为做海思程序开发,部分程序又想在pc-linux上调试,于是配置pc,hisi-arm两个kit。在.pro中添加LIBS,有pc版本的库和海思版本的库。怎样我选择不同的kit的时候,能去选择链接相对应的库?在网上查找资料,找到一个实验成功的办法。 在.pro中定义一个宏,然后通过条件判断区分选择的kit。代码如下:INCLUDEPATH += glog/glogIN...

2018-07-20 11:15:49 1236

原创 glog日志库移植到海思3521d

1.下载glog,因为google访问不了,是在git下载的。2.解压glog-0.3.3.tar.gz3.配置configure,可以先./configure --help试试配置参数:./configure --host=arm-hisiv500-linux --prefix=/home/3521dWork/glog/hisi_glog4.编译并安装make &...

2018-07-19 17:28:29 679

原创 hi3521D编译ffmpeg

1.安装yasm这里我是直接通过ubuntu包安装的,当然也可以通过编译源码来安装。sudo apt-get install yasm2.下载FFmpeggit clone https://git.ffmpeg.org/ffmpeg.git3.配置configure./configure --target-os=linux --prefix=/home/3521dWork/...

2018-07-19 16:45:40 870 1

原创 海思3521D编译Qt5.2.1

1.下载Qt源码http://download.qt.io/archive/qt/5.2/5.2.1/single/2.安装海思SDK,编译链,参考海思文档。3.解压qt-everywhere-opensource-src-5.2.1.tar.gz4.创建qmake.conf,设置交叉编译工具链             a.进入/qt-everywhere-opensource-s...

2018-07-19 11:43:42 1616

Visual Assist X for 2008

Visual Assist X VS2005/VS2008 内含注册机,先安装VA_X_Setup1624.exe,然后再运行注册机Patch.exe,打上破解补丁即可。无需添加注册码。内涵使用步骤。

2019-04-10

live555 Qt工程

此源码为linux下live555的Qt工程,可添加进Qt Creator ,编译使用。

2018-08-28

live555通过读取内存发送h264视频

本资源是通过live555读取内存发送h264视频,源码本人亲自测试通过,但是使用时需要自己整理。

2018-07-15

live555通过读取内存发送aac音频

本资源是aac音频通过live555读取内存发送源码,源码本人亲自试用可行,但需要添加进自己项目。

2018-07-15

空空如也

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

TA关注的人

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