Page 1 of 1

FFMpeg Expertise needed

Posted: Fri Mar 14, 2014 5:01 am
by pen
Hi.

I might stretch some rule on double posting in multiple threads but in this case I need Windows experience on FFMpeg to solve my Linux FFMPeg problem.

So my problem is that I cannot find a pre-compiled FFMPeg binary for Ubuntu which works for both mkv embedded subtitles and for HLS/HTTP web streaming. I can find binaries that works for either but not both.

So now I have decided to try to build one myself which is complicated enough but before even doing that i would like help to know what libraries and build options that are included/set in a Window build of ffmpeg (since that build obviously works for the 99.9% of UMS users that are using Windows). Is it a standard build or is it a dll bundled with UMS?

So, is there anyone that can help out?

Pen

The Ubuntu problem is handled in the following thread - but note that I'm not asking for Ubuntu expertise here (trying to justify my double post):
viewtopic.php?f=10&t=1671

Re: FFMpeg Expertise needed

Posted: Sun Mar 16, 2014 1:54 am
by infidel
No claim to "expertise" here :) and I don't know whether it solves your specific MKV woes, but I follow the ffmpeg wiki using this configure line (extra libs highlighted):
../configure --enable-gpl --enable-libass --enable-libfaac --enable-libfdk-aac --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libspeex --enable-librtmp --enable-libtheora --enable-libvorbis --enable-x11grab --enable-libx264 --enable-nonfree --enable-version3 --enable-libfreetype --enable-fontconfig --enable-libv4l2 --enable-openssl
you may need to install these in addition to the packages listed on the wiki:

Code: Select all

sudo apt-get install rtmpdump libfreetype6-dev libfontconfig1-dev

Re: FFMpeg Expertise needed

Posted: Sat Mar 22, 2014 4:00 am
by pen
Thanks alot Infidel. It works after some work!

This is what I succeded with:

Code: Select all

./configure  --extra-libs="-ldl" --enable-static \
   --disable-shared --enable-gpl --enable-libass --enable-libfdk-aac --enable-libmp3lame \
   --enable-librtmp --enable-libopus \
   --enable-libtheora --enable-libvorbis --enable-libvpx --enable-libx264 --enable-nonfree --enable-version3 \
   --enable-libfreetype --enable-fontconfig --enable-openssl
It's a mix of the Ubuntu build proposal and your proposal. It includes all the blue ones except libv4l2. The following were not able to compile (missing libs):

libfaac
libopencore-amrnb
libopencore-amrwb
libspeex
libv4l2

Q1: What would I miss by not including them - in particular libv4l2 which you indicated as blue?
Note that it is a headless server so I'm not going to watch movies on it.
My guess is that amr is only for old mobile phones (not Android?)

Q2: What about the libs that I have included but was not in your list - can they negatively interfere?

I plan to write a howto in the Linux section once I get everything to work.

Pen

Re: FFMpeg Expertise needed

Posted: Sat Mar 22, 2014 11:52 pm
by Optimus_prime
pen, i do commend you on helping out the UMS community and sharing your results. We may have to attempt to get it into a release :)

Re: FFMpeg Expertise needed

Posted: Sun Mar 23, 2014 12:31 am
by infidel
Glad it worked :)!
pen wrote:Q1: What would I miss by not including them - in particular libv4l2 which you indicated as blue?
You're probably fine without them. I added libv4l2 at one point because of a device capture / screencast script I was working on. My particular list is "historic", most of it from earlier incarnations of the ffmpeg wiki page (it used to be a thread in the ubuntuforums), so I would go with the UMS ffmpeg options plus the current ffmpeg wiki proposal plus the blues.

pen wrote:--enable-static
Imo there's no really good reason to do a static build in linux, which just makes things more brittle and complicated. Even a static build of ffmpeg isn't usually truly static (use 'ldd path/to/your/ffmpeg' to see any shared deps). Some libs (e.g. openssl) won't link statically. I wouldn't include --enable-static in a wiki.

pen wrote:Q2: What about the libs that I have included but was not in your list - can they negatively interfere?
Highly doubtful :).