zoukankan      html  css  js  c++  java
  • ffmpeg 的编译

    操作如下:

    关于编译FFMPEG的初级教程

    关于编译FFMPEG的初级教程
    1.
    首先我们要下载相关工具,这里不多说,大家按照我的地址去下载文件就好了

    CODE:

    MINGW下载地址:http://prdownloads.sourceforge.net/mingw/MinGW-3.1.0-1.exe?download
    然后在下载MSYS http://prdownloads.sf.net/mingw/MSYS-1.0.10.exe?download

    好先喝点咖啡,哈哈
    首先我们先安装一下MINGW,我的目录是c:/MINGW,默认的,然后接下来要安装MSYS

    这里要有些注意,安装目录看到别人是这么说的,C:/MinGW/bin/1.0,意思就是安装在你的MINGW目录下的BIN里面

    OK
    ,开始安装吧!注意安装完毕以后有个DOS界面,这里至关重要,请谨慎操作

    按照图片的操作即可,

      


    安装好以后,我们在下载一个LAME,我不知道是干嘛用的,反正就安装吧

    CODE:

    下载地址:http://prdownloads.sourceforge.net/lame/lame-3.97b2.tar.gz?download

    然后解压到C:/MinGW/bin/1.0/lame-3.97

    好了,启动桌面上的MSYS,然后出入一下代码
    首先进入lame目录,呵呵
    下面步骤

    CODE:

    1.cd c:
    2.cd MinGw
    3.cd bin
    4 cd 1.0
    5.cd lame-3.97

    然后开始编译,一下是步骤

    CODE:

    1  ./configure(根据的你电脑速度决定快慢)
    2. make
    3. make install

    好了,你可以下载FFMPEG文件进行编译了,哈哈
    首先下载FFMPEG
    然后解压到磁盘里面,同样使用MSYS进入该目录输入一下代码

    CODE:

    ./configure --enable-memalign-hack --enable-mingw32 --enable-mp3lame --extra-cflags=-I/local/include --extra-ldflags=-L/local/lib

    执行完毕以后,在输入

    CODE:

    make

    执行完毕以后,在输入

    CODE:

    make install

    OK了吧:),如果存在问题,希望高手纠错阿

     //--------------------------------------------

    在编译ffmpeg-0.4.9-p20060530时,会出现下面的错误:

    C:/DOCUME~1/admin/LOCALS~1/Temp/ccCWhaaa.o(.text+0x3d2): In function `main':
    c:/mingw/bin/1.0/ffmpeg2/qt-faststart.c:152: undefined reference to `fseeko64'
    C:/DOCUME~1/admin/LOCALS~1/Temp/ccCWhaaa.o(.text+0x516):c:/mingw/bin/1.0/ffmpeg2/qt-faststart.c:164: undefined reference to `fseeko64'
    C:/DOCUME~1/admin/LOCALS~1/Temp/ccCWhaaa.o(.text+0x51e):c:/mingw/bin/1.0/ffmpeg2/qt-faststart.c:165: undefined reference to `ftello64'
    C:/DOCUME~1/admin/LOCALS~1/Temp/ccCWhaaa.o(.text+0x900):c:/mingw/bin/1.0/ffmpeg2/qt-faststart.c:248: undefined reference to `fseeko64'
    C:/DOCUME~1/admin/LOCALS~1/Temp/ccCWhaaa.o(.text+0xe08):c:/mingw/bin/1.0/ffmpeg2/qt-faststart.c:133: undefined reference to `fseeko64'
    C:/DOCUME~1/admin/LOCALS~1/Temp/ccCWhaaa.o(.text+0xe2d):c:/mingw/bin/1.0/ffmpeg2/qt-faststart.c:140: undefined reference to `ftello64'
    make: *** [qt-faststart.exe] Error 1
    就是在文件qt-faststart.c开头找不到定义的函数fseeko64'和函数ftello64,在网上有如下帖子:

    (连接):http://www.datafocus.com/docs/man3/fseek.3.asp

    fseek(), fseeko(), fseeko64()

    reposition a stream's file pointer 

    Function


    SYNOPSIS

    #include <stdio.h>

    int fseek(FILE *stream, long offset, int whence);

    int fseeko(FILE *stream, off_t offset, int whence);

    int fseeko64(FILE *stream, off64_t offset, int whence);


    DESCRIPTION

    The fseek() function repositions a file pointer for a stream.

    The fseeko() function is identical to fseek() except for the type of the offset.

    The fseeko64() function is a part of the large file extensions, and is similar to fseeko() except that a larger file offset can be specified.

    If the stream is writeable, and buffered data has not yet been written to the underlying file, fseek() causes the unwritten data to be written to the file, and marks the st_ctime and st_mtime fields of the file for update.


    PARAMETERS

     

    stream 

    Points to the stream whose file pointer is to repositioned

    offset 

    Is the new position in the file (relative to whence) for the file pointer.

    whence 

    Specifies from what point the offset is determined.


    RETURN VALUES

    The fseek(), fseeko(), and fseeko64() functions return 0 if they succeed; otherwise, they return -1 and errno is set to one of the following values:

     

    EAGAIN 

    The O_NONBLOCK flag is set for the file descriptor underlying stream, and the process would be delayed in the write operation.

    EBADF 

    The file descriptor underlying stream is not valid.

    EFBIG 

    The file is a regular file and an attempt was made to write at or beyond the offset maximum associated with the corresponding stream.

    EINTR 

    A signal interrupted the call.

    EINVAL 

    The whence argument is invalid.

    ENOSPC 

    There was no free space remaining on the device containing the file.

    EOVERFLOW 

    The resulting file offset would be a value which cannot be represented correctly in an object of the requested type.

    EPIPE 

    An attempt is made to write to a pipe or FIFO that is not open for reading by any process. A SIGPIPE signal is also sent to the process.


    CONFORMANCE

    ANSI/ISO 9899-1990.

    fseeko(), fseeko64(): Large File Specification, revision 1.5.


    MULTITHREAD SAFETY LEVEL

    MT-Safe.


    PORTING ISSUES

    The file positions reported by fgetpos(), ftell(), ftello() may be incorrect for files that are open in text mode in the case that the file is being read, or the case where the file is being written to and there is buffered data which has not yet been written to the underlying file. In the case that the file is being written to, fflush() can be used prior to calling fgetpos() ftell(), or ftello() to ensure the accuracy of these functions. Text mode files with no buffering do not have this problem, however performance can be significantly degraded with buffering turned off.


    AVAILABILITY

    MKS Toolkit for Professional Developers
    MKS Toolkit for Enterprise Developers
    MKS Toolkit for Enterprise Developers 64-Bit Edition


    SEE ALSO

     

    Functions:
    fopen(), ftell(), lseek(), popen(), rewind(), ungetc(), write()

     

    Miscellaneous:
    lf64

    也就是说在此环境下找不到这两个函数,我在文件的开头修改如下:

    #ifdef __MINGW32__
    //#define fseeko(x,y,z)  fseeko64(x,y,z)//deleted by Liu
    #define fseeko(x,y,z)  fseek(x,y,z)
    //#define ftello(x)      ftello64(x)//deleted by Liu
    #define ftello(x)      ftell(x)
    #endif

    这两个函数的区别在于一个便宜量为64位的,一个位32位的,感觉在一般的电脑上32位已经够用,应该不会发生问题。

    望高手给于指点!

  • 相关阅读:
    MATLAB中的灰狼优化算法
    关于excel的一个问题的解决--(但是还是没弄清楚解决的原理)
    Windows上面遇到一个问题一直没有解决,求大佬指教
    Visio实用快捷键+比较不错的总结
    通过命令符查看笔记本电脑的电池损耗
    使用小工具QuickLook的使用
    科研工具--HistCite
    win10 效率
    office 2016文件已损坏,无法打开
    关于mathtype的使用方法的一些总结
  • 原文地址:https://www.cnblogs.com/rainbowzc/p/2422346.html
Copyright © 2011-2022 走看看