ruario / h264-vivaldi-linux.md
in case someone has dir_prefix = ~/download/ in ~/.wgetrc .
I am a little bit uncomfortable with doing that @powerman as they might have other options in their ~/.wgetrc that they would be suprised to have ignored (e.g. logging). The types of people who make these changes are likely to be the ones who could debug such a problem. You are the first person ever to mention such an issue on any one of my scripts and indeed, you have the solution, which kind of proves the point I feel. 😉
I added ARM support to the latest-proprietary-media.sh script
I just runed the sh file.
Works on opensuse Tumbleweed. Thank you.
Any chance you can add a username to the path for STAGINGDIR? With multiple system users I have to manually wipe that directory before I can run the script for another user, something like this,
$ diff -u latest-proprietary-media.sh latest-proprietary-media.new.sh --- latest-proprietary-media.sh 2018-02-12 09:43:17.654358020 -0500 +++ latest-proprietary-media.new.sh 2018-02-12 09:43:12.829289893 -0500 @@ -37,7 +37,7 @@ TMP=$ # Set staging dir -STAGINGDIR=$TMP/$LOGNAME/chromium-codecs-ffmpeg-extra-staging +STAGINGDIR=$TMP/chromium-codecs-ffmpeg-extra-staging # Setup Arch case $(uname -m) in
I should have mentioned this a while back but the Arch method of building your own libffmpeg.so is really slow, overcomplicated, and requires downloading the huge Chromium source tarball. Everything you need is in the FFmpeg sources, you just have to build it in a certain way. I wrote a patch for this, which was rejected by FFmpeg upstream, but we use it in Gentoo. Include the new Makefile in the top-level Makefile and do this:
./configure --disable-shared --enable-static --enable-pic --extra-cflags="-DFF_API_CONVERGENCE_DURATION=0" make libffmpeg sudo make install-libffmpeg
@blackjackshellac why don’t you just define $TMP to be somewhere else locally?
@chewi I will investigate, thanks
@chewi, i am a gentoo user and i tryed to use the generated libffmpeg.so with ffmpeg sources but the current vivaldi-snapshot does not detect the generated lib. And if i force the library, replacing the original in vivaldi-snapshot, it just broke the video reproduction.
@feilee Thanks for confirmation. I was just about to try myself. This makes sense to me as ffmpeg within Chromium is heavily patched, i.e. AFAIK this could not be a true statement
Everything you need is in the FFmpeg sources
So I was suprised anyone claimed it worked
The script works with fedora 28 too. Thanks!
Just a quick thanks for the script. been banging my head on the wall with this one trying everything else I can think of. Works like a charm in bunsenlabs with vivaldi stable.
ATTN: Linux Mint 17 64 (Qiana, based on Ubuntu 14.04) users:
I downloaded chromium-codecs-ffmpeg-extra_69.0.3497.81-0ubuntu0.16.04.1_amd64.deb , clearly this is the chromium-codecs-ffmpeg-extra file for Ubuntu 16.04.
wget http://security.ubuntu.com/ubuntu/pool/universe/c/chromium-browser/chromium-codecs-ffmpeg-extra_69.0.3497.81-0ubuntu0.16.04.1_amd64.deb
I manually extracted the libffmpeg.so file from the .deb file (using Archive Manager ) and placed it in: /home/USER_DIR/.local/lib/vivaldi/libffmpeg.so
After restarting Vivaldi all videos played perfectly.
I wrote a patch for this, which was rejected by FFmpeg upstream, but we use it in Gentoo. Include the new Makefile in the top-level Makefile and do this:
I just installed Vivaldi into my Linux KDE Neon user edition based on Ubuntu 18.04 Bionic. And I really like it, but I had trouble with x264/mp4 videos on the test page? After reading this thread, I checked to see if «chromium-codecs-ffmpeg-extra» was installed in «Synaptic Package Manager (SPM)» and it was installed version 75. I also ran vivaldi from the console terminal prompt which recommended installing an older version.
No suitable library for HTML5 proprietary media (MP4[H.264/AAC]) was found,
therefore only open codecs will play.
To add support for proprietary media, issue the following command and restart
Vivaldi:
curl https://launchpadlibrarian.net/414953672/chromium-codecs-ffmpeg-extra_73.0.3683.75-0ubuntu0.16.04.1_amd64.deb |\ tail -c+1077 | tar JxC ~ --wildcards \*libffmpeg.so --xform 's,.*/,.local/lib/vivaldi/,'
I thought I would just try copying the «libffmpeg.so» from «/usr/lib/chromium-browser/» into the Vivaldi «lib» folder which in my Linux KDE Neon is «/opt/vivaldi/lib/» and restarted Vivaldi and it works great; only vivaldi when run from the console terminal still show I need to install it?
This is the command I used to copy «libffmpeg.so» from the installed «chromium-codecs-ffmpeg-extra» package into Vivaldi’s lib folder.
sudo cp -v /usr/lib/chromium-browser/libffmpeg.so /opt/vivaldi/lib/
For my debian system tracking the testing distribution, the easiest of all to run h264 videos on vivaldi was to add a ubuntu repository and a preferences file to exclude all ubuntu packages other than chrome-ffmpeg-codecs-extra. This will also allow new versions of chromium-ffmpeg-codecs-extra to be found and installed in the normal manner used for all other packages.
/etc/apt/sources.list: added an ubuntu repository:
chrome-ffmpeg-extra-codecs from ubuntu to play H264 videos:
deb http://archive.ubuntu.com/ubuntu devel-proposed universe
/etc/apt/preferences.d: added a preference file to exclude all of ubuntu except for chrome-ffmpeg-codecs-extra:
Explanation: block all ubuntu packages
Package: *
Pin: origin «archive.ubuntu.com»
Pin-Priority: -1
Explanation: do not block ffmpeg-extra but lower priority than debian
Package: chromium-codecs-ffmpeg-extra
Pin: origin «archive.ubuntu.com»
Pin-Priority: 476
After installing chrome-ffmpeg-codecs-extra, videos from the test page http://www.quirksmode.org/html5/tests/video.html as well as videos from movies.yahoo.com, netflix and amazon all run well!
=> apt-cache policy chromium-codecs-ffmpeg-extra
chromium-codecs-ffmpeg-extra:
Installed: 55.0.2883.87-0ubuntu2.1328
Candidate: 55.0.2883.87-0ubuntu2.1328
Version table:
*** 55.0.2883.87-0ubuntu2.1328 476
-1 http://archive.ubuntu.com/ubuntu devel-proposed/universe i386 Packages
100 /var/lib/dpkg/status
55.0.2883.87-0ubuntu1.16.10.1330 400 ## package downloaded by the script and kept in local repository ##
400 copy:/usr3/Installs/DEB ./ Packages
It’s cool but I am not sure it is the easiest. Just start Vivaldi from a terminal and it gives you a one line command to enable H.264 and AAC
Oh and that quirksmode page is not maintained and does not work
Test cases have been removed at the request of my ISP; they were taking up WAY too much bandwidth.
The Vivaldi help page has it’s own test video though
On Fedora 32 you only need to install the GStreamer h.264 package which you can do from Gnome Software. I just did that. Videos work now.
@DanMan No that is incorrect. Vivaldi will not make use of that package. Vivaldi will fetch the files it needs itself and this document and steps are no longer relevant or valid.
Snapshot 1.3.537.5 – Improved proprietary media support on Linux
In Today’s snapshot we address some of the problems you raised in the last snapshot, including fixing the private window crash on Mac, selection of the custom background image and the broken proprietary media on Linux. We also made the Linux proprietary media system more robust on Ubuntu and added additional support for OpenSUSE and Slackware users.
By Ruarí Ødegaard July 14, 2016 1 views
Improved support for HTML5 proprietary media on Linux
We have supported proprietary media (MP4 [H.264/MPEG-4AVC & AAC] Video and MP3 Audio) since our October snapshots from last year. On Ubuntu Linux, you simply needed to install the chromium-codecs-ffmpeg-extra package (which provides a suitable library) and restart Vivaldi. However, we would only accept certain (very recent) versions of this package, meaning that occasionally (in snapshots) proprietary media would stop working. With today’s snapshot we have made the system more flexible on Ubuntu by allowing the version of chromium-codecs-ffmpeg-extra package to vary a little more than before. In addition, we now look for suitable libraries in the chromium-ffmpeg package on OpenSUSE (from the Packman repository) and AlienBob’s Chromium package on Slackware. It is also worth reminding people that on Arch Linux, the vivaldi-snapshot-ffmpeg-codecs (found on the AUR and maintained by one of our Sopranos, Ike Devolder) provides support for these codecs. In summary, proprietary media works more reliably for even more Linux users! Oh and in case anyone thinks that it is odd that we offer a fix for Slackware specifically and yet do not provide Slackware packages, keep in mind something we explained before: “[…] we provide packages and updates in the most two common formats (.rpm and .deb) but are happy to work with any Linux distribution to see if Vivaldi can be included directly. In addition, even where we do not provide a native package format, we will accept bug reports from users of any Linux distribution and attempt to fix the issues they might encounter.” If you want to know more about our Linux packages and what the installation options are, read our previous blog post “Alternative install options for Vivaldi on Linux“.
Known issues
- Moving a tab to a new Window causes focus to be lost: click the tab to restore focus
- We are making some small changes to our Linux repositories, so updates might not be detected for some people for a short while: feel free to use a download link in the mean time
Download (1.3.537.5)
- Windows: 32-bit for Win7+ (Recommended) | 64-bit for Win7+
- Mac: 10.9+
- Linux DEB: 64-bit (Recommended) | 32-bit
- Linux RPM: 64-bit (Recommended) | 32-bit
Changelog
- [Linux] Make H.264, AAC and MP3 work more reliably on Ubuntu and derivatives: accept more versions of chromium-codecs-ffmpeg-extra (VB-19573)
- [Linux] Support H.264, AAC and MP3 on OpenSUSE and Slackware if suitable libraries are available: Use libs from chromium-ffmpeg and AlienBob’s Chromium package (VB-17174)
- [Mac][Regression] Vivaldi crashes when opening private window (VB-19473)
- [Mac][Regression] Window title is not updated when settings page is loaded (VB-19586)
- [Regression] Cannot set Vivaldi as default browser on Windows 10 (VB-19325)
- [Regression] After switching tabs with mouse wheel, address bar field focus lost when typing 1 character (VB-19570)
- [Regression] Custom background image doesn’t work through Settings (VB-19522)
- [Zoom][Touch] The UI scale slider doesn’t react to touch events (VB-8449)
- [Zoom] Settings page is reloaded after changing UI zoom (VB-16306)
- Hibernated tab is still listed as “hibernate-able” (VB-19408)
- Uncontrolled TAB jumping if you close a TAB (VB-19301)