- 博客(134)
- 资源 (15)
- 收藏
- 关注
原创 C++——右值引用
在c++中,临时对象不能作为左值,但可以作为常量引用const & ++i = 3; // ok i++ = 3; // error C2106: “=”: 左操作数必须为左值1.新标准为c++带来了一个新的左值类型:带名右值引用(T&& 这是一个左值,只不过她的类型是右值引用,只能绑定右值 );带来了一个新的右值类型:无名右值引用 (std::mo...
2018-06-01 11:24:42
375
原创 C++——深拷贝、浅拷贝
#include <iostream>using namespace std;class CExample {private: int a;public: CExample(int b) { a=b;} void Show () { cout<<a<<endl; }};in...
2018-06-01 10:00:14
335
转载 线程和进程
https://www.cnblogs.com/wuchanming/p/3992395.html?utm_source=tuicool&utm_medium=referral进程是系统分配资源的基本单位,同一进程中的所有线程共享该进程的所有资源。 进程可以包含多个线程。 进程拥有资源,线程不拥有,但可以访问。互斥:线程间访问资源的排他性。 同步:线程间的制约关系,一个线程的...
2018-05-24 16:11:18
334
转载 大端和小端
https://www.cnblogs.com/berry/articles/1588084.html大端:高字节存储在低地址,低字节存储在高地址 小端:高字节存储在高地址,低字节存储在低地址intel芯片是小端存储;单片机是大端存储...
2018-05-24 15:39:25
3396
转载 使用移位运算和加减法实现乘除法
https://blog.youkuaiyun.com/yabiaoao/article/details/51088740
2018-05-24 10:00:30
7619
原创 字符串倒序和单词逆置
字符串倒序#include <stdio.h>#include <string.h>char* str_reverse(char* str){ int n = strlen(str) / 2; int i = 0; char tmp = 0; for(i = 0; i < n; i++) { t...
2018-05-22 11:24:06
1389
原创 删除字符串中的子串
输入2个字符串S1和S2,要求删除字符串S1中出现的所有子串S2,即结果字符串中不能包含S2。 输入样例: Tomcat is a male ccatat cat 输出样例: Tom is a male#include<stdio.h>//Tomcat is a male ccatat//catint main (){ char s1[81], s2[8...
2018-05-22 10:45:16
15435
2
原创 c语言——变量的地址
#include &lt;stdio.h&gt;#include &lt;stdlib.h&gt;#include &lt;string.h&gt;void main(){ char s[] = "123456"; char d[] = "123"; printf("%d %d\n&
2018-05-21 18:33:09
4780
1
原创 printf("%f",5)的输出结果
#include <stdio.h>void main(){ printf("%f\n",5); printf("%d\n",5.01); printf("%f\n", (float)5); printf("%f\n", 5.f);}printf函数不会进行任何类型转换,它只是从内存中读出你所提供的元素的值(按照%d,%f...
2018-05-17 08:50:01
4917
原创 卷积神经网络学习2
经典结构: 感受野:类似神经元只接受其所支配的刺激区域内的信号。 分布式表示:每个语义概念由许多分别在不同神经元中被激活的模式表示,而每个神经元又可以参与到不同的语义概念的表示中去。即“分布式表示”与神经元是一个多对多映射。如输入图像为224*224,最后一层汇合层可得到7*7*512的响应张量,512为最后一层卷积核的个数,对应了512个不同的卷积结果(512张特征图或通道)。对于某个模...
2018-05-13 11:28:09
471
原创 卷积神经网络学习1
综述: CNN—&amp;gt;深度学习—&amp;gt;表示学习—&amp;gt;机器学习—&amp;gt;人工智能 机器学习是人工智能的一个分支,致力于研究如何通过计算的手段,利用经验来改善计算机自身的性能,通俗点就是机器的自我学习:利用经验提取出特征,利用特征构建模型。 特征的提前是复杂的过程,机器自动提取叫做“表示学习”,深度学习是其中的一个经典代表。 深度学习:输入为原始数据,经过层层抽象将自身任务所需的特征提...
2018-05-12 21:56:28
2981
原创 c语言基础题
指针和引用: 引用是一个对象的别名,没有分配内存,但指针有内存;引用必须初始化,与对象绑定,但指针可以不初始化;引用初始化后不能改变与其绑定的对象,但指针可以指向新的地址。int a,b,*p,&r=a;//正确r=3;//正确:等价于a=3int &rr;//出错:引用必须初始化p=&a;//正确:p中存储a的地址,即p指向a*p=4;//正确:p中存的是a...
2018-05-11 21:53:32
197
原创 线程同步、条件变量pthread_cond_wait
linux下的c语言编程有多种线程同步机制,最典型的是条件变量(condition variable) pthread_cond_init (pthread_cond_t *cond, const pthread_condattr_t *attr);//创建条件变量 pthread_cond_wait (pthread_cond_t *cond, pthread_mutex_t *mutex)...
2018-05-11 10:50:51
302
转载 static和extern
c语言中的 static: 修饰局部变量:存放在静态数据区,生命周期位整个程序结束,但作用于仍为函数局部。 修饰全局变量:无法被同一工程其他源文件访问。 修饰函数:与全局变量类似。 extern:可被同一工程其他源文件访问c++中static: 修饰类中函数:表示该函数属于一个类,而不是此类的任何特定对象。 修饰类中变量:表示该变量为所有对象所有,在存储空间中只有一个副本。要调...
2018-05-10 15:19:15
1436
原创 C++——多线程互斥锁
#include&lt;Windows.h&gt;#include&lt;iostream&gt;using namespace std;DWORD WINAPI MyThread2(LPVOID lpParamter){ while (1) { cout &lt;&lt; "MyThread2 Runing" &lt;
2018-05-10 15:05:42
865
原创 ffmpeg——无法生成ffplay
在ubuntu中安装ffmpeg 以前的ubuntu中编译ffmpeg时,无法生成ffpaly,这次安装了SDL2,重新编译就有ffplay。 下载解压SDL2安装包,进入目录:./configure make make install 用以下程序验证是否能用SDL的相关函数:#include <stdio.h>#include </usr/in...
2018-05-08 15:44:24
631
原创 ffmpeg——ffserver的一个简单demo
ffmpeg和ffserver配合使用可以实现实时的流媒体服务。ffmpeg,负责媒体文件的transcode工作,把你服务器上的源媒体文件转换成要发送出去的流媒体文件。ffserver,负责响应客户端的流媒体请求,把流媒体数据发送给客户端。ffserver.conf,ffserver启动时的配置文件,在这个文件中主要是对网络协议,缓存文件feed1.ffm(见下述)和要发送的流媒体文件...
2018-05-08 15:36:31
10529
3
原创 ffmpeg——decodevideo的一个demo
doc\examples文件夹中的decode_video.c为例: main—>avcodec_find_decoder—>av_parser_init—>avcodec_alloc_context3—>avcodec_open2—>av_parser_parse2—>decodeint main(int argc, char **argv){ ...
2018-05-08 11:00:09
2883
原创 ffmpeg——url初始化
URLContext中是对具体资源文件进行操作的上下文,URLProtocol则是在将资源进行分类的基础上,对某一类资源操作的函数集。typedef struct URLContext { const AVClass *av_class; /**< information for av_log(). Set by url_open(). */ const struc...
2018-05-08 10:58:27
1688
原创 ffmpeg——rtsp
void av_url_split(char *proto, int proto_size, char *authorization, int authorization_size, char *hostname, int hostname_size, int *port_ptr, ...
2018-05-08 10:05:37
904
原创 字符串数组
一,初始化 定义一个数组char a[10]; 怎么给这个数组赋值呢? 1、定义的时候直接用字符串赋值 char a[10]=”hello”; 2、对数组中字符逐个赋值 char a[10]={‘h’,’e’,’l’,’l’,’o’}; 3、利用strcpy char a[10]; strcpy(a, “hello”);易错情况: 1、char a[10]; a[10]=”h...
2018-05-08 09:29:46
988
原创 url
http://mail.163.com/index.html1)http://:这个是协议,也就是HTTP超文本传输协议,也就是网页在网上传输的协议。2)mail:这个是服务器名,代表着是一个邮箱服务器,所以是mail.3)163.com:这个是域名,是用来定位网站的独一无二的名字。4)mail.163.com:这个是网站名,由服务器名+域名组成。5)/:这个是根目录,也就是说...
2018-05-08 09:07:04
222
原创 c++——多线程
头文件#include<pthread.h>函数声明int pthread_create(pthread_t *tidp,const pthread_attr_t *attr,(void*)(*start_rtn)(void*),void *arg);参数 第一个参数为指向线程标识符的指针。 第二个参数用来设置线程属性。 第三个参数是线程运行函数的起始地址。 ...
2018-05-07 16:11:24
193
原创 cc gcc g++
gcc:GNU Compiler Collection,原名为Gun C语言编译器,因为它原本只能处理C语言,但gcc很快地扩展,包含很多编译器(C、C++、Objective-C、Ada、Fortran、 Java),可以说gcc是GNU编译器集合。g++ 是C++编译器。cc 是 Unix系统的 C Compiler,一个是古老的 C 编译器。而 Linux 下 cc 一般是一个符号连...
2018-05-07 15:24:15
371
原创 GDB
下载安装gdb,sudo apt-get install gdb(先要sudo apt-get update )如有tst.c文件,cc -g tst.c -o tst后生成tst文件gdb //进入gdbfile tst //gdb进入tst文件r //运行runb 18 //在第18行打断点b main //在main()函数的开头设置断点c //继续运行...
2018-05-07 14:51:01
321
原创 ffmpeg——TS流解析
RTSP(Real Time Streaming Protocol),实时流传输协议,是TCP/IP协议体系中的一个应用层协议,该协议定义了一对多应用程序如何有效地通过IP网络传送多媒体数据。RTSP在体系结构上位于RTP和RTCP之上,它使用TCP或UDP完成数据传输。实时传输协议RTP(Real-time Transport Protocol)是一个网络传输协议,RTP协议详细说明了在互联...
2018-05-07 09:34:20
8148
原创 ffmpeg——ts相关信息
1.ES PES TS TS流与PS流的区别在于TS流的包结构是固定长度的,而PS流的包结构是可变长度。 PS包与TS包在结构上的这种差异,导致了它们对传输误码具有不同的抵抗能力。在信道环境较为恶劣,传输误码较高时,一般采用TS码流;而在信道环境较好,传输误码较低时,一般采用PS码流。由于TS码流具有较强的抵抗传输误码的能力,因此目前在传输媒体中进行传输的MPEG-2码流 基本上都采用了TS...
2018-05-07 09:30:29
1591
原创 数据结构——树
http://blog.51cto.com/9291927/2068745树的定义:除根结点以外的其他结点划分为m(m>=0)个互不相交的有限集合。 树的度、前驱和后继、层次、有序性 森林(多个互不相交的树)...
2018-05-04 18:01:39
157
原创 视频播放出现卡顿原理
视频卡顿的原因: 1.ddr频率不够 2.其中一个模块太慢 3.堵车了重点以rkvdec分配的带宽不够进行分析: 可能有三个原因: a.ddr剩余的带宽超过rkvdec所需的 b.由于每次读取不只读取所需的,比如你需要10个,但会读取100个,造成带宽浪费 c.跳转浪费,比如宏块的上下行像素并不是连续存储的,需要跳转。以4K/60HZ(10bits)的片源为例:3840*...
2018-05-04 10:09:42
10188
原创 ffmpeg——h263、mpeg2、hevc
gstlibav中h263、mpeg2、hevc中decode_frame这个函数。 以下是h263的参考帧和DPB变化过程:
2018-05-04 10:01:37
1658
原创 ffplayer——dlopen dlsym dlclose
函数说明: http://www.cnblogs.com/Anker/p/3746802.htmlDecoderVideo::initVpuCodecContext(VpuCodec** vpu_codec){ c->open_codec = (VpuCodecOpenFactory) dlsym(gRkVpuLibHandle, "vpu_open_context");//...
2018-05-03 08:52:00
365
原创 mpp——编译和运行
一,编译 1.用secureCRT登陆服务器,然后进入mpp/build/android/arm文件 2.vim make-Android.bash(该步骤用于修改NDK路径,若路径正常则不用管) 3.source make-Android.bash(或./make-Android.bash)//生成libmpp.so和libvpu.so二,运行 在cmd中操作 1.adb remo...
2018-05-03 08:47:05
4051
3
原创 ffplayer——FFMPlayer::start() FFMPlayer::stop()
status_t FFMPlayer::start(){ int status = getCurrentStatus(); if (status == PLAYER_PREPARED) { if (mMessageQ.get() != NULL) { enqueueMessage(new MessageStart(NULL)); //创建类...
2018-05-03 08:45:52
777
原创 ffplayer——说明
prepareAsync:主线程不断产生packet,放入PacketQueue* mQueue;//av_read_framestart:视频解码形成从mQueue中取出一个packet,然后对此包进行操作://decode 在mpp中,该packet会进入mpp_list *mPackets;//decode_sendstream 从mpp_list *mFrames中...
2018-05-02 15:38:13
2898
原创 ffplayer——render流程和buffer分配
采用显示和解码共享内存机制,相比较与旧的机制有速度快、IO吞吐量低的特点。在主线程中: FFMPlayer::prepareVideo()–>initRender(mColorFormat, 0,HW);—–>checkReAllocateBuffers(decoderType, isInfoChange);———->mNativeWindowBufferAll...
2018-05-02 15:37:46
1191
原创 ffplayer——显示线程Threadproc(start)
status_t FFMPlayer::doStart(){ if (pfrmanager) { pfrmanager->start(this); pfrmanager->play(); } SAFE_CALL_STARTASYNC(mDecoderVideo); ret...
2018-05-02 15:36:15
524
原创 ffplayer——消息线程sched_thread(setDataSource)
status_t FFMPlayer::setDataSource(int fd, int64_t offset, int64_t length){ startMessageQueue();//消息队列 mFd = fd;//int FFMPlayer::mFd; mUri = &path[0]; mOffsetLength = length;...
2018-05-02 15:35:38
358
原创 ffplayer——视频解码线程startThread(start)
FFMPlayer::start()会调用enqueueMessage(new MessageStart(NULL));创建类型为CMD_START的meg,然后将该meg放入mQueue。根据meg的类型会调用FFMPlayer::doStart(),该函数会调用SAFE_CALL_STARTASYNC(mDecoderVideo);即DecoderVideo::startAsync()...
2018-05-02 15:34:53
515
adb_1.0.39.exe
2018-04-27
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人