Feature #4588
allow building ffmpeg-static with "foreign" ffmpeg
0%
Description
Cross compiling Tvheadend with FFmpeg-static basically doesn't work.
Hopefully I didn't overlooked something fundamental here.
We tried a lot but didn't get it working due multiple problems at every part/step (opus, x265, ffmpeg ...).
They easiest solution I can think of: allow ffmpeg-static builds without the need to build ffmpeg inside of the Tvheadend build and instead use the normal packages that are already working at crosscompile toolchains (obviously these packages need to include everything Tvh needs). So basically allow Tvheadend to behave like every other program out there that has extern dependencies.
For different platforms (ARM, aarch64 ....) and even for different devices you need different quirks and optimisations - basically too much to handle it at Tvheadend. The crosscompile toolchains handle this already today.
For 4.2 we need to carry a rather hacky patch but this does not even work for arm.
Normal ffmpeg with x265 etc (made at the crosscompile toolchain) compiles without any problem for all archs.
So any improvement at this side would be very helpful especially with the new vaapi and omx support.
History
Updated by Jaroslav Kysela about 7 years ago
I probably do miss the point, but you can use external ffmpeg libraries. The tvh's static build can be disabled with '--disable-ffmpeg_static' but the libav option is set to auto by default, so the configure script tries to find ffmpeg libraries using pkg-config. If you compile your ffmpeg libraries in the static version only, everything should be fine. But note that there are some patches which 'fixes' some ffmpeg issues in support/patches directory (tvheadend). Without these patches some things might not be functional.
Updated by C vH about 7 years ago
Tx for your pointer, we had some misinterpretations at our side.
We thought that libx264_static options etc are saying that x264 should be static (what we need) and otherwise shared is used - but it basically says that tvh should build it. After getting this right We could figure out our problems
We have 2 different ffmpeg at our toolchain what creates some problems that masked our misconfiguration of the Tvh build.
Finally we are able to drop every patch we had for Tvh and everything works like desired (buildwise).
Updated by Jaroslav Kysela about 7 years ago
- Status changed from New to Rejected
OK. Everything seems fine. Closing as resolved.