2016-09-27 56 views
0

ffmpeg编译得很好,mlt也是如此。如何编译mlt以使用ffmpeg?

和熔体正常工作与颜色:绿之类的,但不能打开.ASF视频文件,但是ffplay发挥他们的罚款。

我试过以下,但仍MLT不会播放ASF文件:当我尝试播放ASF文件,这样,我得到这个

./configure --enable-gpl3 --enable-gpl --avformat-shared=/big/src/ffmpeg/libavformat/ 

./configure --enable-gpl3 --enable-gpl 

./configure 

bash-4.3$ melt /big/video-coon.asf 
Failed to load "/big/video-coon.asf" 
Failed to load "/big/video-coon.asf" 
Usage: melt [options] [producer [name=value]* ]+ 
Options: 
    -attach filter[:arg] [name=value]*  Attach a filter to the output 
[snip] 
For more help: <http://www.mltframework.org/> 

如果有人能够向我提供关于如何让mlt读取这些文件的线索,我将不胜感激!

我试图.asf文件转换为具有ffmpeg的一个.DV文件(这使得它巨大的!),但不会起到任何融化。 (玩ffplay/mplayer的但是。)

非常感谢,

杰西

回答

0

好吧,我得到它的工作..我想。 当然,有一个实例我甚至无法获得ffmpeg构建(它说的东西需要与-fPIC编译),但后来我卸载(使卸载)mlt,然后make clean和ffmpeg重新配置得到它再去一次。

所以是最好的,我可以告诉大家,以下是获取ffmpeg的和MLT从源代码的基础上Slackware的14.2 64位与multilib的诀窍:

注意,在我的情况,我有一个在/ usr/lib和一个/ usr/lib64 /和每个库中的一些库。

我的PKG_CONFIG_PATH没有包含/ usr/lib/pkgconfig /哪里是ffmpeg的安装放置libavformat.pc,所以pkg-config找不到它,所以mlt认为ffmpeg没有安装,所以要解决这个问题必须确保环境变量设置:

export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/lib/pkgconfig/

此外,libavformat流的一些部件似乎是一个lib目录,和其他人在其他的,所以我也设置$ LD_LIBRARY_PATH:

export LD_LIBRARY_PATH=$D_LIBRARY_PATH:/usr/lib:/usr/lib64

一旦成立,我建议去了MLT源文件夹并键入make uninstall如果您以前试图安装,在情况下,它的有关ffmpeg的编译干扰。 (是的,我知道它不应该被需要,但是我今晚有些不可思议,所以我只是告诉你。)

同样适用于ffmpeg - make uninstall如果你有不愉快的尝试安装它。

1:cd到了ffmpeg的源目录。

2:运行./configure --enable-shared --enable-gpl --enable-version3 && make -j8 && make install

3:如果顺利的话,那么cd到源目录MLT。

4:运行make clean && ./configure --enable-gpl --enable-gpl3 && make -j8 && make install

的一些要点:

1:ffmpeg的必须与MLT使用它--enable-共享建成。

2:mlt需要将$ PKG_CONFIG_PATH完全设置为在./configure过程中检测ffmpeg。

3:mlt需要在运行时正确设置$ LD_LIBRARY_PATH。

当然,所有这些可能都是特定版本的ffmpeg和mlt,它们是写作时的最新版本,但也许它会帮助某人。