通过ltib在根文件系统中增加mplayer和ffmpeg后,拟使用ffmpeg从摄像头(/dev/video0)采集视频。

刚开始使用了:

ffmpeg -f video4linux2 -s 320x240 -i /dev/video0 test.avi

但是出现了错误:

Wrong time base (0)

后来根据网页

https://www.linuxquestions.org/questions/linux-hardware-18/v4l-v4l2-setup-for-ffmpeg-533603/的建议,改成了:

ffmpeg -f video4linux2 -s 320x240 -r 60000/1001 -i /dev/video0 test.avi

之后就能采集了,根据ffmpeg的man page得知-r参数的含义是:

-r rate             set frame rate (Hz value, fraction or abbreviation)

因为ffserver在执行时会出现

bind(port 8090): Address family not supported by protocol

查了一下,是我所使用的ffmpeg版本bug

解决方式是

https://bugs.launchpad.net/ubuntu/+source/libav/+bug/879018

要特别注意,ltib在生成可执行文件过程中是通过litb编译时的rpm包生成的,所以为了使我们的修改生效,需要我们自行编译生成ffserver可执行文件。通过测试,尽量不要通过rpmbuild -bb ffmpeg.spec的方式,因为这个脚本应该是依赖于某个其他文件,如果通过rpmbuild编译,将生成错误的可执行文件。我们找到/opt/freescale/pkgs/ffmpeg-20080916.tar.bz2解压后手动编译,configure命令参考ffmpeg.spec文件,

./configure --cc=arm-linux-gcc --arch=arm --disable-altivec --disable-mmx --disable-mmx2 --enable-cross-compile --prefix=arm-linux-

然后需要修改config.mak文件的STRIP=arm-linux-strip否则会出现下文错误:

出现如下错误,通常是因为makefile中的STRIP变量设置不对,应该改成arm-linux-strip

strip: Unable to recognise the format of the input file `ffmpeg'

OKMX6Q ffmpeg & ffserver的更多相关文章

  1. ffmpeg+ffserver搭建流媒体服务器

    http://blog.chinaunix.net/uid-9688646-id-3399113.html ffmpeg和ffserver配合使用可以实现实时的流媒体服务.   一.理解 里边主要有如 ...

  2. FFmpeg+FFserver流媒体服务器介绍

    ffmpeg和ffserver配合使用可以实现实时的流媒体服务.   一.理解 里边主要有如下四个东西,搞清楚他们之间的关系就差不多明白了. 1. ffmpeg   2. ffserver   3. ...

  3. ffmpeg开发指南

    FFmpeg是一个集录制.转换.音/视频编码解码功能为一体的完整的开源解决方案.FFmpeg的开发是基于Linux操作系统,但是可以在大多数操作系统中编译和使用.FFmpeg支持MPEG.DivX.M ...

  4. ffmpeg与TS

    http://blog.csdn.net/shuyong1999/article/details/7176329 一个不错的音视频博客 0. 简介 FFmpeg是一个集录制.转换.音/视频编码解码功能 ...

  5. FFmpeg在Linux下搭建 ***

    今天介绍下FFmpeg在Linux下安装编译过程,总体过程比较顺利,就是在ffmpeg等的时间稍长点,仅当记录. 关于FFmpeg FFmpeg是一个开源免费跨平台的视频和音频流方案,属于自由软件,采 ...

  6. RTSP 流相关工具介绍

    RTSP (Real Time Streaming Protocol),实时流协议,是一种应用层协议,专为流媒体使用.本文将介绍 GStreamer, VLC, FFmpeg 这几个工具,如何发送.接 ...

  7. ffmpeg编译参数详解

    Usage: configure [options]用 法:configure [选项]Options: [defaults in brackets after descriptions]选   项: ...

  8. FFMPEG ./configure 参数及意义

    FFMPEG版本:2.6.2,编译环境:ubuntu 14.4. 不同版本的FFMPEG参数可能不同,可在FFMPEG目录下使用以下命令查看 ./configure --help --help pri ...

  9. [FFmpeg] ffmpeg参数详解

    ffmpeg 参数语法 ffmpeg [[options][`-i' input_file]]... {[options] output_file}... 如果没有输入文件,那么视音频捕捉就会起作用. ...

随机推荐

  1. Sql 的 RAISERROR用法

    http://www.yesky.com/imagesnew/software/tsql/ts_ra-rz_5ooi.htm RAISERROR 返回用户定义的错误信息并设系统标志,记录发生错误.通过 ...

  2. C#面向插件级别的软件开发 - 开源研究系列文章

    在现在的面向对象的分析与设计软件开发过程中,最开始就是面向对象的软件开发.但是,在实际的软件开发过程中,很多都是面向接口的开发方式,这种是一种面向对象开发的模式.但是,今天笔者给大家带来的是面向插件的 ...

  3. hadoop fs命令

  4. 一些关于memcpy memmove函数的区别,和模拟实现

    memcpy: 它是c和c++使用的内存拷贝函数,memcpy函数的功能是从源src所指的内存地址的起始位置开始拷贝n个字节到目标dest所指的内存地址的起始位置中. 函数原型:void* memcp ...

  5. LevelDB的源码阅读(二) Open操作

    在Linux上leveldb的安装和使用中我们写了一个测试代码,内容如下: #include "leveldb/db.h" #include <cassert> #in ...

  6. 5大UX设计谬论,如何去补救?

     以下内容由Mockplus团队翻译整理,仅供学习交流,Mockplus是更快更简单的原型设计工具. 每个新项目都是从学习开始的. 就像设计师需要了解一个特定的客户和他们的设计目标一样,客户需要了解设 ...

  7. 使用xUnit为.net core程序进行单元测试(中)

    第一部分: http://www.cnblogs.com/cgzl/p/8283610.html 下面有一点点内容是重叠的.... String Assert 测试string是否相等: [Fact] ...

  8. jq交叉轮播图变种【闪一下黑】

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  9. Python日志监控系统处理日志(pyinotify)

    前言 最近项目中遇到一个用于监控日志文件的Python包pyinotify,结合自己的项目经验和网上的一些资料总结一下,总的原理是利用pyinotify模块监控日志文件夹,当日志到来的情况下,触发相应 ...

  10. 初入python 用户输入,if,(while 循环)

    python 基础 编译型: 一次性将所有程序编译成二进制文件. 缺点:开发效率低,不能跨平台 优点:运行速度快. :c ,c++语言 等等.... 解释行:当程序执行时,一行一行的解释. 优点:开发 ...