[FFmpeg-user] how to rename libx264 shared library(libx264.so.152) in FFmpeg

Anand Veerappan anandzone at gmail.com
Tue Oct 15 08:18:06 EEST 2019


Hi Barsnick

Thanks for sharing this information.

Step 1: As mentioned in your email we remanded the libx264-mv.so.152 file.
Step 2: Compilation was done successfully in FFmpeg.
Step 3: While launching the FFmpeg executable it doesn't consider the
modified libx264-mv.so.152 file and it looks for libx264.so.152 file only.

Please refer attached screenshot.

Step 1: x264 source code configure modification:

[image: x264_config.jpg]

Step 2: After compilation the modified so file mentioned below

[image: x264_config_file.jpg]

Step 3: While executing FFmpeg binary it requires original libx264.so.152
instead of modified libx264-mv.so.152.

[image: ffmpeg_error.jpg]

Please let us know we need to make any changes in FFmpeg configuration
settings.

Regards
Anand V





On Thu, Oct 10, 2019 at 9:40 PM Moritz Barsnick <barsnick at gmx.net> wrote:

> On Thu, Oct 10, 2019 at 17:45:15 +0200, Carl Eugen Hoyos wrote:
> > Am Do., 10. Okt. 2019 um 16:45 Uhr schrieb Moritz Barsnick <
> barsnick at gmx.net>:
> > > In other words:
> > > - Rename libx264.so.XYZ
> >
> > > - Change the dependency on the depending component of ffmpeg using
> "patchelf
> > >  -replace-needed" (no copies needed as in my proof of concept)
> >
> > As long as FFmpeg is open-source software:
> > Isn't it much easier to link again?
>
> That defeats the quick hack: During build-time linking, the linker
> takes the referenced dynamic library's "SONAME" and uses that for the
> resulting binary's "NEEDED". This means you would need to modify
> libx264.so's SONAME as well[*]. Sure, you can also do that with
> patchelf. But you're suggesting the actual sources - the proper,
> "clean" way -  so you would need to:
>
> - modify libx264's build scripts to use a different target file name
> - modify libx264's build scripts to use a different target soname
>   - and rebuild libx264 thus
> - possibly modify libx264's pkgconfig file (assuming ffmpeg uses that)
> - build ffmpeg against the modified pkgconfig file, or have it refer to
>   the modified library name
>
> That may be the proper way, especially if you want to build more than
> one competing library (like for experiments with various
> optimizations). But we don't know the intent of the original poster, so
> that might be going too far.
>
> [*] You would also need to provide a modified symlink libx264.so ->
> libx264_modified.so.15x.
>
> Moritz
> _______________________________________________
> ffmpeg-user mailing list
> ffmpeg-user at ffmpeg.org
> https://ffmpeg.org/mailman/listinfo/ffmpeg-user
>
> To unsubscribe, visit link above, or email
> ffmpeg-user-request at ffmpeg.org with subject "unsubscribe".
-------------- next part --------------
A non-text attachment was scrubbed...
Name: x264_config.jpg
Type: image/jpeg
Size: 146430 bytes
Desc: not available
URL: <http://ffmpeg.org/pipermail/ffmpeg-user/attachments/20191015/f6f5fc5c/attachment.jpg>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: x264_config_file.jpg
Type: image/jpeg
Size: 11260 bytes
Desc: not available
URL: <http://ffmpeg.org/pipermail/ffmpeg-user/attachments/20191015/f6f5fc5c/attachment-0001.jpg>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: ffmpeg_error.jpg
Type: image/jpeg
Size: 137415 bytes
Desc: not available
URL: <http://ffmpeg.org/pipermail/ffmpeg-user/attachments/20191015/f6f5fc5c/attachment-0002.jpg>


More information about the ffmpeg-user mailing list