随笔-107  评论-133  文章-4  trackbacks-0
  2020年4月18日
参考:
https://www.cnblogs.com/live-program/p/11024649.html

一、libnl-3.2.25

./configure --prefix=/home/lfc/hostapd --host=arm-hisiv500-linux
make
make install

二、openssl-1.0.2r

./config no-asm shared --prefix=/home/lfc/hostapd --cross-compile-prefix=arm-hisiv500-linux-
make
make install

三、hostapd-2.8

1、修改Makefile
CFLAGS += $(EXTRA_CFLAGS)
CFLAGS 
+= -I$(abspath ../src)
CFLAGS 
+= -I$(abspath ../src/utils)
CFLAGS += -I/home/lfc/hostapd/include
LDFLAGS += -L/home/lfc/hostapd/lib
2、编译
cd hostap; cp defconfig .config
PKG_CONFIG_PATH
=/home/lfc/hostapd/lib/pkgconfig make CC=arm-hisiv500-linux-gcc

四、iw-5.4(静态编译)

1、修改Makefile
LIBS += -lpthread -lm
LDFLAGS += -static

all: $(ALL)
2、编译
PKG_CONFIG_PATH=/home/lfc/hostapd/lib/pkgconfig make CC=arm-hisiv500-linux-gcc

五、wpa_supplicant-2.9

1、修改Makefile
CFLAGS += $(EXTRA_CFLAGS)
CFLAGS 
+= -I$(abspath ../src)
CFLAGS 
+= -I$(abspath ../src/utils)
CFLAGS += -I/home/lfc/hostapd/include
LDFLAGS += -L/home/lfc/hostapd/lib
2、编译
cp defconfig .config
PKG_CONFIG_PATH
=/home/lfc/hostapd/lib/pkgconfig make CC=arm-hisiv500-linux-gcc
posted @ 2020-04-18 10:27 lfc 阅读(23) | 评论 (0)编辑 收藏
  2020年3月10日
     摘要: 这段时间对RT-Thread产生了浓厚的兴趣,也看过它和ucos、FreeRTOS的对比,最后还是选定了它(linux情结、爱国情怀?)一、硬件stm32f103以上的硬件,有现成的bsp可以用,根据自己的硬件稍微改动一下就行。可是手上只有stm32f030的硬件,硬着头皮弄一下,顺便了解一下移植。二、软件首先git clone https://github.com/RT-Thread/rt-th...  阅读全文
posted @ 2020-03-10 12:13 lfc 阅读(43) | 评论 (0)编辑 收藏
  2019年12月26日
参考:
https://blog.csdn.net/weixin_40490238/article/details/82260728
https://blog.csdn.net/runnerred/article/details/78380459

一、ubuntu环境准备

sudo apt-get install build-essential libpcre3 libpcre3-dev libssl-dev

二、nginx源码编译

wget https://nginx.org/download/nginx-1.16.1.tar.gz

git clone https:
//github.com/arut/nginx-rtmp-module.git

.
/configure --prefix=/opt/nginx --add-module=../nginx-rtmp-module --with-http_ssl_module

make

sudo make install

三、配置

wget -o init-deb.sh http://library.linode.com/assets/660-init-deb.sh

sudo mv init
-deb.sh /etc/init.d/nginx

sudo chmod 
+/etc/init.d/nginx

sudo 
/usr/sbin/update-rc.d -f nginx defaults

sudo service nginx start

vi 
/usr/local/nginx/conf/nginx.conf

vi 
/usr/local/nginx/conf/nginx.conf.default
#注意:这两处的配置文件都需要更改,此乃大坑
      
#在文件后添加,其它详细配置自行添加
rtmp{
    server{
        listen 
1935;
        application live{
            live 
on;
            }
        }
}

service nginx restart
posted @ 2019-12-26 11:38 lfc 阅读(44) | 评论 (0)编辑 收藏
  2019年10月29日
     摘要: 转自:https://blog.csdn.net/A771642/article/details/70284335Settings主界面加载时序图(1)先看一下主界面布局主界面对象介绍:(1)主界面(除了Suggestion,condition)其他对象都在List<DashBoardCagtory> Categories里面(2) Categories 有 4个对象。4个DashBo...  阅读全文
posted @ 2019-10-29 17:34 lfc 阅读(75) | 评论 (0)编辑 收藏
  2019年7月31日
     摘要: 引言主要目的是为了搞清楚众多的socket正文1、RTSPClient::sendDescribeCommandCode highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->Code highlighting produced by Actipro CodeHigh...  阅读全文
posted @ 2019-07-31 13:41 lfc 阅读(97) | 评论 (0)编辑 收藏
  2018年12月12日
一、windows下编译

   不推荐,主要是编译太慢。

二、linux下编译
      请参考:https://blog.csdn.net/u010311952/article/details/80658999
     
      我使用的ffmpeg版本是3.2.4,系统ubuntu 14.04,配置命令如下:
./configure --disable-static --enable-shared --enable-cross-compile --cross-prefix=i686-w64-mingw32- --target-os=mingw32 --arch=x86 --enable-gpl --enable-version3 --enable-runtime-cpudetect --prefix=/home/lfc/ffmpeg-win32/out --disable-avdevice --disable-avfilter
注:编译成static库也试过,make install时候提示莫名错误,而且vc下使用还得依赖一些gcc、mingw的库,所以放弃了。

后记
      如果只需要使用ffmpeg,而不需要在上面增加自己的东西的话,可以直接使用别人编译好的:
      https://ffmpeg.zeranoe.com/builds
posted @ 2018-12-12 13:06 lfc 阅读(101) | 评论 (0)编辑 收藏
  2018年6月1日
这段时间断断续续的在搞Onvif server,走了不少弯路,跌跌撞撞走过来,现在对接onvif test tool和海康NVR都成功了,顺便做一下记录,也供其他刚入门的朋友参考。
1、gsoap工具
其实这真的就是个工具,用于从onvif的描述文件(*wsdl等)生成框架代码(c/c++),把繁琐的xml描述变成结构体,把服务变成api调用,并提供一些封装好的工具soap_xxx。
有人喜欢这种工具(像我),也有人对它深恶痛之(主要还是因为编译出来的可执行文件大吧)。群上有高手是通过抓IPC的包,然后自己写简单的网络通信程序来发送抓包内容来实现的,简单粗暴,不过本人不喜欢这种方式,我更偏向于用gsoap工具,虽然刚开始会被它自动生成的结构体搞混,可是仔细对照协议或抓包数据来看,脉络还是很清晰的,而且这样的代码不容易犯错,更方便维护。
至于如何用gsop生产框架代码,网上有很多介绍,我自己也曾经生成过,不过后面是直接用别人生产好的^_^
2、哪些API需要实现?
我用onvif test tool调试的话,只需要实现下面几个API即可:
1)__wsdd__Probe
2)__tds__GetDeviceInformation
3)__tds__GetCapabilities
4)__tds__GetServices
5)__trt__GetProfiles
6)__trt__GetStreamUri
这么多API要实现,对于初学者来说是一件很困难的事,要是有类似live555这种开源工程供参考就好了。遗憾的是没有,幸好网上零零散散的有几个人分享的源码(最后我会列出来),虽然不尽完善,有的还有bug,不过刚好足够开个头。
后面要接海康NVR,发现又得多实现几个API(有的还没参考代码):
1)__tds__GetSystemDateAndTime
2)__tds__SetSystemDateAndTime
3)__tds__GetNetworkInterfaces
4)__trt__GetVideoEncoderConfiguration
5)__trt__GetVideoEncoderConfigurationOptions
3、总结:
Onvif其实有点像我们产品的参数配置协议(不够要复杂多了),一路开发过来,感觉有以下几点体会:
1)像我做onvif server端,手上要准备好一个IPC,电脑要装好onvif test tool工具,高手还会用Wireshark工具(我曾经用过,不够觉得没有onvif test tool工具好用)
2)gsoap里面的结构体,很多成员都需要调用soap_malloc申请的,注意申请后养成memset的好习惯,否则可能会碰到怪问题(我曾经在Ubuntu下测试都是好好的,交叉编译到arm上就出问题)
3)可以先在Ubuntu下测试,测试好了再移植到arm上
4)填写结构体成员时,一定要小心、小心、小心(重要的事说三遍),onvif不是什么高深的东西,但绝对是繁琐,需要耐心的东西。
4、干货
说了那么多虚的,来得实际的。下面是我开发过程中参考过的资料:
https://blog.csdn.net/ghostyu/article/details/8208428
https://blog.csdn.net/max_min_go/article/details/17964643
http://www.itnotepad.cn/Home/Article/num/31.html
https://wenku.baidu.com/view/510b1105a58da0116d174906.html
https://www.onvif.org/onvif/ver10/device/wsdl/devicemgmt.wsdl
上面都是我认为比较好的开发onvif server端的帖子,不过再好的帖子都比不上源码:
1)个人觉得框架写得比较好的,我也是基于他这个框架来完善的
http://www.pudn.com/Download/item/id/2481300.html
2)实现了比较多API的参考代码(从源码上看跟上面的某个贴有对应关系的)
http://www.pudn.com/Download/item/id/2836334.html
posted @ 2018-06-01 18:23 lfc 阅读(901) | 评论 (0)编辑 收藏
  2018年1月9日


起因: 不小新把记录了公司服务器IP,账号,密码的文件提交到了git
方法:

    git reset --hard <commit_id>

    git push origin HEAD --force



其他:

    根据–soft –mixed –hard,会对working tree和index和HEAD进行重置:
    git reset –mixed:此为默认方式,不带任何参数的git reset,即时这种方式,它回退到某个版本,只保留源码,回退commit和index信息
    git reset –soft:回退到某个版本,只回退了commit的信息,不会恢复到index file一级。如果还要提交,直接commit即可
    git reset –hard:彻底回退到某个版本,本地的源码也会变为上一个版本的内容


    HEAD 最近一个提交
    HEAD^ 上一次
    <commit_id> 每次commit的SHA1值. 可以用git log 看到,也可以在页面上commit标签页里找到.

commit合并:
http://www.douban.com/note/318248317/
posted @ 2018-01-09 10:51 lfc 阅读(87) | 评论 (0)编辑 收藏
仅列出标题  下一页