DoubleLi

qq: 517712484 wx: ldbgliet

  博客园 :: 首页 :: 新随笔 :: 联系 :: 订阅 :: 管理 ::

2016年4月12日

摘要: Uboot_Kernerl_Add_Watch_Dog: U-Boot 2010.06 (Nov 01 2013 - 15:28:44) DRAM: 128 MiBCheck spi flash controller v350... FoundSpi(cs1) ID: 0xEF 0x40 0x18 阅读全文
posted @ 2016-04-12 20:01 DoubleLi 阅读(3832) 评论(0) 推荐(0)

摘要: 使用RTP传输H264的时候,需要用到sdp协议描述,其中有两项:Sequence Parameter Sets (SPS) 和Picture Parameter Set (PPS)需要用到,那么这两项从哪里获取呢?答案是从H264码流中获取.在H264码流中,都是以"0x00 0x00 0x01" 阅读全文
posted @ 2016-04-12 19:59 DoubleLi 阅读(2326) 评论(0) 推荐(0)

摘要: // 【h264编码出的NALU规律】// 第一帧 SPS【0 0 0 1 0x67】 PPS【0 0 0 1 0x68】 SEI【0 0 0 1 0x6】 IDR【0 0 0 1 0x65】// p帧 P【0 0 0 1 0x61】// I帧 SPS【0 0 0 1 0x67】 PPS【0 0 0 阅读全文
posted @ 2016-04-12 19:59 DoubleLi 阅读(8852) 评论(0) 推荐(0)

摘要: 录制程序要添加新功能:录制CMMB电视节目,我们的板卡发送出来的是RTP流(H264视频和AAC音频),录制程序要做的工作是: (1)接收并解析RTP包,分离出H264和AAC数据流; (2)将H264视频和AAC音频以某种格式封装,最后存成文件,供用户查看。 第一步已经有部分代码可供参考,因此很快 阅读全文
posted @ 2016-04-12 19:58 DoubleLi 阅读(3535) 评论(0) 推荐(0)

摘要: 一、MP4格式基本概念 MP4格式对应标准MPEG-4标准(ISO/IEC14496) 二、MP4封装格式核心概念 1 MP4封装格式对应标准为 ISO/IEC 14496-12(信息技术 视听对象编码的第12部分: ISO 基本媒体文件格式/Information technology Codin 阅读全文
posted @ 2016-04-12 19:58 DoubleLi 阅读(2299) 评论(0) 推荐(0)

摘要: 前面的文章中提到了通过RTSP(Real Time Streaming Protocol)的方式来实现视频的直播,但RTSP方式的一个弊端是如果需要支持客户端通过网页来访问,就需要在在页面中嵌入一个ActiveX控件,而ActiveX一般都需要签名才能正常使用,否则用户在使用时还需要更改浏览器设置, 阅读全文
posted @ 2016-04-12 19:57 DoubleLi 阅读(5257) 评论(0) 推荐(0)

摘要: 最近需要做一个RTSP流媒体播放器,研究了一下,封装了一个RTSP播放类CRTSPPlayer,解码库采用ffmpeg。由于需求比较简单,时间也有限,目前只实现了播放、停止、暂停几个基本的接口。下面是基于CRTSPPlayer类实现的简单RTSP播放器。 目前视频只测试了H264格式,其它格式的视频 阅读全文
posted @ 2016-04-12 19:56 DoubleLi 阅读(7456) 评论(0) 推荐(0)

摘要: 首先在介绍可变参数表函数的设计之前,我们先来介绍一下最经典的可变参数表printf函数的实现原理。一、printf函数的实现原理在C/C++中,对函数参数的扫描是从后向前的。C/C++的函数参数是通过压入堆栈的方式来给函数传参数的(堆栈是一种先进后出的数据结构),最先压入的参数最后出来,在计算机的内 阅读全文
posted @ 2016-04-12 19:51 DoubleLi 阅读(769) 评论(0) 推荐(0)

摘要: 名词解释:man epoll之后,得到如下结果: NAME epoll - I/O event notification facility SYNOPSIS #include <sys/epoll.h> DESCRIPTION epoll is a variant of poll(2) that c 阅读全文
posted @ 2016-04-12 19:50 DoubleLi 阅读(5056) 评论(0) 推荐(0)

摘要: 死锁:一种情形,此时执行程序中两个或多个线程发生永久堵塞(等待),每个线程都在等待被 其他线程占用并堵塞了的资源。例如,如果线程A锁住了记录1并等待记录2,而线程B锁住了记录2并等待记录1,这样两个线程就发生了死锁现象。 gdb调试死锁的方法: gdb attach pid thread apply 阅读全文
posted @ 2016-04-12 19:46 DoubleLi 阅读(1173) 评论(0) 推荐(0)

摘要: #x86 ./configure --disable-shared --enable-static --disable-ftp --disable-ipv6 --disable-rtsp --disable-tftp --disable-telnet --disable-largefile --di 阅读全文
posted @ 2016-04-12 19:45 DoubleLi 阅读(18163) 评论(0) 推荐(1)

摘要: 1:CURLcode curl_global_init(long flags); 这个函数全局需要调用一次(多次调用也可以,不过没有必要), 所以这也是把Curlplus设计成单体类的原因,curl_global_init函数在其他libcurl函数调用前至少调用一次,程序最后需要调用curl_gl 阅读全文
posted @ 2016-04-12 19:45 DoubleLi 阅读(762) 评论(0) 推荐(0)

摘要: 系统启动后,虽然nand驱动表现正常,但是最后挂载rootfs时候出错: Kernel command line: root=/dev/mtdblock2 rw init=/linuxrc console=ttyAMA1,115200 mem=64M rootfstype=yaffs2。。。。。。。 阅读全文
posted @ 2016-04-12 19:44 DoubleLi 阅读(1350) 评论(0) 推荐(0)

摘要: Linux下修改MAC地址 方法一: 1.关闭网卡设备ifconfig eth0 down2.修改MAC地址ifconfig eth0 hw ether MAC地址3.重启网卡ifconfig eth0 up 方法二:以上方法一修改后linux重启后MAC又恢复为原来的,为了下次启动时修改后的MAC 阅读全文
posted @ 2016-04-12 19:44 DoubleLi 阅读(5647) 评论(0) 推荐(0)

摘要: 先看代码吧,有代码有真相,具体代码的demo(下载demo的朋友请勿在网上上传我的demo,谢谢)下载连接为: http://download.csdn.net/detail/skdkjxy/8071721 注:代码demo是一个完整的工程,直接进行make x86或者make arm 就可以到目录 阅读全文
posted @ 2016-04-12 19:41 DoubleLi 阅读(3850) 评论(1) 推荐(0)

摘要: 开源世界有许多优秀的开源项目,我选取其中十个最优秀的、最轻量级的C语言的项目,希望可以为C语言开发人员提供参考。 十个最值得阅读学习的C开源项目代码 1. Webbench Webbench是一个在linux下使用的非常简单的网站压测工具。它使用fork()模拟多个客户端同时访问我们设定的URL,测 阅读全文
posted @ 2016-04-12 19:40 DoubleLi 阅读(7069) 评论(0) 推荐(1)

摘要: 在fs的目录/etc/下添加文件hosts,然后内容修改如下: 192.168.11.12 qycam.com ping qycam.com 解析为192.168.11.12 阅读全文
posted @ 2016-04-12 19:38 DoubleLi 阅读(354) 评论(0) 推荐(0)

摘要: a、tftp server服务器配置与使用 方法1: #udpsvd -vE 069 tftpd -c /root& //上面的0表示对所有ip地址都进行侦听 方法2: #vi/etc/inetd.conf 69 dgram udp nowait root tftpd tftpd -c /root 阅读全文
posted @ 2016-04-12 19:37 DoubleLi 阅读(2136) 评论(0) 推荐(0)

摘要: [html] view plain copy [html] view plain copy [html] view plain copy /********************************** (C) COPYRIGHT ******************************* 阅读全文
posted @ 2016-04-12 19:36 DoubleLi 阅读(521) 评论(0) 推荐(0)

摘要: 版权声明:本文为博主原创文章,未经博主允许不得转载。 版权声明:本文为博主原创文章,未经博主允许不得转载。 [html] view plain copy [html] view plain copy /********************************** (C) COPYRIGHT  阅读全文
posted @ 2016-04-12 19:35 DoubleLi 阅读(646) 评论(0) 推荐(0)

摘要: [html] view plain copy [html] view plain copy 阅读全文
posted @ 2016-04-12 19:34 DoubleLi 阅读(626) 评论(0) 推荐(0)

摘要: [html] view plain copy [html] view plain copy [html] view plain copy * File Name : get_gw.c * Author : skdkjzz * Date : 2014/08/07 * Description : lin 阅读全文
posted @ 2016-04-12 19:33 DoubleLi 阅读(464) 评论(0) 推荐(0)

摘要: [html] view plain copy [html] view plain copy 阅读全文
posted @ 2016-04-12 19:31 DoubleLi 阅读(423) 评论(0) 推荐(0)

摘要: [html] view plain copy [html] view plain copy 阅读全文
posted @ 2016-04-12 19:30 DoubleLi 阅读(741) 评论(0) 推荐(0)

摘要: [html] view plain copy [html] view plain copy 具体Demo代码可以下载:http://download.csdn.net/detail/skdkjxy/8838309 仅供参考,谢谢~ from:http://blog.csdn.net/skdkjzz/ 阅读全文
posted @ 2016-04-12 19:26 DoubleLi 阅读(2595) 评论(0) 推荐(0)

摘要: 1、Stage1 start.S代码结构 u-boot的stage1代码通常放在start.S文件中,他用汇编语言写成,其主要代码部分如下 (1) 定义入口。: 该工作通过修改连接器脚本来完成。 (2)设置异常向量(Exception Vector)。 (3)设置CPU的速度、时钟频率及终端控制寄存 阅读全文
posted @ 2016-04-12 19:22 DoubleLi 阅读(1904) 评论(1) 推荐(0)

摘要: 首先贴出来我的bootargs的设置(注没有换行符!!!): setenv bootargs noinitrd mem=64M root=/dev/nfs init=/linuxrc rw nfsroot=10.10.2.59:/opt/rootfs/ ip=10.10.1.156:10.10.2. 阅读全文
posted @ 2016-04-12 14:52 DoubleLi 阅读(477) 评论(0) 推荐(0)

摘要: 在shell中常用的特殊符号罗列如下: # ; ;; . , / \\ 'string'| ! $ ${} $? $$ $* \"string\"* ** ? : ^ $# $@ `command`{} [] [[]] () (()) || && {xx,yy,zz,...}~ ~+ ~- & \\ 阅读全文
posted @ 2016-04-12 14:48 DoubleLi 阅读(1325) 评论(0) 推荐(0)

摘要: 嵌入式 linux下利用backtrace追踪函数调用堆栈以及定位段错误 嵌入式 linux下利用backtrace追踪函数调用堆栈以及定位段错误 2015-05-27 14:19 184人阅读 评论(0) 收藏 举报 2015-05-27 14:19 184人阅读 评论(0) 收藏 举报 分类: 阅读全文
posted @ 2016-04-12 14:47 DoubleLi 阅读(2864) 评论(0) 推荐(0)

摘要: 如果你使用Linux比较长时间了,那你就知道,在对待设备文件这块,Linux改变了几次策略。在Linux早期,设备文件仅仅是是一些带有适当的属性集的普通文件,它由mknod命令创建,文件存放在/dev目录下。后来,采用了devfs, 一个基于内核的动态设备文件系统,他首次出现在2.3.46内核中。M 阅读全文
posted @ 2016-04-12 14:46 DoubleLi 阅读(417) 评论(0) 推荐(0)

摘要: 本文以通俗的方法阐述 udev 及相关术语的概念、udev 的配置文件和规则文件,然后以 Red Hat Enterprise Server 为平台演示一些管理设备文件和查询设备信息的实例。本文会使那些需要高效地、方便地管理 Linux 设备的用户受益匪浅,这些用户包括 Linux 最终用户、设备驱 阅读全文
posted @ 2016-04-12 14:45 DoubleLi 阅读(1305) 评论(0) 推荐(0)

摘要: /* * 线程同步——互斥量 * 创建两个线程,使用互斥量使任一时刻只有一个线程对全局变量进行 操作 * Lzy 2011-6-19 */ #include <stdio.h> #include <stdlib.h> #include <pthread.h> pthread_mutex_t mute 阅读全文
posted @ 2016-04-12 14:44 DoubleLi 阅读(1338) 评论(0) 推荐(0)

摘要: 互斥锁(mutexlock): 最常使用于线程同步的锁;标记用来保证在任一时刻,只能有一个线程访问该对象,同一线程多次加锁操作会造成死锁;临界区和互斥量都可用来实现此锁,通常情况下锁操作失败会将该线程睡眠等待锁释放时被唤醒 自旋锁(spinlock): 同样用来标记只能有一个线程访问该对象,在同一线 阅读全文
posted @ 2016-04-12 14:43 DoubleLi 阅读(2449) 评论(0) 推荐(0)

摘要: 读写锁比mutex有更高的适用性,可以多个线程同时占用读模式的读写锁,但是只能一个线程占用写模式的读写锁。1. 当读写锁是写加锁状态时,在这个锁被解锁之前,所有试图对这个锁加锁的线程都会被阻塞;2. 当读写锁在读加锁状态时,所有试图以读模式对它进行加锁的线程都可以得到访问权,但是以写模式对它进行枷锁 阅读全文
posted @ 2016-04-12 14:41 DoubleLi 阅读(1628) 评论(0) 推荐(0)

摘要: fork()与vfock()都是创建一个进程,那他们有什么区别呢?总结有以下三点区别: 1. fork ():子进程拷贝父进程的数据段,代码段 vfork ( ):子进程与父进程共享数据段 2. fork ()父子进程的执行次序不确定 vfork 保证子进程先运行,在调用exec 或exit 之前与 阅读全文
posted @ 2016-04-12 14:40 DoubleLi 阅读(367) 评论(0) 推荐(0)

摘要: 在Linux的Shell中怎样处理tail -n 10 access.log这样的命令行选项呢?这是被别人问起的一个问题,好好学习了一下,进行总结如下:在bash中,可以用以下三种方式来处理命令行参数,每种方式都有自己的应用场景。1.直接处理,依次对$1,$2,...,$n进行解析,分别手工处理;2 阅读全文
posted @ 2016-04-12 14:39 DoubleLi 阅读(447) 评论(0) 推荐(0)

摘要: 理想情况下,您应该明白在您的系统中运行的每一个进程。要获得所有进程的列表,可以执行命令 ps -ef(POSIX 风格)或 ps ax(BSD 风格)。进程名有方括号的是内核级的进程,执行辅助功能(比如将缓存写入到磁盘);所有其他进程都是使用者进程。您会注意到,就算是在您新安装的(最小化的)系统中, 阅读全文
posted @ 2016-04-12 14:37 DoubleLi 阅读(781) 评论(0) 推荐(0)

摘要: 环形缓冲区是嵌入式系统中十分重要的一种数据结构,比如在一个视频处理的机制中,环形缓冲区就可以理解为数据码流的通道,每一个通道都对应着一个环形缓冲区,这样数据在读取和写入的时候都可以在这个缓冲区里循环进行,程序员可以根据自己需要的数据大小来决定自己使用的缓冲区大小。 环形缓冲区,顾名思义这个缓冲区是环 阅读全文
posted @ 2016-04-12 14:21 DoubleLi 阅读(1762) 评论(0) 推荐(0)

摘要: 由于公司项目的需要,我们需要在原有的MII的基础上,修改为RMII模式,针对hi3518c平台,我的网卡是LAN8701需要修改的地方有如下几个: 首先我的uboot中env是: bootargs=mem=64M console=ttyAMA0,115200 root=/dev/mtdblock4 阅读全文
posted @ 2016-04-12 13:53 DoubleLi 阅读(987) 评论(0) 推荐(0)