Page MenuHomePhabricator

ffmpeg/libav on jessie video scalers
Closed, ResolvedPublic

Description

On trusty video scalers we use a a custom build of ffmpeg 2.7 (which isn't available in trusty). jessie has libav 11.7 as the default provider of the libav* libraries and ffmpeg 3.0.2 in jessie-backports in a co-installable manner (the binary names are different due to higher sonames). Due to that the jessie-based image/video scalers current have a mix of libav and ffmpeg: ffmpeg is provided in jessie-backports, but ffmpeg2theora is not, so it pulls in the binary packages from libav.

My proposal would be to rebuild ffmpeg2theora against ffmpeg from jessie-backports, so that we only use ffmpeg 3 on jessie scalers. @brion : Do you concur?

Event Timeline

Agreed; the packages on Jessie are likely also out of date both for ffmpeg2theora and libtheora.

libtheora 1.2.0 is pretty stable with a hugely improved encoder, but never got an official blessed tarball release so most distros still have a libtheora 1.1 package. We should already have a package for the current Ubuntu boxes that can be rebuilt cleanly on Jessie.

(Both libtheora and ffmpeg2theora get the occasional bug fix but not a lot of active development as Theora is largely replaced by newer codecs in most usages.)

Sounds good, I'll rebuild libtheora as used on trusty for jessie-wikimedia and make a backport of ffmpeg2theora 0.30 for jessie.

The following packages have been built for jessie-wikimedia and uploaded to apt.wikimedia.org:
libtheora 1.2.0~git+20150816-1+wmf1
ffmpeg2theora 0.30-1+wmf1
chromaprint 1.3-1+wmf1

That means that on the jessie video scalers we no longer rely on/install libav but only use ffmpeg 3.0.2. Apart from being a lot more secure (ffmpeg has had hundreds of fuzzing fixes missing in libav) this also allows future features like HEVC support etc.