Viewing raw .mp4 files in /recordings

My apologies if this has already been addressed. A few months ago I upgraded to the docker version of Bluecherry. Live video is showing fine, and looking in the /recordings folder, it appears that recordings are being kept, but nothing ever is found under Playback. I have a need to go back and view some of the recent recordings, but if I manually access the .mp4 files under the /recordings directory, none of my video viewing/editing tools seem to know what the file is. Is there a proprietary format at work, or how best can I view the .mp4 files saved in the /recordings directory?

The files should play fine with most video players including VLC. Can you try VLC?

Do the files play in the Bluecherry client?

After some more playing around, it looks like all of the .mp4 files are corrupt? They were writing to an NFS share on a NAS but seem to be missing any recognizable header info, as compared to a file written to the server’s local disk. VLC/Hanbrake/ffmpeg aren’t able to do anything with the files, so guessing the nfs mount was somehow not capturing the data properly?

Possibly? Are there any errors in /var/log/kern.log or /var/log/bluecherry.log?

Nothing jumps out for the kern.log. The only thing I see repeated frequently in bluecherry.log is

Nov 19 00:09:43 securitydvr bc-server[84882]: PHP Warning: The magic method Var
Pub::__wakeup() must have public visibility in /usr/share/bluecherry/www/lib/Var
Pub.php on line 10

which appears to point towards a privileges issue. I walked through one of the saved .mp4 recordings with a binary editor yesterday, and while the file length was appropriate for the length of what should have been recorded, the payload of the file was all zeros. There was a brief header at the top that contained data, and a brief section at the very end, but the vast majority was just 00 hex. Not sure if this was related to an NFS issue, or something with Docker trying to write outside it’s container. At this point, I’m going to wipe the machine and rebuild from scratch, which will hopefully get rid of any gremlins that may be lurking. I appreciate your help.

Keep me updated. If this is reproducible we need to figure out a solution.

What nfs mount options did you use?

I assume you mounted inside the host and added it as a volume inside docker? If so did you edit docker-compose.yml or did you create a docker-compose.override.yml file and add in the volume like this:

version: '3.7'
services:
 bluecherry:
    volumes:
      - ./recordings:/var/lib/bluecherry/recordings
      - /host/mount/via/nfs:/media/container/mount

I had just made the /var/lib/bluecherry/recordings the mount point for the nfs mapping.