- 博客(47)
- 资源 (155)
- 问答 (1)
- 收藏
- 关注
原创 基于easydarwin实现拉流转发功能
无论是darwin还是经过优化后的easydarwin流媒体服务器,都只支持客户端推流后转发。而我要实现的是,在此基础上,能够拉取rtsp流将其转发。1.为什么要实现这样的功能?现有一个摄像头,支持输出rtsp流。而客户的需求是想获取这个rtsp流,并且有上百个客户端同时获取:比如有的客户端想观看直播,有的想录制,而且要求延迟在几百ms以内。此类的需求,无论是darwin或者是easydarwin...
2018-02-10 13:31:26 6171
原创 手工释放linux内存——/proc/sys/vm/drop_cache
author:skatetime:2012/02/22 手工释放linux内存——/proc/sys/vm/drop_cache 转载一篇文章 linux的内存查看:[root@localhost 0.1.0]# free -m total used free shared buffers cachedMem: ...
2018-02-28 19:11:18 239
原创 嵌入式Linux系统启动脚本rcS
嵌入式系统启动过程中,最重要一环就是启动服务。这些服务都是通过预设置好的脚本启动起来的,控制这些启动脚本的就是rcS启动脚本。rcS文件在/etc/init.d/下面,因为嵌入式系统一般经过剪裁,降低资源的使用率,简化系统启动流程,加速系统启动速度。这里看一个非常简单的启动脚本,并结合脚本解释下脚本含义。[plain] view plain copy#! /bin/sh // 必须含有这个第一...
2018-02-28 15:36:27 1368
原创 海思修改内存
系统内存起始位置:0x40000000修改系统内存1024M(标准开发板)mem_total=2048; # total meminsmod mmz.ko mmz=anonymous,0,0x80000000,1023M anony=1 || report_error./load3531a -i -osmem 1023修改操作系统内存512Mmem_total=...
2018-02-28 15:33:44 3190
原创 linux下.so、.ko、.a的区别
各类文件的区别与作用:1、对于.so文件 .so文件是用户层的动态链接库,用于用户层的动态链接使用,内核态的代码同样不能直接访问。2、对于.ko文件 .ko文件是内核态的动态链接库,用于内核态的动态链接使用,可以用于内核之间的模块相互调用。用户态的代码不可直接调用内核态的代码,但是可以通过其他方式进行通信。3、对于.a文件 .a文件是用于静态链接时,使用的静态库。4、对于.o...
2018-02-27 18:49:22 383
原创 Win7下使用Putty代替超级终端通过COM串口连接开发板方法
1、如果电脑(笔记本)没有串口接口,则需要使用一个 USB-Serial 转换线,这里使用 prolific usb-serial USB--串口转换线,首先需要在win7上安装对应的 USB--串口转换线 驱动程序,PL2303_Prolific 驱动程序下载地址USB to I/O Port Controllers PL-2303 驱动程序下载地址:http://www.prolific.co...
2018-02-27 15:44:43 5320
原创 FFMPEG打印日志及线程技巧
1: 在vc中使用ffmpeg静态库做二次开发的时候,如果不是控制台应用程序,又需要查看ffmpeg的日志信息,可使用[cpp] view plaincopyav_log_set_callback 函数注册一个回调函数,如[cpp] view plaincopyvoid ff_log_callback(void*avcl, int level, const char*fmt, va_list v...
2018-02-26 10:09:00 822
原创 windows下安装nfs 与linux共享
其实步骤很简单,如下: 1. 下载NFS Windows服务器软件, 点击打开链接 2. 安装上述软件。 3. 假设你安装的目录为:E:\Program Files (x86)\nfsd 那么在这个目录下找到export, 在里面配置你想发布的目录,规定各种权限。最简单的如:E:\clip -public 4. 现在就可以通过产品端Linu...
2018-02-24 15:15:57 3952
原创 ffmpeg常用基本命令(转)
1.分离视频音频流ffmpeg -i input_file -vcodec copy -an output_file_video //分离视频流ffmpeg -i input_file -acodec copy -vn output_file_audio //分离音频流2.视频解复用ffmpeg –i test.mp4 –vcodec copy –an –f m4v test.264ffm...
2018-02-24 10:40:22 497 1
原创 linux下永久设置LD_LIBRARY_PATH
LD_LIBRARY_PATH环境变量主要是用于指定动态链接器(ld)查找ELF可执行文件运行时所依赖的动态库(so)的路径,其内容是以冒号分隔的路径列表。 ld链接器将优先在该变量设置的路径中查找,若未找到则在标准库路径/lib和/usr/lib中继续搜索。 临时设置LD_LIBRARY_PATH环境变量的最佳方式是: 在执行你的程序前,先在ba...
2018-02-24 10:23:34 14318
原创 Linux 指定运行时动态库路径
众所周知, Linux 动态库的默认搜索路径是 /lib 和 /usr/lib 。动态库被创建后,一般都复制到这两个目录中。当程序执行时需要某动态库, 并且该动态库还未加载到内存中,则系统会自动到这两个默认搜索路径中去查找相应的动态库文件,然后加载该文件到内存中,这样程序就可以使用该动态库中的函 数,以及该动态库的其它资源了。在 Linux 中,动态库的搜索路径除了默认的搜索路径外,还可以通过以下...
2018-02-24 10:16:03 341
原创 GCC链接选项-L,-rpath-link和-rpath
OpenWrt中编译qtopia和qte2是会找不到uuid的库,需要特别地使用-luuid来指定,即使用-L$(dir) -luuid。然而如果使用-Wl,-rpath-link=$(dir)选项,则会自动搜索libuuid.so进行链接。GCC里的链接器的选项是 -rpath 和 -rpath-link,看了下 man ld,大致是这个意思:-L: “链接”的时候,去找的目录,也就是所有的 -...
2018-02-24 09:28:09 592
原创 VisualGDB编译关键参数设置
简单说明一下参数:g++:使用gcc的C++编译器编译代码test.cpp:被编译的源代码,如果不是在当前目录下,请使用相对路径或绝对路径指定文件-I:(Include,包含)指定包含头文件的目录,后面跟着目录,可以有空格也可以没有空格。-L:(Library,库)指定链接的库文件的目录,后面跟着目录,可以有空格也可以没有空格。-l:指定具体的库名。一般库名是libxxx.so,libxx...
2018-02-23 15:06:44 1817 1
原创 ffmpeg中遇到UINT64_C’ was not declared in this scope
fmpeg 默认是用C文件来编译的,如果某个CPP文件想引用ffmpeg中的某些函数或者头文件,有可能出现‘UINT64_C’ was not declared in this scope的错误情形大概如下The same issue i'm getting here when compiling chromium with ffmpeg from svn:In file included fro...
2018-02-23 11:01:28 1189
原创 在Linux中静态库.a和动态库.so 的创建和使用
我们通常把一些公用函数制作成函数库,供其它程序使用。函数库分为静态库和动态库两种。 1. 静态函数库 这类库的名字一般是libxxx.a;利用静态函数库编译成的文件比较大,因为整个 函数库的所有数据都会被整合进目标代码中,他的优点就显而易见了,即编译后的执行程序不需要外部的函数库支持,因为所有使用的函数都已经被编译进去了。当然这也会成为他的缺点,因为如果静态函数库改变了,那么你的程序必须重...
2018-02-23 09:36:46 2256
原创 几个常用makefile模板(动态库、静态库、可执行程序)
1、编译动态库 ############################################################# # Makefile for shared library. # 编译动态链接库 ############################################################# ...
2018-02-23 09:28:38 2517
原创 linux 平台最简FFMPEG 程序
最近在学习FFMPEG,看了很多的例子都是在Windows下的,这里提供一个linux下的一个简单程序,由雷神的工程修改而来。[objc] view plain copy print?#include <stdio.h> #define __STDC_CONSTANT_MACROS #include "avformat.h" #include "avcodec.h" #incl...
2018-02-22 18:43:21 351
原创 hi3516a之ffmpeg x264交叉编译
环境:centos_6.5_x86交叉工具链:arm-hisiv300-linux-步骤:1.下载x264:# git clone git://git.videolan.org/x264.gitlinux 下编译x264;./configure --prefix=/root/work/code/ffmpeg/x264-stable/linux --disable-asm...
2018-02-22 16:12:16 2321
原创 VisualGDB启用大纲显示和代码跳转方法
首先感慨一下,有了VisualGDB,尽管不会写Makefile,一样可以在VS轻松的编写调试代码,太爽了。 在第一次使用VisualGDB,都是按照默认设置一步步配置好了环境。我可以使用VS2010+VisualGDB来在线远程开发调试Linux项目代码。但是用着用着发现有些地方不方便。那就是如标题所说的。 VS安装VisualGDB的方法请阅读文章《VS插件VisualGDB破解版...
2018-02-22 11:13:56 1705 5
原创 Makefile静态模式
静态模式 makefile中,一个规则中可以有多个目标,规则所定义的命令对所有的目标有效。一个具有多目标的规则相当于多个规则。使用多目标可以使makefile文件变得简洁。 静态模式规则是这样一个规则:规则存在多个目标,并且不同的目标可以根据目标文件的名字来自动构造出依赖文件。 静态模式可以更加容易地定义多目标的规则,可以让我们的规则变得更加的有弹性和灵活。我们还是先...
2018-02-22 10:34:36 338
转载 VisualGDB:使用VS创建CMake Linux项目
转载地址:点击打开链接根据VisualGDB官网(https://visualgdb.com)的帮助文档大致翻译而成。主要是作为个人学习记录。有错误的地方,Robin欢迎大家指正。 本文介绍如何使用VS来创建、构建、调试一个基于CMake的项目。当编辑该项目时,会使用高级CMake项目子系统来自动更新CMakeLists.txt文件。 注意:开始本文如下步骤之前...
2018-02-11 15:46:37 3612
转载 VisualGDB:使用VS创建Linux静态库和动态库
转载地址 :点击打开链接 根据VisualGDB官网(https://visualgdb.com)的帮助文档大致翻译而成。主要是作为个人学习记录。有错误的地方,Robin欢迎大家指正。 本文介绍如何在VS中创建静态库和动态库,并用VisualGDB来调试它们。 首先我们用VisualGDB创建一个简单的Linux应用程序,然后添加一个静态库和一个动态库,并在调试...
2018-02-11 15:41:22 2227
转载 VisualGDB:远程导入Linux项目到VS中
转载地址:点击打开链接根据VisualGDB官网(https://visualgdb.com)的帮助文档大致翻译而成。主要是作为个人学习记录。有错误的地方,Robin欢迎大家指正。 本文介绍如何将Linux机器上的Linux项目导入到VS中,并进行远程构建和调试。我们首先把Midnight Commander的源码下载到Linux机器上,然后将它们导入到VS中,最后在VS中直接...
2018-02-11 15:16:45 2519
原创 ipc连接时出来这个提示: 不允许一个用户使用一个以上用户名与一个服务器或共享资源的多重连接。中断与此服务器或共享资源的连接,然后在试一次...
今天在连接公司的Ubuntu资源共享文件的时候遇到了如下的问题:对如下问题的解决方案记录如下:经过网络查找出现该问题的原因是:现在使用的机器曾经与服务器:192.168.31.170有过连接,连接断开后操作系统未将连接状态清除。解决方法:打开cmd命令窗口:1.输入命令:net use查看你当前与网络资源的连接,例如驱动器映射、IPC连接。2.用net use * /del /y命令中断开所有连接...
2018-02-11 14:33:26 1259
转载 VS插件VisualGDB破解版下载、安装和使用说明
转载:点击打开链接VisualGDB是一款VS的插件,支持在VS中编写、编译、调试Linux代码。VisualGDB会让你配置好远程的Linux服务登录信息,然后就可以自动同步本机和Linux服务器的编译环境。我们在VS写Linux代码,就和写Windows代码一样,非常方便。再借助VS写代码调试非常方便,可以大大提高Linux程序的开发速度。不仅是Windows程序员转Linux的福音,也是Li...
2018-02-11 12:06:01 14737 4
原创 Linux 下挂载新硬盘方法
思路:ls /dev,查看所有磁盘,以sda ,sdb这样开头的均是磁盘针对新挂载上的磁盘,首先将其格式化,mkfs.ext3 /dev/sdb1之后mount即可Linux的硬盘识别:一般使用”fdisk -l”命令可以列出系统中当前连接的硬盘设备和分区信息.新硬盘没有分区信息,则只显示硬盘大小信息.1.关闭服务器加上新硬盘2.启动服务器,以r...
2018-02-10 15:45:16 894
原创 Linux C ftruncate 函数清空文件注意事项(要使用 lseek 重置偏移量)
之前有个要把打开的文件清空,然后重新写入的需求,但是使用 ftruncate(fd, 0)后,并没有达到效果,反而文件头部有了'\0',长度比预想的大了。究其原因是没有使用 lseek 重置文件偏移量,是我太天真了,以为清空文件就会从头开始写入。------------------------------------- 我是解释分割线 -------------------------------...
2018-02-10 11:44:04 466
原创 Linux下用ifconfig命令设置IP、掩码、网关
设置IP和掩码ifconfig eth0 192.168.5.40 netmask 255.255.255.0设置网关route add default gw 192.168.5.1ifconfig eth0 10.0.192.79 netmask 255.255.254.0route add default gw 10.0.193.254
2018-02-08 15:46:26 4160
原创 嵌入式开发板设置IP
在嵌入式开发板联调测试时,通常都通过NFS挂载远程的主机下的一个目录,然后远程调试;通常开发板都没设置固定的IP,因此需要手动将IP地址手动设置为主机同一个网段下: ifconfig eth0 192.168.1.xxx;但开发板重启后,IP即丢失;为设置掉电保存的IP,一般均为修改开发板根文件系统下的一些配置文件,例如:在 /etc/init.d/rcS 中增加: ifconfig eth0 ...
2018-02-08 15:36:19 4349 3
转载 Qt自定义窗口部件
转载地址QtDesigner自定义窗口部件有两种方法:改进法(promotion)和插件法(plugin)改进法1、改进法之前,要先写好子类化QSpinBox后的HexspinBox.h和HexspinBox.cpp文件。把这两个文件拷贝到想要的项目中。HexspinBox.hCpp代码
2018-02-07 16:11:52 677
转载 qt绘制文本
转载地址:点击打开链接简述前面讲解了 Qt 图形的基本绘制,包括: 直线、弧线、矩形、椭圆、图片、多边形,以及其它一些高级用法,比如:渐变、转换等。本节主要分享文本的绘制。主要通过 QPainter 的 darwText() 函数来实现,里面包含多个重载函数,其中,可以通过 QRect 来指定绘制的区域,也可以通过 QPoint 来指定绘制的起始点。QFon
2018-02-07 13:48:52 331
原创 live555 编译动态库时遇到relocation R_X86_64_32 against `a local symbol'的错误
解决方法:将live555 四个库的makefile全部加上 -fPIC.$gcc -c hello.c$gcc -c main.c$gcc -shared -fPIC -o hello hello.o main.o.. relocation R_X86_64_32 against `a local symbol' can not be used whe
2018-02-05 16:15:26 960
原创 利用QPalette改变控件颜色
QPalette类相当于对话框或控件的调色板,它管理着控件或窗体的所有颜色信息,每个窗体或控件都包含一个QPalette对象,在显示时按照它的QPalette对象中对各部分各状态下的颜色的描述来进行绘制。QPalette类有两个基本的概念,一个是ColorGroup,另一个是ColorRole。void QPalette::setColor ( ColorRole role, co
2018-02-05 14:20:49 349
原创 Qt setMargin()和setSpacing() 的含义
mainLayout=newQVBoxLayout(this);mainLayout->setMargin(30); //表示控件与窗体的左右边距mainLayout->setSpacing(40); //表示各个控件之间的上下间距 setBackgroundRole(QPalette::Dark); setAutoFillBackground(true
2018-02-05 14:00:00 3540
原创 Qt5.7 + VS2015 环境搭建
简述之前介绍过 Qt5.x 的环境搭建,5.7 开始支持 VS2015,为了使用新的开发环境(典型的强迫症),不得不再次进行 Qt5.7 + VS2015 的环境搭建。除了之前介绍的搭建细节之外,其实中间有很多需要注意的部分。下面,主要分享搭建过程以及其中需要注意的一些事项。简述安装 VS2015安装 Qt57配置 Qt Creator配置编译器配置
2018-02-03 13:14:14 251
原创 QImage
支持的图像格式:BMP ,GIF , JPG , JPEG, PNG, PBM, PGM, PPM, XBM, XPM//使用给定的大小和格式构造图像QImage(const QSize &size, Format format)//使用给定的大小和格式构造图像QImage(int width, int height, Format format)
2018-02-02 16:16:35 1708
原创 updateGeometry函数
QWidget::updateGeometry()用于告知包含该widget的layout:该widget的size hint已发生变化,layout会自动进行调整。
2018-02-02 14:08:21 3686
zlmediakit-windows zlmediakit-windows zlmediakit-windows
2024-06-18
libuvc 相关代码 k230
2023-12-22
live555 vs2022
2023-11-22
多分辨率264,265文件多分辨率264,265文件多分辨率264,265文件多分辨率264,265文件多分辨率264,265
2023-07-05
macbook 2017 bootcamp win10 安装
2023-01-29
绘制流程图工具 绘制流程图工具
2022-11-06
音频文件数组转成c语言的数组
2022-09-08
数字音频接口(I2S,PCM,TDM,PDM)数字音频接口(I2S,PCM,TDM,PDM)数字音频接口(I2S,PCM,TDM
2022-06-24
音频测试文件,各种格式集合 wav pcm mp3
2022-04-28
cmake笔记 cmake 笔记 cmake笔记 cmake
2022-02-01
qt 多窗口yuv零拷贝渲染.rar
2021-11-26
drm-example.zip
2021-11-12
Jz2440_驱动二期笔记.zip
2021-11-02
u-boot-jz2440源码
2021-10-31
webrtc ulpfec无法全部还原丢失包问题
2020-09-04
TA创建的收藏夹 TA关注的收藏夹
TA关注的人