- 博客(45)
- 资源 (9)
- 收藏
- 关注
原创 input子系统结合键驱动实现ls命令
怎么写符合输入子系统框架的驱动程序?input_dev结构体信息如下struct input_dev { void *private; const char *name; const char *phys; const char *uniq; struct input_id id; unsigned long evbit[NBITS(EV_MAX)]; // 表示能...
2019-12-09 01:06:12
293
原创 UART --1 硬件原理
1.串口作用: 打印调试信息 ,外接各种模块2.相关参数: 波特率: 双方约定的每一位占据的时间 t 1/t 数据位, bit0 ,bit1......bit7 停止位,:高电平 校验位 :偶/奇校验3.怎么发送 1 bit? 例如 arm 写 1bit到 pc 机 ...
2018-07-04 22:58:49
1826
原创 青春吐芳华
因为幸福很难,被善待很难,所以更懂得珍惜和爱护。电影《芳华》里头的故事,由于没经历过那个属于他们的特殊年代,有些情感肯定是体会不到,但或多或少的也能再他们的芳华中看到一些自己的影子。在观影中,几度要泪奔。打动人心的往往就是那些最真挚,真诚,纯朴的感情:小萍与她父亲,虽多六岁后就分离,那份深埋在记忆深处的执念却未曾减少,也逐渐的成为彼此继续前行的精神寄托。刘峰,这个'活雷锋',放
2017-12-18 11:44:40
463
原创 回首第一份工作
不知不觉,已经工作了一年有余。想想去年这个时候,愣头青样的high投简历,四处撞壁,终于被xxx所录用,激动了好几天后就开始了机械般的打卡上下班的日子。其实起初对于这份工作还是很有干劲的,因为要学习使用一些相关的软件,还有很多学习资料,大牛博客,代码要看要学,所以呢,在前面几个月的 时间里加班也比较多,自然而然的对工作内容也更加的得心应手了,也就没有了那种刚工作时的恐慌,回头看那会自己真是搞笑,生
2017-07-19 14:53:58
394
原创 Error:(16, 0) Gradle DSL method not found: 'android()'
原文错误提示:Error:(16, 0) Gradle DSL method not found: 'android()'Possible causes:The project ‘XXXXXXX' may be using a version of Gradle that does not contain the method.Open Gradle wrapper fileThe
2017-07-06 13:47:15
389
原创 标签使用
先上一下实现效果图:public class tttab extends TabActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); //setContentVie
2017-07-05 10:09:37
365
原创 AutoCompleteTextView 自动填充文本框
实现如图:xml: <AutoCompleteTextView android:id="@+id/myAutoCompleteTextView" android:layout_width="fill_parent" android:layout_height="wrap_content" />java:public class A
2017-06-20 20:04:47
402
原创 Spinner
效果图如下:XML: <Spinner android:id="@+id/spinner_1" android:layout_below="@+id/Sprinner_text" android:layout_width="fill_parent" android:layout_height="wrap_content
2017-06-20 17:31:21
405
原创 Table Layout
每一行为一个TableRow对象,或一个View控件。 当为TableRow对象时,可在TableRow下添加子控件,默认情况下,每个子控件占据一列。有多少个TableRow对象(或View控件),就有多少行TableLayout的列数等于含有最多子控件的TableRow的列数。如第一TableRow含2个子控件,第二个TableRow含3个,第三个TableRow含4个,那么该Tab
2017-06-16 17:57:08
335
原创 喝完鸡汤压压惊
最近遇到了一种现象,就是在做项目的过程中,脑袋里明明有了思路,却老是这忧愁那,总是觉得不能够把这功能实现,试着找到更好的方法去实现,但这最后却导致了项目一直停在原地不到,过了半天却发现自己并没干什么卵事,时间就这样白白的过掉了。也许这就是天秤座本该有的性格,犹豫不觉,想的太多....其实在大学的时候我就发现我有这个缺点了,怎么说呢,这有利也有弊吧。考虑的多就想的更加周到,做起事来的时候也就更有
2017-04-10 23:12:25
596
原创 FLV 提取 aac
前面的操作 分析 flv 头 tag 头 和视频解析是一样的就不多诉。因为 flv中音频数据是没有 adts头的 所以要在 第一个音频包 提取信息然后自己构建一个adts头 添加到没帧aac数据之前 //在flv中第一帧struct FLVAACADST{ unsigned char SamplIndex1:3; unsigned char OBjecttype:5;//2
2017-03-16 17:21:52
1210
原创 TS 解析 h264 aac 保存到文件
Program Association Table :节目相关表 pid ==0x 00Program Map Table: 节目映射表有效载荷起始符: ptr [1] &=0x40 后>>4 即 看 47后面 0 4 6 0:没有pes头 else 有步骤:1. 解析 PAT 找到 PMT pid。
2017-03-16 16:54:04
1063
原创 FLV文件分析 --2(提取h264数据)
首先得跳过 9字节的FLV文件头,然后在分析tag头 (11 字节)确定是否为视频 tag. 09:视频 08:音频00 00 2D: tag data size:(并不全是h264裸流,还有些一下其他信息)蓝色部分即为 tag data 区:第一个字节分析 : 17 c=fgetc(myopen); video_type=(c&0xf0); video_t
2017-03-10 11:51:03
1245
原创 FLV文件分析--1 (头部分析)
FLV是一个二进制文件,简单来说,其是由一个文件头(FLV header)和很多tag组成而每个tag又由tag header和tag data组成。FLV文件头由9bytes组成:typedef struct{ char Signature[3]; // 前3个bytes是文件类型,总是“FLV”,也就是(0x46 0x4C 0x56)。 char Version;
2017-03-10 11:14:55
1140
原创 h264 nalu分析
原理H.264原始码流(又称为“裸流”)是由一个一个的NALU组成的。他们的结构如下图所示。H.264码流第一个 NALU 是 SPS(序列参数集Sequence Parameter Set)H.264码流第二个 NALU 是 PPS(图像参数集Picture Parameter Set)H.264码流第三个 NALU 是 IDR(即时解码器刷新
2017-03-03 14:40:03
605
原创 aac adts 格式分析
ADTS全称是(Audio Data Transport Stream),是AAC的一种十分常见的传输格式。它的结构如图:ADTS 头有七个字节 中相对有用的信息 采样率、声道数、帧长度 供给硬件解码使用:主要由以下结构:同步头: 总是0xFFF, all bits must be 1,代表着一个ADTS帧的开始(buf[0]==0xff)
2017-03-02 18:00:53
655
原创 LINK : fatal error LNK1158: 无法运行“cvtres.exe”
在win7的64位操作系统装vs2010遇到了无法运行”cvtres.exe”。解决办法:重新下载cvtres.exe。替换Microsoft Visual Studio 10.0\VC\bin\cvtres.exe。
2017-03-02 09:38:36
3603
原创 NetSdkDe2.0 右键弹出cmenu菜单类
在视频窗口点击右键 弹出菜单选项如下:实现过程:step1:在资源视图中Menue中添加一个 Menu类 设置ID为 IDR_MENU_LIVEstep 2:在liveWin.cpp中添加 右键弹起消息处理函数 ON_WM_RBUTTONUP() 并设置菜单选项可选以及不可选操作void CLiveWndChn::OnRButtonUp(UINT nF
2017-02-24 11:20:49
432
原创 NetSdkDemo - 界面属性 和大小设置
1.设置 DlgTool 属性 style :child (否则界面不在里面)border : none主界面属性:border :resizing(不设置拖动鼠标不能改变大小)2. 在主界面初始化CNetDemo20Dlg::OnInitDialog() 中添加初始化函数 m_dlgTool.Create(IDD_DLG_TOOL,this); m_dlgTool.Sh
2017-02-24 10:59:06
783
原创 MFC学习——NetSdkDemo2.0 相关
1.界面设置属性设置,以及主界面大小设置2.CMenu类 菜单资源3.按键设置控制云台,4.标签控制 TabControl
2017-02-24 10:30:28
724
原创 小结一下2016
如果说大学那几年用安逸来形容的话,那今年可得算的上奔波和操劳(至少对我我这种习惯了懒散的一类),曾经我的一个好哥们(闺蜜)说过一句话,那些曾经你所挥霍的早晚你得补回来。那个时候她说她现在很后悔之前总是喜欢睡懒觉,各种拖延,后来发现自己似乎拉下了周围了人 一大截,然后就疯狂的早起,加自习到很晚。我听后感觉无地自容,因为她所说的喜欢睡懒觉也只是睡到个八九点...那时我也很自卑,觉得那只不过是他们那些上
2017-01-19 16:52:18
378
原创 Edit类应用实例——编辑框的创建
1.在对话框模板 IDD_EXAMPLE21_DIALOG中 添加一个编辑框, ID 设为 IDC_MULTI_LINE_EDIT,属性Multiline 设置为 true。 2.为编辑框 IDC_MULTI_LINE_EDIT添加 CEdit类型的控件变量 m_editMultiLine。3.修改 CExample21Dlg::OnIn
2017-01-18 13:41:09
576
原创 对话框类的数据交换
首先为对话框中的控件添加变量 1.在编辑框上点右键,在右键菜单中选择―Add Variable‖。2.编辑框关联一个 int 类型的变量。3在―Variable name‖中写入自定义的变量名。 在 AdditionDlg.cpp中 CAdditionDlg 的 DoDataExchange()函数的函数体中多了三条DDX_Text 调用语句。
2017-01-17 17:14:25
384
原创 ts 协议解析
1. Ts 包工具用UltraEdit 打开ts文件,如果打开的时候发现是一堆乱码,按Ctrl +H,以16进制形式打开。2.1分析第一个ts包先取第一个188个数据: 47 60 00 10 00 00 B0 0D 00 00 C1 00 00 00 01 E081 0C 8C BE 32 FF FF ……………………………..…………………………………………………………
2017-01-09 13:54:34
1203
原创 远方的路。。。。
把青蛙扔到沸水里时,它能猛的跳出来,从而逃生;而把青蛙放在温水里,它就会在温水里死去。回首自己,发现已然变成了那只在温水里的青蛙,没有了刚工作那会儿的干劲,没有时刻保持着清醒的头脑和高度的警觉,反而又回到了大学那个贪图安逸舒适醉生梦死的生活状态。纵容心中有多麽宏伟的蓝图,没有行动作为基础,那也只不过是个梦想的东西罢了。现在的我和大学时代又有什么区别呢,脑海里整天想着成为怎么这么nb的样子,懂这个懂
2017-01-04 10:06:37
423
原创 linux下 安装 显卡驱动遇到的问题
You appear to be running an X server; please exit X before installing.解决方法:按住ctrl+alt+F1 进入控制台 sudo init 3 注意空格 会做掉x rm /tmp/.X* 上面的命令是删掉X 的锁文件 再次cd 到.run文件所在目录 再次执行 sudo ./
2016-12-16 17:44:24
509
原创 H264码流中 分离和解析 nal
H.264码流解析的步骤就是首先从码流中搜索0x000001和0x00000001,然后再分离出NALU;分析NALU的各个字段。找到00 00 01 或 00 00 00 01 if (3 != fread (Buf, 1, 3, h264bitstream)){ free(Buf); return 0; } info2
2016-12-13 11:46:58
581
原创 显示编辑框的内容
1.用windows APISetDlgItemText(IDC_SAVE_EDIT, strFilePath);2.先给编辑框关联变量, 然后再使用UpdateData()函数 step1:在编辑框上点右键,在右键菜单中选择―Add Variable‖。弹出添加成员变量的向导对话框。step2:我们想为其添加值变量而不是控件变量,所以对话框中―Ca
2016-12-06 14:11:43
1244
原创 文件对话框的创建
文件对话框分为打开文件对话框和保存文件对话框, 打开文件对话框用于选择要打开的文件的路径,保存文件对话框用来选择要保存的文件的路径。 CFileDialog 类的构造函数原型如下:explicit CFileDialog(BOOL bOpenFileDialog, // 指定文件对话框的类型。 TRUE :打开文件对话框,else:保存文件对话框
2016-12-06 10:56:29
340
原创 error while loading shared libraries: libavdevice.so.57: cannot open shared object file: No
在运行 ffmp时出现的问题error while loading shared libraries: libavdevice.so.57: cannot open shared object file: No such file or directorystep1: vi /etc/ld.so.confinclude ld.so.conf.d/*.conf/usr/l
2016-11-30 15:53:43
1867
原创 Linux下ffmpeg配置和安装
1、下载ffmpeg。http://www.ffmpeg.org/download.html#build-linux2.解压tar xvfj ffmpeg-0.4.9-p20051120.tar.bz23.配置 ./configure --enable-shared --prefix=/usr/local/ffmpeg编译FFMPEG时,出现了
2016-11-30 14:56:00
439
原创 网络配置
Ubuntu系统进行网络配置涉及到几个配置文件1./etc/network/interfaces 2./etc/resolv.confvi /etc/network/interfaces auto loiface lo inet loopback1.NAT连接(动态获取)auto eth0iface eth0 inet dhcp
2016-11-30 14:51:23
387
原创 YUV像素数据分解为 Y ,U, V分量
如果视频帧的宽和高分别为w和h,那么一帧YUV420P像素数据一共占用w*h*3/2 Byte的数据。其中前w*h Byte存储Y,接着的w*h*1/4 Byte存储U,最后w*h*1/4 Byte存储V。上述调用函数的代码运行后,将会把一张分辨率为256x256的名称为1.yuv的YUV420P格式的像素数据文件分离成为三个文件:output_420_y.y:纯Y数据,分辨率为256
2016-11-30 11:02:19
5629
原创 2.非模态对话框的创建
模态对话框和非模态对话框在创建对话框资源和生成对话框类上是没有区别的,所以上一讲中创建的 IDD_TIP_DIALOG对话框资源和 CTipDlg 类都不需要修改。STEP 1:.在AdditionDlg.h中包含CTipDlg头文件并定义 CTipDlg 类型的指针成员变量。详细操作方法是,在AdditionDlg.cpp中删除之前添加的#
2016-11-25 15:09:26
486
原创 1. 为加法计算器程序添加一个模态对话框
Windows 对话框分为两类:模态对话框和非模态对话框。模态对话框是这样的对话框,当它弹出后,本应用程序其他窗口将不再接受用户输入,只有该对话框响应用户输入,在对它进行相应操作退出后,其他窗口才能继续与用户交互。非模态对话框则是, 它弹出后,本程序其他窗口仍能响应用户输入。非模态对话框一般用来显示提示信息等 step1:根据―创建对话框模板和修改对话框属性‖中所讲的方
2016-11-25 14:00:08
414
原创 RTP协议详解
1)RTP是实时数据传输协议。它提供时间标志,序列号以及其它能够保证在实时数据传输时处理时间的方法;它是依靠RVSP保证服务质量标准的。2)RTCP是RTP的控制部分,是用来保证服务质量和成员管理的。3)RTSP是开始和指引流媒体数据从流媒体服务器。它又可叫做"网上录像机控制协议".它是提供远程的控制,具体的数据传输是交给RTP的。2.RTP/RTCP协议层次和封装RTP位于传
2016-10-18 15:27:55
1116
转载 FFMPEG关键结构体分析
FFMPEG结构体分析:AVFrameFFMPEG结构体分析:AVFormatContextFFMPEG结构体分析:AVCodecContextFFMPEG结构体分析:AVIOContextFFMPEG结构体分析:AVCodecFFMPEG结构体分析:AVStreamFFMPEG结构体分析:AVPacket
2016-09-27 10:03:21
504
转载 音视频处理 各层数据 规范
本文中的程序是一个UDP/RTP协议流媒体数据解析器。该程序可以分析UDP协议中的RTP 包头中的内容,以及RTP负载中MPEG-TS封装格式的信息。通过修改该程序可以实现不同的UDP/RTP协议数据处理功能。协议层:MPEG-TS封装格式数据打包为RTP/UDP协议然后发送出去的流程如下图所示。图中首先每7个MPEG-TS Packet打包为一个RTP,然后每个RTP再打
2016-09-22 16:50:23
412
转载 RTMP 规范
1. 简介 Adobe 公司的实时消息传输协议 (RTMP) 通过一个可靠地流传输提供了一个双向多通道消息服务,比如 TCP [RFC0793],意图在通信端之间传递带有时间信息的视频、音频和数据消息流。实现通常对不同类型的消息分配不同的优先级,当运载能力有限时,这会影响等待流传输的消息的次序。 本文档将对实时流传输协议 (Real Time Messaging
2016-09-12 09:32:16
580
第二期jz2440学习资料
2018-10-24
jz2440学习用到的芯片手册
2018-09-10
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人