macOS编译ffmpeg中的播放器ffplay

栏目: IT技术 · 发布时间: 6年前

内容简介:之前写过一篇关于编译ffmpeg的文章,地址:linux安装ffmpeg本文在那篇基础上,讲怎么编译ffmpeg的播放器ffplay。本次实验环境:

之前写过一篇关于编译ffmpeg的文章,地址:linux安装ffmpeg

本文在那篇基础上,讲怎么编译ffmpeg的播放器ffplay。

本次实验环境:

  • macOS Catalina 10.15.1
  • FFmpeg 3.4

在ffmpeg目录下执行 ./configure (携带好需要的参数),输出的信息包含了会编译哪些可执行程序:

Programs:
ffmpeg			  ffprobe		    ffserver

可以看到,并不包含ffplay。这是由于ffplay依赖sdl库,我本地环境没有,所以需要先安装sdl库。

在ffmpeg目录下执行 ./configure -h ,输出的信息可以看到这么一行:

--disable-sdl2           disable sdl2 [autodetect]

说明使用的是sdl2,并且如果当前环境有sdl2的话,会自动检测并使用。

这里我们选择源码安装sdl2:

$wget https://www.libsdl.org/release/SDL2-2.0.12.tar.gz
$cd SDL2-2.0.12/
$./configure
$make && make install

再次回到ffmpeg目录下执行 ./configure (携带好需要的参数),显示如下信息:

Programs:
ffmpeg			  ffplay		    ffprobe		      ffserver

说明会包含ffplay了,执行make编译:

$make -j8

编译完就可以看到生成好的ffplay等可执行文件了。尝试使用ffplay播放一个文件,一切正常。

最后,再贴一个macOS编译SDL1.2的方法,尽管我本次编译ffplay使用的SDL2,不需要SDL1.2,但是我在编译SDL1.2时也遇到了一些问题,把相关内容贴在这,留给需要的人。

实验环境: macOS Catalina 10.15.1

https://www.libsdl.org/download-1.2.php 这个网站找到源码下载地址。

下载SDL1.2.15,编译,安装:

$wget https://www.libsdl.org/release/SDL-1.2.15.tar.gz
$cd SDL-1.2.15/
$./configure
$make && make install

编译报错:

./include/SDL_syswm.h:58:10: fatal error: 'X11/Xlib.h' file not found
#include <X11/Xlib.h>
         ^~~~~~~~~~~~
1 error generated.

缺少X11,直接下载dmg安装包文件,安装XQuertz,下载地址: https://dl.bintray.com/xquartz/downloads/XQuartz-2.7.11.dmg

再次尝试编译SDL,输出如下信息:

./src/video/quartz/SDL_QuartzVideo.h:94:5: error: unknown type name 'CGDirectPaletteRef'
    CGDirectPaletteRef palette;            /* palette of an 8-bit display */

解决方法是把报错的那行代码注释掉。

再次尝试编译SDL,输出如下信息:

./src/video/x11/SDL_x11sym.h:168:17: error: conflicting types for '_XData32'
SDL_X11_SYM(int,_XData32,(Display *dpy,register long *data,unsigned len),(dpy,data,len),return)

我们修改报错的代码,在register后面增加 _Xconst ,修改后如下:

SDL_X11_SYM(int,_XData32,(Display *dpy,register _Xconst long *data,unsigned len),(dpy,data,len),return)

再次尝试编译SDL,编译通过。

原文链接: https://pengrl.com/p/20043/

原文出处: yoko blog ( https://pengrl.com )

原文作者: yoko ( https://github.com/q191201771 )

版权声明:本文欢迎任何形式转载,转载时完整保留本声明信息(包含原文链接、原文出处、原文作者、版权声明)即可。本文后续所有修改都会第一时间在原始地址更新。

macOS编译ffmpeg中的播放器ffplay


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Web Data Mining

Web Data Mining

Bing Liu / Springer / 2006-12-28 / USD 59.95

Web mining aims to discover useful information and knowledge from the Web hyperlink structure, page contents, and usage data. Although Web mining uses many conventional data mining techniques, it is n......一起来看看 《Web Data Mining》 这本书的介绍吧!

在线进制转换器
在线进制转换器

各进制数互转换器

RGB CMYK 转换工具
RGB CMYK 转换工具

RGB CMYK 互转工具

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具