自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

tea1896的专栏

存草稿的地方。。。。。。。。。。。。

  • 博客(55)
  • 资源 (7)
  • 收藏
  • 关注

原创 PCM1864 调试

CSDN 的图片编辑功能太扯淡了,十分不方便,现在文章都只能保存到有道云了。PCM1864 调试链接

2017-09-02 11:35:53 1455

原创 ffmpeg 列表

自己或者同事在研究ffmpeg中的一些总结1. ffmpeg 解析延迟2. ffmpeg指定网口推流 3.ffmpeg 自定义日志接口4.ffmpeg 解复用5.ffmpeg + rtmp 延迟问题6.HLS 切片服务器的质量检测软件

2017-08-03 19:58:47 617

原创 Linux 内核的I2C设备

http://note.youdao.com/noteshare?id=bb13c91ab89032f1cbb1cb5fe4bf56a4&sub=653D18BF2BFB46A7895E18BB1B5226E9

2017-08-03 19:49:17 497 1

原创 LIVE555 利用FIFO实现直播

1.LIVE555 直播直播方案采取的是  直播流  -> FIFO -> 输出  的技术路线。2.搭建:a. 在LIVE555 编译之后,在BIN文件下,有很多可执行程序生成,这些程序有些是LIVE555服务器(live555MediaServer),有些是客户端(testRTSPClient),还有大量的流推送服务(testMPEG2TransportStreamer)b.

2017-06-09 22:49:46 7133 4

原创 LIVE555 交叉编译

1. LIVE555交叉编译a.修改编译配置文件:config.armlinux  将交叉编译工具链修改:CROSS_COMPILE?=  arm-elf- 改为 CROSS_COMPILE= arm-xilinx-linux-gnueabi-这样编译出来的live555,会默认安装在/usr/local/下。如果想安装在指定路径。需要在config.armlinux文件下增加一行PR

2017-06-09 22:44:45 1899 1

转载 记录

Linux使用KILL 0检测进程是否存在

2017-06-03 16:00:18 220

转载 git

1. 本地的修改丢弃,从远程代码库下载最新git reset --hardgit clean -xdfgit pull

2017-05-23 19:01:27 274

转载 零碎的笔记

1. 如何寻找I帧:参考 H.264的Slice及Slice类型 一个图像,只有一个slice,并且slice_type= 7 / 2 那就是一个I帧。如果还有多个slice, 那么如果任何一个slice_type = 7 或者全部slice_type = 2 那他就是一个I帧。

2017-05-19 09:23:17 389

转载 struct SwsContext 和 struct SwrContext

struct SwsContext  (software scale) 主要用于视频图像的转换,比如格式转换: 参考    ffmpeg中的sws_scale算法性能测试 struct SwrContext   (software resample) 主要用于音频重采样,比如采样率转换,声道转换。 参考: SwrContext重采样结构体

2017-05-17 22:19:18 4131

原创 C/C++ 混编

对于C/C++混编的工程(编译器默认选择c++),用C编写的文件需要按如下两个步骤处理:1.  对于.h 文件,需要增加#ifdef __cplusplus extern "C" { #endif /*...*/ #ifdef __cplusplus } #endif2. 对于.c文

2017-05-05 17:58:53 1727

原创 安装Python pip的问题

python pip

2017-01-18 20:46:30 1526

原创 关于AFD

AFD 控制宽高比并不是在编码算法中完成的。编码端只提供AFD信息(相当于辅助信息,在编码完成后插入),告诉显示器如何根据自己的实际尺寸进行显示。例如: 一个4:3的信号源,经过编码,无论是AFD是4:3 还是 16:9  用VCL观看效果是一样的。但是放到16:9的电视是就不一样了,电视根据自己的宽高比,通过AFD选择什么样的显示策略:AFD: 4:3  (中心圆

2016-12-12 16:42:52 1996

转载 GDR for H.264

来源来源视频渐近刷新GDR(Gradual decoder refresh)是相对一帧完整刷新而来。传统IDR刷新的缺点是IDR帧大小相比图像质量相近的P帧更大,这样会对网络有冲击,导致网络抖动和拥塞。而GDR会带来更优的网络适应性。GDR是通过P帧内包括I块组的方法来实现渐近刷新。

2016-12-02 08:33:43 3736

原创 zynq的 PL部分的中断号

2016-11-19 10:46:47 669

原创 SPI 驱动加载

xilinx以前版本SPI初始频率可以随便设置。新版本内核(从2015的开始), SPI的设备树里面注意一条,初始频率必须是2的次幂,否则SPI驱动无法工作。来源参考:https://forums.xilinx.com/t5/Embedded-Linux/Zedbooard-PetaLinux-SPI-Problem/m-p/657754/highlight/true#M14230

2016-11-19 10:43:19 1184

原创 HDMI EDID的修改

公司的编码器产品连接一款机顶盒没有声音输出,经过打印发现,编码器被识别为了DVI设备,所以没有音频输出。 HDMI输出设备都是根据接收端的EDID信息来决定是DVI还是HDMI, 因此我们需要修改EDID信息。 以下是调试方法的一些总结:1.  分析/编辑EDID的三款工具:     EDID editor  /   Phoenix.exe  /  EDID Manager

2016-11-19 10:38:36 11897

原创 wifi传输的一些总结

我们总希望WIFI的传输距离越远越好,但实际上总是不如人意,以下一些方法和总结仅供参考。WIFI 传输质量优化方法:1:  选择合适的传输模式80211b/g/n 和 干扰最小的通道(WIFI模块可以自己扫描附近的热点处在哪个通道,我们的AP选择干扰最小的通道)。      目前2.4G的占用最多,最好选用5G通道。2. 选择合适的天线。    需要注意的是,天

2016-11-19 10:28:41 2927

原创 wifi 调试一些总结

内核勾选http://blog.sina.com.cn/s/blog_81fe9f9401019kpv.html./iwlist wlan0 scanning 搜索./iwconfig wlan1 essid Tenda_24A900 key wellav2013 连接 (如果没有秘钥,就去掉key XXXXX)ping丢包严重,换路由信道,通过手机WIFI工具,查看当前哪

2016-11-19 09:54:23 3508

原创 rtl8192 调试

平台xilinx zynq7000 (cortex-a9)WiFi模块rtl8192调试记录:1.内核加载WIFI 驱动:模块型号RTL8192CUhttp://www.zedboard.org/content/howto-guide-using-usb-wifi-adapter-zedboard摘录如下:Forums: General Qu

2016-11-19 09:39:37 3888

转载 ffmpeg Windows环境搭建

来源:http://blog.csdn.net/leixiaohua1020/article/details/15811977安装ffmpeg 开发库如果要添加SDL支持,如下:

2016-08-28 11:11:12 520

原创 AVS+ GOP结构获取 及 软解码流程

想要软解码AVS+视频在本地电脑播放,或者查看GOP结构等内容,可以通过以下流程。1. 安装ffmpeg,用于将TS各式的码流分离为ES格式   a. 下载地址 :http://ffmpeg.zeranoe.com/builds/    (根据自己的操作系统版本选择)      如果不做开发用,下载static 版本就行b. 通过下载的FFMPEG 进行

2016-06-23 14:20:50 3499 6

原创 linux下I2C的读写

1.在linux下提供另种I2C读写方式: a.  一种是带寄存器读写的方式。(因为很多I2C设备的操作都是读写寄存器,所以Linux提供了这样一种接口) b.一种是纯粹的数据发送。(a实际上调用的是b来实现)a.方式的实现:以下这个结构体,定义在#include  中, 里边有command参数,也就是寄存器地址。//定义结构体struct i2c

2016-06-23 12:13:54 10945 1

原创 i2c 和 spi 单次传输大小

在各种协议中,单次传输长度一般都有限制。      关于SPI的长度可以参考下边邮件。   I2C的长度现在大家在linux驱动模型中也能找到限制。在/drivers/i2c/i2c-dev.c 中参考代码:i2cdev_read  /  i2cdev_write /  i2cdev_ioctl_rdrw 中都有限制如下:   /* Limi

2016-06-23 10:08:54 2563

原创 zynq u-boot配置

以前我们需要修改u-boot的默认串口,是修改配置文件。比如: dadi@wellav:~/dadi/hevc_workspace/kernel/u-boot-xlnx-xilinx-v2014.4$ cat include/configs/zynq_zed.h /* * (C) Copyright 2013 Xilinx, Inc. * * Configuration for

2016-06-23 09:26:55 3590

原创 zynq gpio管脚配置

在旧的内核代码中,我们需要关闭省电模式,然后才能控制GPIO。  在新的内核,已经没有这个选项,我尝试用以前的代码已经不能控制GPIO。  新的GPIO控制方式暂时如下:比如需要控制MIO 48为低,需要进行如下动作:1.确认第一个GPIO控制器索引 (每个PIN脚一个控制器)root@zc706-zynq7:/sys/class/gpio# lsexp

2016-06-23 09:25:35 4439

原创 内核和用户空间的消息传递-netlink (3)

未做实验,待补充。参考: http://blog.csdn.net/daydring/article/details/24000081

2016-06-01 09:57:17 491

原创 内核和用户空间的消息传递-事件通知 (2)

事件通知机制不仅可用户用户态两个线程之间同步,还可以用于内核空间和用户空间同步。方法如下:1.在用户层a. 创建一个文件描述符int event_fdevent_fd = eventfd ( 0, EFD_NONBLOCK | EFD_SEMAPHORE );b.将文件描述符通过ioctl传递给内核 enable_message_notifica

2016-06-01 09:56:07 3736

原创 内核和用户空间的消息传递-异步通知 (1)

背景: 当内核空间的驱动收发数据需要通知用户空间时,有以下几种方法:1.异步通知机制:/* 异步信号处理函数 */ signal(SIGIO, logic_PCMHandler); /* 设置驱动绑定对应的异步通知发生器 */ encoder_index = m31_GetEncodeIndex(); logic_SetDeviceIndex(encoder_

2016-06-01 09:15:55 2108

原创 linux 线程同步

多线程之间的同步方式有以下几种选择:1.通过互斥锁实现。int  pthread_mutex_init(pthread_mutex_t *mp, const pthread_mutexattr_t *mattr)int pthread_mutex_lock(pthread_mutex_t *mutex); #include pthread_mutex_t mutex; int

2016-05-31 09:25:17 268

原创 popen + top 获取系统信息

想实时监视系统信息,用popen+ top 完成。 发现代码在ubuntu下运行正常,而在arm上一运行,就挂死了。 而运行ls则不会挂死,比较两个的不同,发现ls是运行一次,而top是一直运行的。 于是修改top命令,改为只执行一次,得到解决。   /* 获得SOC负载信息 */ TopFP = popen("top -n 1", "r"); i

2016-05-31 08:45:51 1689

原创 ARM架构 修改DMA大小

问题描述:    在ZYNQ上加载一个视频编码芯片驱动失败,芯片接口为PCIE。    查看现象,是调用 pci_alloc_consistent  申请DMA空间失败。     这个函数要被调用很多次,前几次成功,然后就失败了,第一反应就是DMA预留空间不足。问题解决思路:    1. 在网上看到有 CONSISTENT_DMA_SIZE 这个宏可以定义,但是在我的内

2016-03-20 13:04:28 6884 1

原创 zedboard DEMO

1. 最新DEMO下载地址:http://www.wiki.xilinx.com/Zynq+Releases2. 相关驱动样例http://www.wiki.xilinx.com/Linux+Drivers3. 安卓相关http://www.wiki.xilinx.com/Building+Android+BSP+on+ZC702

2016-03-17 12:06:03 592

原创 PCIE配置失败,提示 pci 0000:01:00.0: BAR 4: no space for [mem size 0x00200000]

这个原因是因为分配给PCI的空间,小于分配给BAR的空间,导致空间不够。需要在逻辑组件的PCIE-RC属性里边重新设置参数,使得PCI寻址范围大于BAR空间大小。

2016-03-16 20:22:30 15289 5

原创 lspci 安装

在原版的busy-box做出来的 文件系统中,lspci命令只有两个选项:ynq> lspci -hlspci: invalid option -- 'h'BusyBox v1.20.1 (2012-11-27 13:37:12 MST) multi-call binary.Usage: lspci [-mk]List all PCI devices -m

2016-03-16 20:18:51 2752 1

原创 PCIE-RC 启动错误 (doesn't match header type 01)

zynq在逻辑段加入了一个RC, 设备树如下:axi-pcie@50000000 { #address-cells = ; #interrupt-cells = ; #size-cells = ; compatible = "xlnx,axi-pcie-host-1.00.a"; device_type = "pci"; interrupt-parent =

2016-03-16 10:32:39 4425 2

原创 内核启动错误:use vmalloc=<size> to increase size.

逻辑部分加了一个PCIE-RC组件,启动时发现如下错误:vmap allocation for size 268439552 failed: use vmalloc= to increase size. xilinx-pcie a0000000.axi-pcie: ioremap failed for resource [mem 0xa0000000-0xafffffff] xil

2016-03-14 16:36:33 5019 1

原创 u-boot的配置

1.配置文件路径/u-boot-xlnx/include/configs2.修改启动方式和其他硬件配置,修改zynq_zed.h,常见的修改如下:    比如nand启动,则修改宏#define CONFIG_ZYNQ_QSPI ==》 CONFIG_NAND_ZYNQ       如果是UART0启动,则需要修改如下:(这个十分重要,需要和逻辑工程师确认清楚)

2016-03-13 20:58:22 1577

转载 XILINX 内核下载

以下内容来在FAE,放在这里做个记录:之前发过一封邮件告诉大家如何下载linux内核和uboot的压缩包,但是那封邮件里面下载到的是zip包。zip格式的文件在linux中解压的时候会出现一些问题,这是由于linux的文件系统里面存在一些所谓的link文件,这样解压缩后的文件在编译的时候可能会找不到某些文件,导致编译失败,虽然可以通过一些方法来解决这个问题,但是对于客户来说,花费时间来

2016-03-13 20:36:12 2776

原创 FFMPEG PCR PID修改以及插入间隔计算

用FFMPEG输出MPEGTS格式时,发现视频和PCR的PID总是一样。查看源码如下:  /* update PCR pid by using the first video stream */ if (st->codec->codec_type == AVMEDIA_TYPE_VIDEO && service->pcr_pid == 0x1f

2016-03-13 20:10:59 3574 4

转载 音视频码流复用问题

文章来源:  http://blog.csdn.net/leixiaohua1020/article/details/15811977做这个例子的时候,发现以下问题:1. 我尝试HEVC 视频码流 复用 MP3音频码流,输出为MPEGTS格式,结果只有视频。原因如下:   视频码流没有时间戳, 而音频有。 导致av_compare_ts 总是判断该读视频并写到输出。

2016-01-10 17:48:20 3204

wifi模块rtl8192固件

rtl8192WiFi模块的固件

2016-11-19

RTMP 服务器构建

参考网上资料,打包存档。 nginx构建RTMP服务器

2015-08-05

CORTEX_M0工程(ucos系统)

一个建立在cortex_mo(NXP_LPC11C14)上的UCOS程序。 包括了工程建立过程中遇到的问题,以及分析解决的方法,(html格式)。 里面包含了移植好的在M0单板上的UCOS操作系统 硬件平台:LPC11C14 软件平台:KEIL UVISION 4 操作系统: UCOS_II

2012-12-05

linux版彩色贪吃蛇

自己在linux下做的一个彩色版贪吃蛇!

2012-10-01

linux在线聊天工具

自己写的一个局域网在线聊天工具,很不完善!

2012-09-26

bootloader(适用S3C2410)

自己写的一个很小的 bootloader,适用s3c2410

2012-09-26

转载:ARM裸奔程序如何使用C库

转载:ARM裸奔程序不能使用除法,不能使用标准输出库,如何用Makefile实现。(参考韦东山 嵌入式linux)

2012-09-26

空空如也

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

TA关注的人

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