The app records a short video clip (including frames and audio) before and after the user clicks the shutter button. At present, there is no separate still image capture, as capturing a still image requires pausing the video buffer, which would create an undesirable 0.5 second gap in the motion photo sequence.
The time duration before and after the shutter can be configured in the code. (Currently 3s before shutter and 2s after). Future work might add user interface to adjust these settings.
See the GitHub repository for details. https://github.com/EllenGYY/flutter_android_motion_photo