Testing video recording and video playing on iOS Mobile Devices
By: Slav Kurochkin
Testing video recording and video playing on iOS Mobile Devices can be tricky you have to take on consideration different phone states and parameters need to be to measured in order to assure quality of the application.
Here is few parameters I always look at:
To test video recording on mobile device you need to change phone orientation and state:
1. Front and back camera.
2. Landscape left and landscape right, here is where problems starting, you could find different explanations what is landscape left and right, it seems that even
Apple documentation can't tell you where is left and where is right, instead you could use the wording "landscape home button to the left" and "landscape home button to the left"
3. Face up basically put your device on the table and point it to the sky
4. Portrait mode lock, most of the time recording is in landscape mode, so what if your phone is locked in portrait mode will it notify user to unlock his phone?
- Video processing
1. In my practice I have seen that video processing may be an issue, when backend developer have different prospective on how video should be processed and turned compare to frontend developer understanding of it, so you would see that submitted video have been recorded properly and you expecting to get back same video, but instead you can get mirror effect or upside down video.
- Video player compatibility
1. Basically video which is playing fine in native video player might not play in mobile browser.
1. If your application is in the cloud than most like you have different video formats and sizes, good practice would be to lower and increase bandwidth to see if appropriate format been picked up with changes.
2. It is good to know what type of streaming your application is using in case of iOS most likely it is HLS, what you have to know, that video been divided on almost equal peaces and request for video
peaces during video streaming, you would need to measure how fast you can start streaming and how long it would take to change quality from low to high
3. I have seen when applications been trying to download entire video instead of streaming, then good practice would be notify user that you going to use lots of his data on this video download, which is obliviously pushing people away from using application
1. User may get a call or notification during video recording/playing, question is how would application react on it, will it notify user that he have to start over again or it will recover and let him to continue.
2. Pause video, if user paused video and put it on background while working with another app how would your application react
- Compatibility with external devices
1. While video recording user can use microphone plugged to device or different type of headsets, would your application able to recognize external device and work with them properly, what if you use bluetooth connection
- Sound quality
1. What if video is too loud will your system adjust level or notify user that his video is too loud.
2. same thing with noise, would you be able to differentiate noise and extract from actual sound recording, another words would your app able to kill the noise.
For more information: