Let's do the same as what #613 did for RPM: ship an ffmpeg-xpra package with the same version of ffmpeg we support everywhere else. This will remove the need for patches and all the complications associated with that and will allow us to support most distro versions with just one version of the source.
Related to #1242 (ffmpeg 3.1 API change)
Done in r13010 + r13012 with some related work in r13008 + r13011. I've built some beta packages with those changes.
The ffmpeg packaging files could be improved to download the source for the specific version being built rather than relying on it being there already (which could make us build the wrong version...) but this will have to do for now.
@smo: over to you, you will need to build and install ffmpeg-xpra on your Debian / Ubuntu build systems.
Also means we can support much older distros like Debian Wheezy and Ubuntu Precise, without any patches! (just with r13180 for libx264 compatibility)
I've had a chance to try client and server with ubuntu 16.04 xenial will try debian and some older distros when I have a chance.
There is a problem with yakkety: opencv links against some ffmpeg libraries which conflicts with our private ones. (at first it looked like rpath was not being honoured) To make matters worse, the ffmpeg version in yakkety (http://packages.ubuntu.com/yakkety/libavcodec-dev - version 3.0.2) is too old so we cannot build dec_avcodec2 against it. (it is missing avcodec_send_packet / avcodec_receive_frame from ffmpeg>=3.1). So we turn off webcam in yakkety for now: r14347. (we could enable it server-side since that doesn't use opencv at all) Longer term, we should probably move away from opencv and use native code instead.
Also, r14345 updates to ffmpeg 3.2 (just out).
Tried building and installing on debian wheezy and jessie.
Needed to add some build requirements in r14399 otherwise all is good on those 2 platforms.
New beta packages posted with that change. Works for me.
Follow up: #1751 switching back to system libraries on some distros...
this ticket has been moved to: https://github.com/Xpra-org/xpra/issues/1256