If a moov box is at the end of a file, ffprobe.ProbeReader will fail since the go-ffprobe library does not stream the video file -- it pipes the video data to ffprobe which would exit early before the moov box is reached. To workaround this for AWS source URLs (after copyFile takes place), a pre-signed S3 URL can be used along with ffprobe.ProbeURL so that ffprobe uses range requests behind the scenes to get to the end of the file when moov box is located at the end of the file.
If a moov box is at the end of a file, ffprobe.ProbeReader will fail since the go-ffprobe library does not stream the video file -- it pipes the video data to ffprobe which would exit early before the moov box is reached. To workaround this for AWS source URLs (after copyFile takes place), a pre-signed S3 URL can be used along with ffprobe.ProbeURL so that ffprobe uses range requests behind the scenes to get to the end of the file when moov box is located at the end of the file.
This was fixed in https://github.com/livepeer/catalyst-api/pull/399