Gentoo Archives: gentoo-dev

From: Alexis Ballier <aballier@g.o>
To: gentoo-dev@l.g.o
Cc: phajdan.jr@g.o
Subject: Re: [gentoo-dev] Chromium system ffmpeg
Date: Tue, 15 Jan 2013 12:55:23
Message-Id: 20130115095506.6e033640@gentoo.org
In Reply to: [gentoo-dev] Chromium system ffmpeg by "Paweł Hajdan
1 Hi,
2
3 On Mon, 14 Jan 2013 20:34:42 -0800
4 ""Paweł Hajdan, Jr."" <phajdan.jr@g.o> wrote:
5
6 > I'm trying to make Chromium be more compatible with more versions of
7 > ffmpeg:
8 > <https://groups.google.com/a/chromium.org/d/topic/chromium-dev/fm5Oe_AC3Sc/discussion>
9 > (although not stated there, that includes libav).
10
11 I've done quite a lot of work for various packages among the past years
12 on that side, so if you have specific questions, feel free to ask.
13
14 > Now the initial response there is not enthusiastic (which doesn't
15 > surprise me), but do you think there are some points useful for the
16 > discussion I'm not aware of?
17
18 I don't get what is the problem: chromium uses an internal version
19 corresponding to ffmpeg git master and doesn't build with older ones?
20 What is the min. version it works with?
21 As a distro we have two options:
22 1) patch chromium to add #if's for older ffmpeg versions and be
23 compatible: this may or may not be accepted by upstream, supporting
24 older versions is just garbage code for them.
25 2) (preferred) coordinate the other packages to be compatible with
26 newer versions and unmask latest (we should be very close to be able to
27 unmask ffmpeg-1) and make chromium require this version (this require
28 chromium upstream to figure out what is the min. req. version)
29
30 we should probably do something in-between 1 and 2 in order not to hold
31 off sec. stabilizations of chromium because dozens of stable packages
32 do not build with latest ffmpeg.
33
34
35 > What are the main challenges of keeping up-to-date with latest ffmpeg
36 > API changes? How do other projects deal with that?
37
38 Specify a min. supported version, use #if for what remains.
39 It may be easy or quite a lot of work, depending on what part of the
40 API is used. ATM, being compatible with ffmpeg 0.10 up to git master
41 isn't _that_ heavy on #if's (see eg:
42 http://dev.gentoo.org/~aballier/distfiles/xbmc-11.0-ffmpeg-1.0-compat-1.tar.bz2
43 ) but may require a lot of changes.
44 Usually, if you build with the latest ffmpeg release and don't see any
45 deprecation warning, you are safe for ~1 year or more.
46
47 IMHO a compatibility layer like you suggest on your link will be a
48 pain, #if's are easier to handle.
49
50 Alexis.

Replies