I update Arch almost every day, and had recompiled blender already. However, I found that upon uninstalling x264-git (which ffmpeg-git had required) and installing normal x264, and recompiling blender, everything now works. Thanks!
If you decide to go back into the VCS route, build things in this order:
x264-git -->
ffmpeg-git or libav-git -->
(x264-git may have broken after that step, so rebuild it again) -->
mplayer-svn or mplayer2-git
gstreamer0.10-ffmpeg will usually compile at this time if one is using the --with-system-ffmpeg flag. Usually. Otherwise the git package is usable.
From there build Blender or MPD as needed. I haven't used Blender in while, so I don't know how well that goes. But, I've been using MPD from git for a long time and find that rebuilding it is usually only necessary with *.so bumps in "major" versions of FFmpeg or libav. Like gstreamer0.10-ffmpeg, there are occasions when mpd-git won't compile against libavformat.
]]>I'm having similar troubles - I don't use MPD, but neither Blender (blender-freestyle-svn from aur) and another program I use both give:
"error while loading shared libraries: libavformat.so.52: cannot open shared object file: No such file or directory"
I installed ffmpeg-git, which did not fix the problem, so I reverted back to normal ffmpeg (I try not use too many git/svn things if I can help it.).
My three questions are: Will this patch solve my problem? If so, where do I find ffmpeg_decoder_plugin.c? (Kompare will patch the file for me, then refuse to save it, and I have to copy it to I don't know where.) And, do I need to reinstall ffmpeg-git?
Bonus question: How do I recompile ffmpeg? Would it just be a simple "packer -S ffmpeg" since I still have the files in my cache?
The patch from above won't help you as it's in mainline now. I don't use FFmpeg from the repos, but it jumped to *.so.53. I'm guessing that some update broke the stuff that you had compiled against it. Fully updating your system with a current mirror should fix the MPD problem. You'll need to rebuild the Blender subversion package after you update your system. Keep in mind that Arch is designed to be updated regularly using an active server.
]]>"error while loading shared libraries: libavformat.so.52: cannot open shared object file: No such file or directory"
I installed ffmpeg-git, which did not fix the problem, so I reverted back to normal ffmpeg (I try not use too many git/svn things if I can help it.).
My three questions are: Will this patch solve my problem? If so, where do I find ffmpeg_decoder_plugin.c? (Kompare will patch the file for me, then refuse to save it, and I have to copy it to I don't know where.) And, do I need to reinstall ffmpeg-git?
Bonus question: How do I recompile ffmpeg? Would it just be a simple "packer -S ffmpeg" since I still have the files in my cache?
skottish wrote:wonder wrote:is simple, you don't use ffmpeg from extra and you use ffmpeg-git from aur. They had recently abi breakage and they bumped sonames
Or that.
*** skottish walks away quietly and hopes no one notices ***
By the way, mpd for git does not build against modern FFmpeg/libav code. There's a patch in their bug tracker that may apply the stable version, but I haven't tried since mpd still works for me:
sorry for being slow but how do you apply this patch?
You need to add those 4 lines that begin with a '+' to ffmpeg_decoder_plugin.c in the correct places and recompile it.
]]>wonder wrote:is simple, you don't use ffmpeg from extra and you use ffmpeg-git from aur. They had recently abi breakage and they bumped sonames
Or that.
*** skottish walks away quietly and hopes no one notices ***
By the way, mpd for git does not build against modern FFmpeg/libav code. There's a patch in their bug tracker that may apply the stable version, but I haven't tried since mpd still works for me:
sorry for being slow but how do you apply this patch?
]]>ffmpeg from extra is mt capable
]]>So should I try and compile MPD from source? Or do I need to add --enable-shared to ffmpeg? THough there is this comment on the AUR page:
I recommend removal of --enable-shared due to the removal of this option from x264-git. Compiling static x264 and shared FFmpeg is not recommended and causes FFmpeg compilation to fail on x86_64.
i don't plan to push the new ffmpeg in the next couples of months
If you got the urge to do so, the patch above applied cleanly to mpd-git for about two days after it was posted. So, if mpd pushes out a newer version, that's a good place to bisect if the problem hasn't been resolved yet.
-->
Never mind, low hanging fruit it was:
avio.patch
*** src/input/ffmpeg_input_plugin.c 2011-05-21 08:08:50.469603940 -0700
--- src/input/ffmpeg_input_plugin.c 2011-05-21 08:16:39.752020264 -0700
***************
*** 89,95 ****
input_stream_init(&i->base, &input_plugin_ffmpeg, uri);
#if LIBAVFORMAT_VERSION_INT >= AV_VERSION_INT(53,0,0)
! int ret = avio_open(&i->h, uri, AVIO_RDONLY);
#else
int ret = url_open(&i->h, uri, URL_RDONLY);
#endif
--- 89,95 ----
input_stream_init(&i->base, &input_plugin_ffmpeg, uri);
#if LIBAVFORMAT_VERSION_INT >= AV_VERSION_INT(53,0,0)
! int ret = avio_open(&i->h, uri, AVIO_FLAG_READ);
#else
int ret = url_open(&i->h, uri, URL_RDONLY);
#endif
is simple, you don't use ffmpeg from extra and you use ffmpeg-git from aur. They had recently abi breakage and they bumped sonames
Or that.
*** skottish walks away quietly and hopes no one notices ***
By the way, mpd for git does not build against modern FFmpeg/libav code. There's a patch in their bug tracker that may apply the stable version, but I haven't tried since mpd still works for me:
]]>[jonny@jonny-arch /]$ mpd ~/.mpd/mpd.conf
mpd: error while loading shared libraries: libavformat.so.52: cannot open shared object file: No such file or directory
Here is the output of ffmpeg:
[jonny@jonny-arch /]$ ffmpeg -version
ffmpeg version git-53b1534, Copyright (c) 2000-2011 the Libav developers
built on May 19 2011 22:02:44 with gcc 4.6.0 20110429 (prerelease)
configuration: --prefix=/usr --enable-gpl --enable-libmp3lame --enable-libfaac --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libtheora --enable-postproc --enable-x11grab --arch=x86_64 --enable-nonfree
libavutil 51. 1. 0 / 51. 1. 0
libavcodec 53. 3. 0 / 53. 3. 0
libavformat 53. 0. 3 / 53. 0. 3
libavdevice 53. 0. 0 / 53. 0. 0
libavfilter 2. 4. 0 / 2. 4. 0
libswscale 1. 1. 0 / 1. 1. 0
libpostproc 52. 0. 0 / 52. 0. 0
ffmpeg git-53b1534
libavutil 51. 1. 0 / 51. 1. 0
libavcodec 53. 3. 0 / 53. 3. 0
libavformat 53. 0. 3 / 53. 0. 3
libavdevice 53. 0. 0 / 53. 0. 0
libavfilter 2. 4. 0 / 2. 4. 0
libswscale 1. 1. 0 / 1. 1. 0
libpostproc 52. 0. 0 / 52. 0. 0
So I do have libavformat somewhere on my system, how do I get mpd to use it?
]]>