If you use this application, please cite Sub-millisecond Video Synchronization of Multiple Android Smartphones:
@misc{akhmetyanov2021submillisecond,
title={Sub-millisecond Video Synchronization of Multiple Android Smartphones},
author={Azat Akhmetyanov and Anastasiia Kornilova and Marsel Faizullin and David Pozo and Gonzalo Ferrer},
year={2021},
eprint={2107.00987},
archivePrefix={arXiv},
primaryClass={cs.CV}
}
- Start a Wi-Fi hotspot.
- The app should display connected clients and buttons for recording control
- Enable WiFi and connect to the Wi-Fi hotspot.
- [Optional step] Press the
calculate period
button. The app will analyze frame stream and use the calculated frame period in further synchronization steps. - Adjust exposure and ISO to your needs.
- Press the
phase align
button. - Press the
record video
button to start synchronized video recording. - Get videos from RecSync folder in smartphone root directory.
Requirements:
- Python
- ffmpeg
- Navigate to
utils
directory in the repository. - Run
./match.sh <VIDEO_1> <VIDEO_2>
. - Frames will be extracted to directories
output/1
andoutput/2
with timestamps in filenames, output directory will also containmatch.csv
file in the following format:timestamp_1(ns) timestamp_2(ns)
- Integrated synchronized video recording
- Scripts for extraction, alignment and processing of video frames
- Experiment with flash blinking to evaluate video frames synchronization accuracy
- Panoramic video demo with automated Hugin stitching
- We provide scripts to stitch 2 syncronized smatphone videos with Hujin panorama CLI tools
- Usage:
- Run
./make_demo.sh {VIDEO_LEFT} {VIDEO_RIGHT}
- Run
Reference code for the paper Wireless Software Synchronization of Multiple Distributed Cameras. Sameer Ansari, Neal Wadhwa, Rahul Garg, Jiawen Chen, ICCP 2019.