Reducing the file size of a video (compress) has several advantages. Obviously it reduces the amount of storage needed and although storage seems limitless nowadays a lot of services only allow a limited amount of storage per file or in total. Furthermore for streaming certainly with limited bandwidth a compressed video provides a better experience for the user.
My go to tool for compressing a video is FFmpeg. FFmpeg is the Swiss army knife for video and audio conversion (and much more). I won’t even attempt to describe the possibilities but just take a look at the FFmpeg wiki page to appreciate the possibilities. It’s also worth noting that FFmpeg is free and open source software and that it is available for Linux, OSX and Windows and can be downloaded here. Before I forget, FFmpeg is a command line tool so perhaps it’s not for everyone.
How to use FFmpeg for compression
Getting back to the task of compressing a video. This can be achieved in several ways in FFmpeg. The way that works best for my videos is to use the CRF option. CRF stands for constant rate factor and can be used to compress a video while maintaining a good quality. It is used in combination with the x264 or x265 encoder. A typical command to compress a video looks like this:
This command takes the file input.mp4, uses the x264 codec to produce a file output.mp4. The -crf 24 determines the amount of compression where the number 24 can vary from 0-51 where 0 is lossless and 51 is the worst quality possible. I used numbers between 18 and 28 to achieve good quality videos at strongly reduced file size.
To reduce the file size even further we can use the -preset option. A slower preset provides an even better compression. The default value is medium, I also tried slow and veryslow. For the latter the command looks like this:
To conclude this blog post I’ve inserted a table below where I compare the file size of a sample file that I compressed with the methods described above.
crf 24, slow
crf 24, very slow
Now remember this is just one video and one may get very different results with a different video (for this also read the link to the CRF guide below) but the trend is clear. To demonstrate the quality of the resulting videos I’ll provide here the original and the most compressed one so that you can compare the difference.
Making a clip can save time
Now someone on Mastodon tipped me that instead of compressing the full video one can create a small clip first. This can safe valuable time assessing whether the chosen compression options do achieve the desired result. To do this the options -ss and -t should be used where -ss is the starting time (hh:mm:ss) of the clip and -t the duration of the clip in seconds. Here are two example.
About five years ago I got interested in free and open source software (FLOSS) and online privacy in general. The problem was that almost all software that I used at that time was proprietary. I had an iMac with OSX and besides that I worked a lot with Google apps (Gmail, Blogger and Google Docs most notably). From that point it felt as pretty daunting task to switch completely to FLOSS. Where to start? Just installing Linux on my iMac seemed far to large a step. How to migrate all my documents and learn to work with a OS and all these apps that were new to me. Instead I decided a to gradually replace my apps with FLOSS alternatives until I finally reached a point where I could easily replace the OSX operating system with Linux.
I started with the low hanging fruit and the lowest hanging of them all is the web browser. So Chrome was replaced by Firefox. Next was the mail client so I replaced Mail with Thunderbird. At that time I started to work with graphical applications so I chose Inkscape, GIMP and for my 3D CAD work Solvespace, FreeCAD and OpenSCAD. I installed these apps on my iMac still running OSX and took my time to get familiar with them.
For my simple video editing tasks I kept lazily working with iMovie for a long time. I tried OpenShot but it kept crashing but after I while I discovered Shotcut which I found a better replacement. More recently I discovered Avidemux which is simple and works on lightweight systems. Next was Darktable instead of Photos to organize the thousands of photos that I have.
To replace Google proved to be even more difficult. Google is everywhere. The easiest one is Google Search. I first replaced it with DuckDuckGo. DDG is not FLOSS but at least it’s not Google. Currently I’m experimenting with MetaGer which is free and open source software. Google Maps was replaced by Openstreetmap and to upload my content I exchanged YouTube for PeerTube. This was all pretty simple. Next was Google Drive and this proved to be more difficult. I figured the best was to replace Google Drive with NextCloud. But instead of having someone else running NextCloud for me I found it appealing to have my own server. But I don’t know anything about installing and maintaining a server. Then someone mentioned Yunohost to me. Yunohost is an operating system that allows an idiot like me to setup and manage a server in a very simple way. Installing it went flawless and installing NextCloud on top of Yunohost encompassed little more than a few mouse clicks. After this I could say bye bye to Google Docs.
In the mean time I felt confident enough to replace OSX with Linux. With all the preparation that I had done it was an almost painless transition. I downloaded a Linux distro, put on a USB drive and installed it on a PC (not the iMac). Next I could install all the FLOSS apps that I was already familiar with and I was up and running in no time.
I’d like to call this method Peeling the Onion. Where the onion is the problem. Remove the outer most peel first and working my way to the inside. I work pretty much exclusively with FLOSS now and I couldn’t be happier with the result. I feel more in control of the software and and my data which is a very satisfying experience. Yes, some of the software is little bit rough around the edges and not as smooth as some of the proprietary software I was used to but I feel that I’m at the helm of my PC without a giant cooperation driving me into a direction that I don’t want.
My laptop is a Thinkpad T40 from 2003 with 1GB of RAM and a 30GB HDD (Yes, you can laugh now). I bought it second hand many years ago, it had Windows installed and it was slow as molasses. It was also a time that I got interested in FLOSS. So I looked for a suitable Linux distro and I found Puppy Linux (Slacko and later the TahrPup release). It turned my unusable laptop into a fast and very capable computer. I’ll never forget the amazement when I booted Puppy for the first time and saw how fast it was.
I’m not much of a distro hopper but last year I switched to AntiX because I felt that development of Puppy had slowed down. AntiX does more or less the same as Puppy in that it brings life to an old computer. Both are very lightweight but at this moment I find AntiX definitely more polished with JWM, FluxBox and IceWM as window managers to choose from.
Both Puppy and AntiX contain, as do most of the other Linux Distros, proprietary bits and pieces (e.g drivers and it’s possible to install proprietary programs from the Snap store or PPM) but are mostly FLOSS and are available thanks to many volunteers that dedicate so much of their time to these operating systems. So I think it’s fair to contribute back e.g by donating to the developers that make this possible.
It’s been 1.5 years since Google+ closed and I started dipping my toes into the Fediverse and other distributed social networks. It also kicked off my search to get rid of everything Google. To DeGoogle is easier said than done because Google is everywhere from search to fonts, from the video platform YouTube to the file storage and synchronisation service Google Drive, and from blog publishing service Blogger to the Google mobile operating system Android. And the list goes on. So chances are you’re using a lot of these services and most of them require a Google account, a devious move from Google. It’s for this reason that it’s very hard to get rid of this o so convenient account.
To get a more comprehensive view take a look at this article. Below I’ve compiled a list of the most important Google services and products that I replaced with something else.
Search was perhaps the easiest to replace (or is it). While Google search is by far the largest search engine in the world DuckDuckGo (DDG) is becoming increasingly popular. I’ve used DDG to great satisfaction and only had to use Google search a couple of times. The only gripe that I have is that DDG isn’t free and open source software (FLOSS) let alone distributed. In that respect I’ve read some good things about Searx and I may give that a try in the future.
The Chrome browser of Google has become very popular with an estimated market share of approximately 70%. A large portion of the Chrome’s source code is based on Chromium, the open source browser project from Google, however Chrome is proprietary freeware because it contains large blobs of proprietary code. The Spyware Watchdog considers Chrome’s Spyware level extremely high this due to multiple spyware features that are built-in such as Google Account and Navigation Assistance. Another threat comes from the earlier mentioned market share. This gets even worse when we include the other browsers that are based on Chromium such as Microsoft Edge, Opera and Vivaldi. I currently use Firefox. It’s perhaps not the most privacy minded browser around but it’s FLOSS, it has a reasonable market share which is important for support of web developers and development of Firefox is very active.
Next is YouTube which BTW is becoming more and more annoying with all these ads and the recommendations with the sole purpose to keep the user as long as possible on YouTube (and serve even more ads). I invested a lot in YouTube in the past with over 70 video made about 3D CAD, 3D printing and electronics so replacing it is not easy. The solution that I found is two-fold. I remastered (part) of my existing videos and uploaded them to both PeerTube. If I want to watch YouTube videos I use Invidious in the browser of NewPipe on my Smartphone (still Android sadly).
Over the years I got dependant on Google Drive e.g to store the CAD files that I wanted to share after I published a project either in blog or a video. I want readers and viewers to be able to reproduce the project. Since I didn’t want to self-host a solution such as Nextcloud(see edit below), I started looking for a paid service. I currently have a contract with Strato, a German hosting company that also hosts my websites. Strato offers HiDrive, it’s not FLOSS unfortunately but it offers 100% storage in the EU and (paid) end-to-end encryption is possible although only in the HiDrive desktop program for Windows (which is a bummer but I don’t need encryption for this purpose anyway).
Instead of Google maps I started using OpenStreetMap and products based on OpenStreetMap such as OsmAnd (on Android) and Komoot both on Android and the web browser. Komoot is excellent for hiking and cycling but unfortunately it isn’t FLOSS. These alternatives have proven to be good enough for me since I haven’t used Google Maps any more.
I somehow started using Gmail. I don’t know exactly why because I already had very good email services. I also fail to understand why it’s so popular because every other email service does about the same. My own ISP comes with a very good email service and so is the web hosting company that I’m using. To stop using Gmail takes some preparation most importantly to list and notify all the people and organisations that send you email to your Gmail address. Also list all online services that use your Gmail address. Now replace this Gmail address with another email address.
You may want to delete your Gmail completely but it’s possible that it’s linked to your Google account. If this is the case you can either use a different email address for this account or more radical delete your Google account completely. In case you choose the latter remember that lots of Google services are couples to your Google account and can’t be accessed any more. Having said that if you start to purge Google from your life the Google account becomes less and less important with every Google service that you delete. So at a certain point deleting the Google account will be painless.
Although Android is Free and Open Source software most Android phones come with proprietary software and services that prevent users from using the phone the way they seem fit. The easy way to free the software on your phone is to install FDroid. For most users the Google Play Store is the only way to install software on their phone. FDroid is an alternative software store that enables the user to easily install and maintain Free and Open Source software on their Android device. BTW installing FDroid and replacing proprietary apps is what I have done thus far and it’s a good start.
Even better is to replace the Google infested Android with a free version of Android like LineageOS. LineageOS is a FLOSS version of Android that can be used without a Google account and that comes without the proprietary Google apps (and perhaps other junk from the phone manufacturer). Make sure to check if your phone is supported before trying to install in on your phone.
Yes I know, I have Google fonts in my blog. That came with the choice of the WordPress theme and I didn’t realize that at the time. That’s just another example how Google infested the web and how difficult it is to DeGoogle my life but rest assured fonts will be next.
To get Google out of your digital life is hard, very hard. This tells us how much Google is integrated into our lives and probably for the most part without being aware of it. Luckily we still have choice (other than just say goodbye to the web), choice that gives us freedom to use the web without being used. The freedom to control our data and not being exploited.
Edit: As someone on Mastodon pointed out it’s not necessary to self-host NextCloud. Examples of cloud service providers running Nextcloud are Disroot, OwnCube and Operationtulip.com (currently in beta).
I’ve been using iMovie for ages to create videos, both to document my family life and for my YouTube channel. Over the years I’ve create dozens of movies with iMovie and I kind of liked the simplicity of the program. I only wished it was free and open source software instead of proprietary.
The last couple of years I tried several free and open source alternatives notably OpenShot and Shotcut (both GPL v3 license). I was willing to jump to one of them but they were both rather unstable on my OSX system. OpenShot was the worst and crashed every few minutes making it impossible to work with. So in the end I kept using iMovie.
Recently I updated OSX to Sierra (10.12) and when I opened iMovie I noticed that everything worked except that I couldn’t render anymore. This is a disaster. All my carefully crafted movies are locked in iMovie and I’m unable to get them out of it. I really wanted to kick someone at Apple for this.
Since I couldn’t find a solution (apparently a widespread problem as I read on the web) I had no other alternative than to install OpenShot again (version 2.4.4). I didn’t have high hopes but to my surprise it was stable. I worked several days with it and it didn’t crashed once.
What I like about OpenShot is that it’s, like iMovie, very easy to use. The interface looks modern and unlike some other video-editing programs I could easily find my way around. The word intuitive springs to mind. This may give the impression that OpenShot is a very basic video-editor. OpenShot certainly can’t compete with the feature-rich major video-editors in the market but I was surprised that all basic features are included and there is more under the hood. To name just a few, the interface can easily be changed to my liking, the handling of titles is great and OpenShot enables the user to create animation which is handy.
It also offers a lot of control over the export of a video with every format, codec and quality setting available. This is probably because the video backend of OpenShot is linked to FFmpeg, IMHO the best video-converter around. (I wrote about FFmpeg earlier)
The coming weeks I will do further tests and will decide if this is my new go to video-editor. A bonus is that OpenShot is available for Linux, Windows and OSX so I can also use it on my Linux desktop.
UPDATE : 12 December 2019. After having done some projects I’ve noticed an issue with OpenShot. OpenShot tends to be very resource hungry in both memory and cpu load. This creates problems in more complex projects where the program becomes very slow. This forces me to restart OpenShot and continue. Also on my humble 2011 iMac it’s impossible to get smooth video and sound in the preview window.
UPDATE: 26 Februari 2020. I updated to version 2.5.0 (from 2.4) and it appears that this latest version is a little less resource hungry. With more complex projects with multiple sound tracks mixed I still experience stuttering in sound which is annoying when trying to edit the video. This could however be due to the 2011 iMac that I’m currently working on.
Why in this day and age of Netflix one would be interested in how to rip a DVD? More and more people are using Netflix or an other video streaming service to watch movies and TV series. What most people don’t know is that Netflix is trampling user rights. Not only does Netflix use digital rights management (DRM) they also mine huge amounts of data from the users. This data is not only used to improve the service it can also be provided to third parties like law enforcement and other businesses for promotional ‘services’ . If you don’t believe me you can read it in the privacy statement of Netflix.
Unfortunately the’re very little legal alternatives that respect the user rights. DVD’s are an option but most of current DVD’s have strong DRM in place. Luckily this DRM can be removed with relatively simple means. Without the DRM the user can watch the content the way he/she prefers.
In this post I’ll explain what you need to remove the DRM from DVD’s and copy the movie or TV series to OpenELEC or LibreELEC or any other system with Kodi e.g in your living room.
I was struggling to burn the subtitles into the media file that I created from a DVD. This is what eventually worked for me. When a DVD is opened and scanned, go to the subtitles tab, choose the preferred language and uncheck the Forced Only box while leaving the burned in box checked. That’s it. Now press the Start button to start encoding and your file should contain the burned-in subtitles with the language that you choose.
MetaZ or MetaX
MetaZ is a metadata editor but the beauty is that it uses the title of the movie or the TV series to retrieve metadata from The Movie Database (TMDb) and adds this metadata to the rip file we just made with HandBrake. Unfortunately MetaZ only runs on OSX while MetaX only runs on Windows. Of course we can use VLC for GNU/Linux but the user has to add the metadata manually which is a pain in the butt.
Kodi, OpenELEC, LibreELEC
Eventually you want to be able to play the video files that you ripped from the DVD’s. There are many free/libre software choices but perhaps the most popular is Kodi. Kodi is mediaplayer software that runs on about every media file you’ll throw at it. It is available for GNU/Linux, Windows and OSX. OpenELEC and LibreELEC take this a step further because they’re Linux based operating systems with the sole purpose to run Kodi.
I hope this information has helped you to rip your DVD’s and start watching them on the device of your own liking. If you have any questions about this topic feel free to send me an email. Now if you excuse me I have a nice classic movie to watch.
When I came home the other day my neighbours were loading electronics on their bicycles (I live in the Netherlands you know) to dispose of them. Among all the stuff was a desktop computer that looked in pretty good shape. It was a Packard Bell iMedia S1800. I informed why they would dispose of the PC and they told me that according to their daughter it had become unusable. They are very nice people so I asked them if I could have the PC. They agreed to it and I took the desktop with me.
Back home I took another look at the computer and it was even nicer than I expected. It didn’t have a scratch and when I opened it it looked clean. That night I booted the PC and quickly found out it had Windows 10 running. The PC was slow as molasses and it was very noisy. I felt I had already found the cause of the daughter complaining, Windows 10. I had no intention to run Windows so I took out my Puppy Linux disk (Xenial Pup 7.5) and rebooted the PC.
The difference couldn’t have been greater. Puppy Linux booted fast and ran even faster. I got the idea to make this a general purpose workstation that, if goes well, can replace my iMac. How much I love Puppy Linux I don’t think it’s suitable for my purpose. Besides all the usual tasks I use my iMac for light 3D CAD work (for 3D printing), web design and video editing. I also like to have access to a broad software repository because I like to test new software and to replace the workflow I have on the Mac. In this department Puppy Linux can be lacking due to the Puppy Package Manager which differs from the mainstream package managers.
I therefore decided to give Ubuntu MATE 18.04 LTS (Bionic Beaver) a spin. My son already runs Ubuntu so I’m familiar with it and the MATE desktop is relatively lightweight (Gnome 2). Installation from a USB drive went flawless (overwriting W10 in the process). The desktop looks very clean and the software suite is great. I can add software through the new Software Boutique and if it isn’t there I have access to the Ubuntu repository (through apt). For a full review of MATE 18.04, read this.
So here I am. A nice Packard Bell is sitting on my desk instead of having become e-waste. If you read this don’t throw away your old PC because Windows 10 made the experience a nightmare. Install Ubuntu MATE or any other Linux distro you like and enjoy. In the mean time you’ll be doing the environment a favour. Cheers.
In November last year I decided to revive my very old (2003) Thinkpad T40 with Puppy Linux. Back then I was thrilled by the ease of installation and the speed of this Linux distro on this ancient laptop. Now eight months later I’ll give an update on Puppy Linux on my PC. Am I still happy with Puppy Linux?
Both Puppy Linux Slacko 5.7, which I had installed initially, and Puppy Linux Slacko 6.3 have been very stable on my T40 and I loved Puppy Linux because of it’s speed. However both of these Slacko distributions are based on Slackware. The one problem with this distributions is the lack of software. Some programs that I needed are just not available in the repositories. I could install software myself but only if I was able to find the right pet or sfs file (I cowardly didn’t try to compile the source files).
To solve the problem with the software I decided to install Puppy Linux Tahrpup 6.0. This operating system is based on Ubuntu 14.04 Trusty Tahr. I liked it the minute I installed it. The look and feel are the same as with Slacko with the JWM as window manager and ROX-Filer file manager and all the helpful shell scripts (a lot of them written by Barry Kauler, the original creator of Puppy Linux). Also a lot of the pre-installed programs are the same such as Abiword, Geany and pfind, a file finding program MtPaint and Sylpheed, a mail client. They’re also notable differences. The default browser for Tahrpup is Palemoon instead of Firefox and the Simple Screen Recorder (I forgot the name of the default Slacko screen recorder but I never got it to work). The system is still very fast, exactly the reason why I chose for Puppy Linux in the first place.
Easily create your own operating system
Puppy Linux (and Linux in general) not only let’s you create your own desktop environment, where just about everything is customizable, it even lets you customize the whole operating system. If you, for instance, don’t like the window manager or the file manager, you can change it. Try doing that on Windows or OSX. This way you can create your very own system doing honor to the acronym PC. TahrPup even has an option to easily change the Linux kernel, something that I couldn’t do with Slacko. With Remaster Puppy live-CD a copy of the personalized operating system can be written to either a USB drive or CD. For the latter a CD burner is needed of course. This copy of the personal operating system with all the favourite programs can be used to boot on any PC elsewhere e.g. on holiday or in school. On the Puppy Linux discussion forum many examples can be found of unofficial Puppy Linux distros such as Tahr NOP (Xfce desktop environment), Ami-Pup (an Amiga like interface) or Fatdog64 (a not so slim 64bit version).
Even with little experience in programming, additions can be made to the operating system using shell scripts. In fact plenty of programs that come with Puppy Linux are shell scripts. Pfind and pmount are good examples of this. Although this is not for beginners, shell scripts are relatively easy to write. An intermediate user should be able to improve existing scripts or write new ones. A script can be shared on the Puppy Linux forum as a contribution to the operating system and the community. This is a good start for programming for Puppy Linux. It’s also possible to use C or C++ as programming language for Puppy Linux but this is more complex and outside the scope of this blog entry. A good starting point for programming for Puppy Linux is this link.
The only drawback so far is that the new Puppy Package Manager v2 (PPM) seems a bit slower on my old laptop than with Slacko. PPM is the equivalent of the Ubuntu Software Center or Pacman for Arch Linux and provides access to the repository with all the available packages for Puppy Linux. The numerous packages in Tahrpup are possibly the reason for this slower behaviour.
Eight months later my Thinkpad T40 is still very much alive thanks to Puppy Linux. With Tahrpup I gained easy access to a huge amount of programs satisfying my increasing PC needs. The best feature about Puppy Linux (and Linux in general) is that it feels like my very own operating system. It’s easy to get involved into Puppy Linux thanks to it’s open nature and the vivid community. A feeling that I’m severely missing in the proprietary OSX on my iMac, my primary computer. In fact, if not for my wife who is still attached to the iMac and OSX, I would exchange my iMac for a (Puppy) Linux PC without hesitation.
IMPORTANT: OpenELEC has been discontinued since 2017. Instead of OpenELEC I can recommend LibreELEC.
last year I built a PC especially for OpenELEC. For those of you who don’t know, OpenELEC is a Linux based system with the sole purpose to run Kodi, the all-in-one solution to play all media you throw at it. Because of this sole purpose OpenELEC is very fast, especially on the Intel based system that I built, and very reliable. Over time however some maintenance of the system is necessary to keep the system up-to-date and fully functional.
The burglar that “visited” our house a couple of weeks ago took our laptops and tablets. Luckily our desktops were left alone (probably to heavy). Also a very old IBM Thinkpad T40 was left behind. The burglar probably thought it didn’t have any value. That was a bit of luck for me because with a little effort this 12 year old laptop is still very usable. After all these years the only thing that failed in this laptop was the battery. Everything else is still in excellent condition. These Thinkpads were (are?) very sturdy. On top of that they are very modular. Almost every component is easy accessible with just a screw driver. Very different from modern laptops that are almost impossible to open without special equipment.
The twelve years old IBM Thinkpad T40. Is it worth reviving it?
With a 1.4GHz Pentium M inside the T40 is, I suspect, hardly faster than the Raspberry Pi 2. I therefore needed an Operating System that isn’t a burden for this hardware. Since Windows XP isn’t an option any more I looked at Linux and decided to give Puppy Linux 5.7 Slacko a spin.
Puppy Linux is very small and it loads into the ramdisk and is therefore very zippy , even on old machines. Installing it on the Thinkpad T40 was easy. It recognized all hardware even the Wi-Fi (which can be a problem with other distro’s). Unfortunately I can’t use the Wi-Fi chip inside the T40 because the WPA2 security protocol that I use in my network is unknown to this chip. This was easily solved with a Wi-Fi USB-stick.
Now I’m typing this blog from the T40. Firefox (version 17 ESR) works fine. I can access Google+, YouTube and other sites without problems although the rendering of some sites isn’t perfect. With Geany I can create html/css pages and code Python. Wordprocessing is done with Abiword and spreadsheets with Gnumeric.
Do I want my laptops and tablets back? Of course but in the mean time I thank Barry Kauler and Co for this wonderful distro.
Puppy Linux Slacko 5.7 runs fine on this very old laptop.