smartfilming

Exploring the possibilities of video production with smartphones

#19 Stabilizing shaky video footage on your smartphone (incl. Update 2020!) — 5. October 2019

#19 Stabilizing shaky video footage on your smartphone (incl. Update 2020!)

The fact that nowadays pretty much everyone owns a smartphone and shoots video with it has brought a gigantic wave of shaky handheld footage along. While some folks are actually allergic to any kind of shakiness in video, I personally think that depending on the amount and context it can work just fine – but definitely not all the time and under any circumstances. So there is a need to stabilize shaky handheld footage. Now the best thing to get smooth n’ stable footage is to avoid shakiness in the first place while shooting. While there are techniques for shooting (more) stable video handheld, the most common thing would be putting the phone on a tripod (using any kind of rig or clamp for mounting it). But maybe you want to move around a bit? More and more smartphones do have internal stabilization, be it on the hardware side with OIS (optical image stabilization) or on the software side with EIS (electronic image stabilzation). Over the last years there has also been a considerable and increasingly affordable influx of (motorized) gimbals that allow smooth camera movements. But let’s be honest: Unless you’re going to a planned shoot, you probably won’t carry around a tripod or gimbal (if you have one) – as compact as they have become over time, they are still too big and clunky to just put in your pocket. So it’s likely that you will find yourself in situations where you shoot video handheld and want to smooth out some distracting jitter afterwards. While most desktop video editing software has a built-in stabilizer function these days, things don’t look quite as bright on mobile but there are still a few (good) options.

Android

Google Photos
The easiest way to stabilize a pre-recorded video clip on your mobile phone is probably to use a little known feature of an immensely popular (and completely free!) app: Google Photos. Select any video clip and open the edit panel (sliders icon in the middle), then tap on the rectangle with the tilted image inside (to the right of the “Export frame” button). When I first used it I was really surprised how well it worked! The stabilization process doesn’t alter the resolution and frame rate but you will have to live with a lower video bitrate (sample clip: 17 to 11 Mbit/s) while the audio bitrate remains the same. Google Photos is basically available for all Android devices which is great. I have however found that very ancient pre-Android 5 devices (I tested it with two devices running Android 4.4) do not have the stabilization feature baked into the app. “What about iOS?” you may ask as Google Photos is also available on the Apple Appstore. Unfortunately, just like with the ancient Androids, the stabilization feature is not available in the iOS version of the app. Maybe at some point in the future.

PowerDirector
If you are looking for a stabilization feature already built into an advanced mobile video editing app with which you can produce your final edit, then Cyberlink’s PowerDirector is currently your only choice across platforms. Select the clip in your timeline, open the editing panel by tapping the pen icon on the left side bar and choose „Stabilizer“. Unlike with Google Photos where the stabilization is basically a one-button operation, PD does give you a 0-100 slider to increase or decrease the level of correction (default value is 50). The higher the level of correction, the more the image will be cropped. PD can keep the footage’s fps as long as it is a frame rate that is supported for export within the app. That means 24, 30 and 60fps – no PAL frame rates unfortunately. Resolution on the other hand shouldn’t be a problem at all, PD supports export up to UHD/4K resolution. You also get to choose between three bitrate options (Smaller Size/Standard/Better Quality), the actual bitrate will be depending on your export resolution. In the case of the sample clip used here the bitrate of 17Mbit/s remained unaltered when using „Better Quality“ but that seems to be the maximum for projects with FHD resolution. If you use a clip recorded in a higher bitrate it will be compressed upon export. The audio bitrate is reduced (sample clip 320 to128 Kbit/s). PD is free to download with watermark and some restrictions regarding certain features – watermark-free export and the complete feature set are only available with a paid subscription.

Microsoft Hyperlapse Mobile
There’s a third option on Android. Microsoft Hyperlapse Mobile shouldn’t be confused with Instagram’s „Hyperlapse“ app (which is only available on iOS so far). They are actually somewhat similar in that their main purpose is to speed up and stabilize video but while Instagram’s app can only do this for footage shot „live“ within the app, Microsoft’s version allows importing pre-recorded clips. By default, the result you get will be a 4x sped up clip but if you want the original speed, you can move the speed slider to „1x“ instead. As for the resolution, Microsoft Hyperlapse only supports import of clips with up to FHD resolution and you have to activate FHD export in the settings as the default setting is HD (720p). The frame rate remains the same, the video bitrate is seriously crunched (sample clip: 17 to 8 Mbit/s), the audio bitrate is kept intact. The stabilization result isn’t as good as Google’s Photos and while the app is free, you do get a Microsoft Hyperlapse branded bumper screen. There are no in-app purchases to get rid of this so you will probably have to trim it off using another app.

VideoStabilizer for KineMaster
If you were asking me which app I consider to be the best video editing app for Android, I would probably choose KineMaster. It lacked a video stabilization feature though and many people have been asking about it for quite some time. Just recently, KineMaster did something rather unexpected: They released a separate app called “VideoStabilizer for KineMaster” as an early beta (alongside another separate app for speed ramping). The official take on this is that they don’t want the main app to become too big size-wise and also want to keep it available for as many devices as possible. If you ask me, I would definitely prefer to have it as part of KineMaster and not a separate app. As mentioned, the app was released as an early beta and you can definitely tell, the result isn’t particularly impressive at this time and there are some glitches like the fact that it seems to slightly change the color of the original clip. The app is free to download but if you export the video directly to the Gallery, the video will have a watermark in the bottom right corner. You can only avoid the watermark by sharing the stabilized clip directly to KineMaster and you also need to have an active KineMaster subscription (because otherwise you will get a watermark when exporting from KineMaster). If you want to give it a go despite its current beta status, you can download VideoStabilizer for KineMaster on the Google Play Store. There’s currently no beta version on iOS but I think chances are good that there will be one later on or alternatively a version of the final production release.

iOS (iPhone/iPad)

Emulsio
As mentioned above, while Google Photos is available for iOS, the stabilization feature from the Android version is not. And neither is PowerDirector or Microsoft Hyperlapse Mobile. Also, none of iOS’s best video editing apps including the likes of Luma Fusion, KineMaster, Adobe Rush, Videoleap or Splice feature a stabilization tool at this point. The only (fairly good) option to stabilize pre-recorded video that I was able to find was an app called Emulsio. The interesting thing about Emulsio is that unlike all other apps for stabilizing mentioned here, there’s a whole bunch of controls over the stabilization process at your fingertips. Just like PD it gives you a 0-100% scale for the strength of the correction, cropping more of the frame the higher the % is. But on top of that, you get control over which axes (X,Y,XY) are corrected, you can switch rotation compensation and wobble removal on or off and even reduce rolling shutter. Emulsio does keep resolution and frame rate intact but reduces both video bitrate (sample clip 17 to 15Mbit/s) and audio bitrate (320 to 256Kbit/s). It’s free with watermark, you can get rid of the watermark by purchasing a 8.99€ pro upgrade.

Windows Mobile

Microsoft Hyperlapse Mobile
Before I wrap this up let me tell you that while Microsoft Hyperlapse Mobile isn’t available for iOS, it (still) is for their own (now quasi-dead) mobile platform Windows Mobile. So just for the highly unlikely case that you are a die-hard Windows Phone enthusiast still holding on to your Lumia: You can join the stabilization fun! It basically works like the Android version described above but only supports import/export of HD (720p) clips, higher resolution clips will be transcoded to 720p. So when the resolution is reduced it shouldn’t come as a surprise that video bitrate (17 to 7 Mbit/s) and audio bitrate (320 to 192 Kbit/s) are as well. The frame rate remains the same as the original source clip.

And here’s a video presenting the deliberately shaky sample clip (shot on a Motorola Moto Z in 1080p 30fps handheld) in stabilized versions by each mentioned app (in the case of Power Director and Emulsio the default settings were used):

Have I missed something important? Did a new app or new feature for an established app just come out? Let me know in the comments or hit me up on the Twitter (@smartfilming).

#13 The Xiaomi Mi A1 – A good budget option for mobile videography? — 9. May 2018

#13 The Xiaomi Mi A1 – A good budget option for mobile videography?

The Xiaomi Mi A1 is Xiaomi’s first “officially” internationally available phone.

Xiaomi has been a really big name in China’s smartphone market for years, promising high-end specs and good build quality for a budget price tag – but only at the end of last year did they officially enter the global scene with the Mi A1. The Mi A1 is basically a revamped Mi 5X running stock Android software instead of Xiaomi’s custom Mi UI. It’s also part of Google’s Android One program which means it runs a ‚clean‘ Google version of Android that gets quicker and more frequent updates directly from Google. For a very budget-friendly 180€ (current online price in Europe) you get a slick looking phone with dual rear cameras, featuring a 2x optical zoom telephoto lens alongside the primary camera. Sounds like an incredible deal? Here are some thoughts about the Mi A1 regarding its use as a tool for media production, specifically video.

After spending a couple of days with the Mi A1, I would say that this phone is definitely a very interesting budget-choice for mobile photographers. The fact that you get dual rear cameras (the second one is a 2x optical zoom as mentioned before) at this price point is pretty amazing. The photo quality is quite good in decent lighting conditions (low light is problematic but that can be said of most smartphone cameras), you get a manual mode with advanced controls in the native camera app and the portrait mode feature does a surprisingly good job at creating that fancy Bokeh effect blurring the background to single out your on-screen talent. A lot of bang for the buck. Video – which I’m personally more interested in – is a slightly different story though.

Let’s start with a positive aspect: The Xiaomi Mi A1 lets you record in UHD/4K quality which is still a rarity for a budget phone in this price range. And hey, the footage looks quite good in my opinion, especially considering the fact that it’s coming from a (budget) smartphone. I have uploaded some sample footage on YouTube so see for yourself.

The video bitrate for UHD/4K hovers around 40 Mbps in the native app which is ok for a phone but the audio bitrate is a meager 96 Kbps (same in FHD) – so don’t expect full, rich sound. But this is only the beginning of a couple of disappointments when it comes to video: One of the Mi A1’s promising camera features, the 2x optical zoom lens, CANNOT be used in the video mode, only in the photo mode! What a bummer! This goes for both the native camera app and 3rd party apps.

Despite running a stock version of Android and being part of Google’s Android One program, the Camera2 API support level is very disappointing.

Talking about 3rd party camera apps, it’s also a huge let-down that the Camera2 API support (what is Camera2 API?) is only „Legacy“ out of the box, even though the Mi A1 is part of Google’s Android One program. „Legacy“ means that third party camera apps can’t really tap into the new, more advanced camera controls that Google introduced with Android 5 in 2014, like precise exposure control over ISO and shutter speed. Due to this, you can’t install an app like Filmic Pro in the first place and other advanced camera apps like Cinema FV-5, ProShot, Lumio Cam, Cinema 4K, Footej Camera or Open Camera can’t really unleash their full potential. Interestingly, there seems to be a way to „unlock“ full Camera2 support via a special procedure without permanently rooting your device (look here) but even after doing so, Filmic Pro can’t be installed, probably because the PlayStore keeps the device’s original Camera2 support information in its database to check if the app is compatible without actually probing the current state of the phone. This is just an educated guess however. Still, many of us might not feel comfortable messing around with their phone in that way and it’s a pity Xiaomi doesn’t provide this out-of-the-box on the Mi A1.

UI of the video mode in Xiaomi’s native camera app on the Mi A1. You can tap to focus and adjust the exposure (+/- 2 EV), but not lock it.

Lackluster Camera2 API support can be remedied by a good native camera app but unlike with photos, there is no pro or manual mode for videos on the Mi A1, it’s actually extremely limited. While you can lock the focus by tapping (there are two focus modes, tap-to-focus and continuous auto-focus), you are only able to adjust the auto-exposure within a certain range (EV), not lock it. There’s also no way to influence the white balance. Shooting in a higher frame rate (60fps)? Not possible, not even in 720p (there’s a not-too-bad 720p slow-motion feature though). Apropos frame rates: I noticed that while the regular frame rate is the usual 30fps, the native camera app reduces the fps to 24 (actually 23.98 to be precise) when shooting under low-light conditions to gain a little bit more light for each frame. That’s also the reason why I made two different YouTube videos with sample footage so I was able to keep the original frame rate of the clips. I have experienced this behaviour of dropping the frame rate in low-light in quite a few (native) camera apps on other phones as well and from the standpoint of a run-of-the-mill smartphone user taking video this is actually an acceptable compromise in my opinion (as long as you don’t go below 20fps) to help tackle the fact that most smartphone cameras still aren’t naturally nocturnal creatures. It can however be a problem for more dedicated smartphone videographers that want to edit their footage as it’s not really good to have clips in one project that differ so much in terms of fps. 3rd party apps might help keeping the fps more constant.

And there are still two other big reasons to use a 3rd party app on the Mi A1 despite the lack of proper Camera2 API support: locking exposure and using an external microphone via the headphone jack (yes, there is one!). One more important shortcoming to talk about: It’s not too surprising maybe that there is no optical image stabilization (OIS) on a phone in this price range but given the fact that you can shoot 4K, I would have expected electronic image stabilization (EIS) at least when shooting in 1080p resolution. But there’s no EIS in 1080p which means that you should put the phone on a tripod or use a gimbal most of the time to avoid getting shaky footage. With a bit of practice you might pull off a decent handheld pan or tilt however to avoid having only static shots.

So I’ve talked about the video capturing part, what about editing video on the Mi A1? The phone sports a Snapdragon 625 which is a slightly dated but still quite capable mid-ranger chipset from Qualcomm. You can work with up to two layers (total of three video tracks) of FHD video in KineMaster and PowerDirector (the two most advanced Android video editing apps) which will suffice for most users. Important note: DON’T run the hardware analysis test in KineMaster though! It’s a hardware probing procedure meant to better determine the device’s capabilities in terms of editing video in the app. While the device capability information originally says you can have two QHD (1440p) video layers, it will downgrade you to two 720p (!) layers after running the analysis – quite strange. Don’t worry though if your evil twin grabs your phone and runs the test anyway – you just have to uninstall and then reinstall KineMaster to get back to the original setting. I ran some quick tests with FHD 1080p layers and it worked fine so just leave everything as is. Since the phone can shoot in UHD/4K resolution you might ask if you can edit this footage on the device. While you can’t edit 4K in KineMaster on the Mi A1 at all (when trying to import 4K footage the app will offer you to import a transcoded QHD version of the clip to work with) you can import and work with UHD/4K in PowerDirector, but only as a single video track, layers are not possible.

So let’s wrap this up: Xiaomi’s first internationally available phone is a great budget option for mobile photographers but the video recording department is let down by a couple of things which makes other options in this price range more appealing to the smartphone videographer if advanced manual controls and certain pro apps are of importance. As I pointed out though, it’s not all bad: It’s still hard to find a phone for that price that offers UHD/4K video recording – and the footage looks even pretty good in decent lighting conditions. So if you happen to have a Mi A1 – there’s no reason at all to not create cool video content with it – if you achieve a nice video package you can even be more proud than someone with a flagship phone! 😉