zoukankan      html  css  js  c++  java
  • [国嵌攻略][172][监控主系统设计与开发]

    ffmpeg是一个开源免费跨平台的视频和音频流方案,它提供了录制、转换以及流化音视频的完整解决方案。移植ffmpeg的目的主要是为了使motion能支持将捕获到的视频流转换成avi格式的视频文件进行存储。因此,我们仅需要移植ffmpeg中如下两个库,而且要在移植Motion之前进行ffmpeg的移植:

    libavformat:用于各种音视频封装格式的生成和解析,包括获取解码所需信息以生成解码上下文结构和读取音视频帧等功能。

    libavcodec:用于各种类型声音/图像编解码

    libavutil:包含一些公共的工具函数。

    1.源码包解压:

    tar xzf ffmpeg-0.5.1.tar.gz

    2.编译、安装 ffmpeg:

    2.1.进入ffmpeg-0.5.1源码目录。使用命令:

    ./configure --enable-memalign-hack --disable-debug --arch=arm --cross-prefix=arm-linux- --enable-shared --prefix=.../_install

    其中--prefix指明生成的库和执行程序的安装目录,这里将该路径设置为ffmpeg源码目录下的_install目录。

    2.2.使用命令:make,编译源码,使用命令:make install,将生成库和头文件安装到指定的_install目录下。

    2.3.拷贝.../_install/lib/下共享库到开发板根文件系统的/lib目录下。

    1.下载并解压motion

    tar xzf motion-3.2.12.tar.gz

    2.配置

    mkdir _install

    ./configure --host=arm-linux --without-mysql --without-pgsql --with-ffmpeg=.../ffmpeg-0.5.1/_install --prefix=${PWD}/_install

    3.编译

    make

    4.安装

    make install

    生成的程序在_install/bin/motion,配置文件在_install/etc/motion-dist.conf。复制程序和配置文件到开发板根文件系统中。

    并且复制jpeg的动态库到开发板的lib目录,cp  /opt/EmbedSky/4.3.3/arm-none-linux-gnueabi/libc/lib/libjpeg.* .../rootfs/lib/ -rf。

    在开发板根文件系统目录中创建/var/run/motion/目录,因为默认/var/run/motion/motion.pid文件将用来存放运行中的motion进程。当然也要创建motion.pid文件。

    5.修改配置文件

    videodevice /dev/video0   摄像头设备文件名

    v4l2_palette 2   摄像头获取图像格式

    width 640   图像宽度

    height 480   图像高度

    framerate 15   图像帧率

    threshold 1500   物体移动阈值

    locate on   标出移动物体

    target_dir /mnt/sd   图片保存位置

    on_motion_detected madplay alarm.mp3   当检测到物体移动时执行命令

    webcam_maxrate 3 网页监控视频流的最大帧率。由于在局域网中应用,因此为获得更好的实时监控质量,提高了该值。

    webcam_localhost off   限制仅本地可连接网络摄像机。取消该限制。

    control_localhost off   限制仅本地可通过网页进行控制。取消该限制。

    6.运行

    motion –c motion-dist.conf

  • 相关阅读:
    Nginx 高级配置
    nginx安装和优化配置
    location语法介绍
    iptables
    通过 loganalyzer 展示数据库中的系统日志
    ubuntu_server16.04详细安装步骤
    内存控制mmap的原型和使用方法
    C语言中open函数read函数lseek函数是如何使用的
    gdb调试工具的基本使用
    C语言如何制作静态库
  • 原文地址:https://www.cnblogs.com/d442130165/p/5342394.html
Copyright © 2011-2022 走看看