I have an application that records video. When I get (in QML) the onRecorderStateChanged event, data has not finished being written to the file when videoRecorder.recorderState == CameraRecorder.StoppedState.
I discovered this by attempting to hash the file (QCryptographicHash) and verifying the checksums.
I believe this is because in AVFMediaRecorderControlIOS::stopWriter() it emits the stateChange, then actually tells the writer to stop.
Unfortunately, I have to sample the file repeatedly until the file no longer changes, but this isn't 100%. The file may be added to after some delay. I'd like to have it 100% with no delay.
Also, the time varies that the file is typically done writing. iPhones 4S counter intuitively finish sooner than iPhone5.