Audio and Video Quality

The audio and video quality of recordings made through our Mobile Native Recording Client depends a lot on the mobile OS:

  • iOS will compress the recording, leading to a smaller file and fast upload times, but less quality.
  • Android will leave the recording unchanged, resulting in high-quality videos that take longer to upload and process.

iOS

On iOS, a user can upload videos in 2 resolutions depending on how that video is recorded:

  1. If, when prompted, the user records a new video, that video will be recorded at 360x480 (portrait) and 480x360 (landscape) at 30 FPS.
  2. If, when prompted, the user chooses an existing video, that video will be compressed by iOS in terms of bitrate (the resolution and FPS will remain the same). iOS videos will have AAC audio at 48kHz and H.264 video. The data is in a .mov container.

You can read more about the audio and video quality of recordings made with iOS from this article we’ve written on the topic.

Android

Android devices, on the other hand, will record video at whatever resolution is set on the device and will not compress the video before uploading. This can result in long upload times but high-quality videos.

The audio codec and sample rate will depend on the device itself. We’ve mostly seen AAC audio at 48kHz, but occasionally, we do get AMR audio in 3GP containers and other exotic audio codecs and containers.

Non-AAC audio will be converted by Pipe to AAC for the final .mp4 file.

Supported containers and codecs

We’re seeing recordings in various formats through the Mobile Native Recording Client: mp4, mov, 3gp, webm, etc. .

All these recordings are converted by the Pipe Platform to a universally working .mp4 file. For audio, the original sampling frequency is kept.

We’re currently allowing users to upload recordings with the following extensions:

VideoAudio
mp4aac
movm4a
webmmp3
3gpwav
3gppogg
3g2wma
flvamr
aviflac
m4v
ogv
mod
qt
wmv
mpg
mpeg
3gpp2
mkv

Other notes

High-framerate videos (60 FPS) from mobile devices will keep their FPS value after being processed by Pipe.

When uploading slow-motion videos (120 FPS videos played back at 30 FPS), in some cases (iOS, Lenovo Vibe P2 with Android 7.0), the OS compresses the video down to 30 FPS while keeping the slow motion effect. In others (Huawei P20 Lite with Android 8.0), the original FPS value (120) is untouched.