Self explanatory, I think. System ffmpeg can be libav, and chromium compiles with that. Reproducible: Always
Generally sounds good, but needs testing. I'd appreciate success or failure reports with the following data: version of www-client/chromium and version of ffmpeg/libav used.
[ebuild R ] media-video/libav-0.7_pre20110327 [ebuild R ] www-client/chromium-11.0.696.28 (i.e. latest ~arch for both)
Testing with libav-0.6.2: chromium-10.0.648.204 fails to build (missing libavcore/samplefmt.h) chromium-11.0.696.28 fails to build (missing libavcore/samplefmt.h) chromium-12.0.712.0 fails to build (missing libavcore/samplefmt.h) Testing with libav-0.7_pre20110327: chromium-10.0.648.204 fails to build (missing libavcore/samplefmt.h) chromium-11.0.696.28 builds and plays html5 video chromium-12.0.712.0 builds and plays html5 video Some comments: - chromium-10.0.648.204 does not apply chromium-ffmpeg-build-r0.patch. - libav-0.6.2 installs libavutil as version 50.15.1. chromium-ffmpeg-build-r0.patch looks for >= 50.38.0. - libav-0.7_pre20110327 installs libavutil as version 50.39.0. - I'm guessing that ffmpeg and libav re-synchronized version numbers at some point after the libav-0.6.2 release was cut. I also want to point out that chromium-ffmpeg-build-r0.patch came from a code review (which I created) [1]. The upstream Chromium developer actually modified it before committing [2]. The committed version relies on libavcodec/avcodec.h to pull in the correct samplefmt.h. If you use the patch that was actually committed, libav-0.6.2 should work. [1] http://codereview.chromium.org/download/issue6791004_1.diff [2] http://src.chromium.org/viewvc/chrome/trunk/src/media/ffmpeg/ffmpeg_common.h?view=patch&r1=80200&r2=80199&pathrev=80200
I think that applying the committed patch may make Chromium compatible with ffmpeg-0.6, so I will hold off on testing with media-video/ffmpeg until Paweł can swap patches.
chromium-12.0.712.0-r1 contains the updated patch, thanks Mike. I bumped the ebuild to make the test results unambiguous. The libav test results look promising. Feel free to skip testing chromium-10.x, the project moves quite fast and I'd prefer to avoid making changes to stable ebuilds anyway. In fact, I'm totally fine with testing just with chromium-12.x.
Well, that didn't work. :( Building chromium-12.0.712.0-r1 against either libav-0.6.2 or ffmpeg-0.6 produces this error: media/filters/audio_file_reader.cc:152:62: error: ‘av_get_bits_per_sample_fmt’ was not declared in this scope I think we can eliminate those 2 library versions as possibilities. We are going to need a more granular dependency than >=virtual/ffmpeg-0.6.
(In reply to comment #6) > Well, that didn't work. :( > > Building chromium-12.0.712.0-r1 against either libav-0.6.2 or ffmpeg-0.6 > produces this error: > > media/filters/audio_file_reader.cc:152:62: error: ‘av_get_bits_per_sample_fmt’ > was not declared in this scope > > I think we can eliminate those 2 library versions as possibilities. We are > going to need a more granular dependency than >=virtual/ffmpeg-0.6. The problem here is that chromium requires ffmpeg-0.6_p25767 (or libav-0.7_pre*). Guess an ffmpeg-0.7 virtual that pulls in ffmpeg >0.6 and libav >0.6.2 should work.
(In reply to comment #7) > The problem here is that chromium requires ffmpeg-0.6_p25767 (or > libav-0.7_pre*). Guess an ffmpeg-0.7 virtual that pulls in ffmpeg >0.6 and > libav >0.6.2 should work. The ffmpeg-0.7 virtual should rather pull in >=ffmpeg-0.6_p25767, as said even in the comment above chromium requires >=ffmpeg-0.6_p25767 and is known to be broken with earlier versions of ffmpeg. Similarly for libav, I'd just like to pull in >=libav-0.7_pre20110327 for which we have success reports. media-video maintainers, could you please add such a versioned virtual for ffmpeg?
you have 0.6.90 for that purpose
Thanks everyone for the tests, I switched >=chromium-12.0.725.0 to virtual/ffmpeg. It should migrate from hard mask to ~arch in few weeks, and I plan to close the bug then. media-video maintainers, if you'd like to speed up the process, I can also try migrating the chromium ebuilds currently in ~arch to the virtual, but it's risky. It's going to be in stable in few weeks if not sooner, and it's very likely to be a security update. That might incur stabilization of some media-video packages sooner than they are ready.
Because of bug #371931 www-client/chromium doesn't depend on system ffmpeg anymore (this is temporary, until we fix that bug). As a result, this is no longer blocking libav.