I have a Windows PC running Blue Iris security camera software, and it has a “Direct-to-disc” option whereby it records video straight from each camera’s h.264 RTSP stream without transcoding, to reduce CPU and HDD utilization. There is some re-packaging involved, and I think that’s where the problem may lie.
When I browse through recorded footage, either on the BI PC or on another 
device (e.g. my Mac), I have the option to download clips either with or 
without re-encoding to h.264. I obviously prefer to download without 
re-encoding. I’ll call these the “original” downloads. Once downloaded they 
behaved like normal MP4s on my Intel-based Mac. I could read them in QuickTime 
Player or in any other app that uses the QuickTime libraries, like DaVinci 
Resolve.

But last week I replaced my Intel Mac with an Apple Silicon Mac, and now these 
MP4 files are broken. They will not play back in QuickTime player, nor in the 
apps that are based on QuickTime. Curiously, VLC Player on my AS Mac will play 
the “bad” files back, but only after a few frames of what looks like gray snow. 
If I turn off the Hardware acceleration in VLC Player, then it will play back 
the bad files correctly from frame 1.

If I choose the option in Blue Iris or in the client viewer to re-encode the 
video to H.264 before download, then the resulting files behave properly on any 
computer I’ve tried, but I don’t want to have to wait for a re-encode every 
time I download a clip, and the file bloat is 10x.

I ran the original file and the re-encoded file through ffprobe. Can anyone 
decode what the error is, and what the Blue Iris developer can do to fix it?

Bad (original) file:

https://www.kan.org/download/BlueIris/TrailDown.20230203_042912-042924.495.mp4

Good (re-encoded) file:

https://www.kan.org/download/BlueIris/TrailDown.20230203_042912-042924.494.mp4

Console output from Bad (original) file:

ffprobe /Users/steven/Downloads/TrailDown.20230203_042912-042924.495.mp4
ffprobe version N-109745-g7d49fef8b4-tessus  https://evermeet.cx/ffmpeg/  
Copyright (c) 2007-2023 the FFmpeg developers
   built with Apple clang version 11.0.0 (clang-1100.0.33.17)
   configuration: --cc=/usr/bin/clang --prefix=/opt/ffmpeg 
--extra-version=tessus --enable-avisynth --enable-fontconfig --enable-gpl 
--enable-libaom --enable-libass --enable-libbluray --enable-libdav1d 
--enable-libfreetype --enable-libgsm --enable-libmodplug --enable-libmp3lame 
--enable-libmysofa --enable-libopencore-amrnb --enable-libopencore-amrwb 
--enable-libopenh264 --enable-libopenjpeg --enable-libopus 
--enable-librubberband --enable-libshine --enable-libsnappy --enable-libsoxr 
--enable-libspeex --enable-libtheora --enable-libtwolame --enable-libvidstab 
--enable-libvmaf --enable-libvo-amrwbenc --enable-libvorbis --enable-libvpx 
--enable-libwebp --enable-libx264 --enable-libx265 --enable-libxavs 
--enable-libxvid --enable-libzimg --enable-libzmq --enable-libzvbi 
--enable-version3 --pkg-config-flags=--static --disable-ffplay
   libavutil      57. 44.100 / 57. 44.100
   libavcodec     59. 61.100 / 59. 61.100
   libavformat    59. 37.100 / 59. 37.100
   libavdevice    59.  8.101 / 59.  8.101
   libavfilter     8. 56.100 /  8. 56.100
   libswscale      6.  8.112 /  6.  8.112
   libswresample   4.  9.100 /  4.  9.100
   libpostproc    56.  7.100 / 56.  7.100
[h264 @ 0x7fd082805200] error while decoding MB 161 121, bytestream -5
[h264 @ 0x7fd082805200] concealing 50 DC, 50 AC, 50 MV errors in I frame
[h264 @ 0x7fd082805200] error while decoding MB 161 121, bytestream -6
[h264 @ 0x7fd082805200] concealing 50 DC, 50 AC, 50 MV errors in P frame
[h264 @ 0x7fd082805200] error while decoding MB 161 121, bytestream -5
[h264 @ 0x7fd082805200] concealing 50 DC, 50 AC, 50 MV errors in P frame
[h264 @ 0x7fd082805200] error while decoding MB 161 121, bytestream -5
[h264 @ 0x7fd082805200] concealing 50 DC, 50 AC, 50 MV errors in P frame
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 
'/Users/steven/Downloads/TrailDown.20230203_042912-042924.495.mp4':
   Metadata:
     major_brand     : isom
     minor_version   : 512
     compatible_brands: isomiso2avc1mp41
     encoder         : Lavf58.45.100
   Duration: 00:00:11.30, start: 0.000000, bitrate: 6417 kb/s
   Stream #0:0[0x1](und): Video: h264 (Main) (avc1 / 0x31637661), yuvj420p(pc, 
bt709, progressive), 2592x1944, 6388 kb/s, 19.91 fps, 20.67 tbr, 90k tbn 
(default)
     Metadata:
       handler_name    : VideoHandler
       vendor_id       : [0][0][0][0]
   Stream #0:1[0x2](und): Audio: aac (LC) (mp4a / 0x6134706D), 8000 Hz, mono, 
fltp, 26 kb/s (default)
     Metadata:
       handler_name    : SoundHandler
       vendor_id       : [0][0][0][0]

Console output from Good (re-encoded) file:

/Applications/ffmpeg/ffprobe 
/Users/steven/Downloads/TrailDown.20230203_042912-042924.494.mp4
ffprobe version N-109745-g7d49fef8b4-tessus  https://evermeet.cx/ffmpeg/  
Copyright (c) 2007-2023 the FFmpeg developers
   built with Apple clang version 11.0.0 (clang-1100.0.33.17)
   configuration: --cc=/usr/bin/clang --prefix=/opt/ffmpeg 
--extra-version=tessus --enable-avisynth --enable-fontconfig --enable-gpl 
--enable-libaom --enable-libass --enable-libbluray --enable-libdav1d 
--enable-libfreetype --enable-libgsm --enable-libmodplug --enable-libmp3lame 
--enable-libmysofa --enable-libopencore-amrnb --enable-libopencore-amrwb 
--enable-libopenh264 --enable-libopenjpeg --enable-libopus 
--enable-librubberband --enable-libshine --enable-libsnappy --enable-libsoxr 
--enable-libspeex --enable-libtheora --enable-libtwolame --enable-libvidstab 
--enable-libvmaf --enable-libvo-amrwbenc --enable-libvorbis --enable-libvpx 
--enable-libwebp --enable-libx264 --enable-libx265 --enable-libxavs 
--enable-libxvid --enable-libzimg --enable-libzmq --enable-libzvbi 
--enable-version3 --pkg-config-flags=--static --disable-ffplay
   libavutil      57. 44.100 / 57. 44.100
   libavcodec     59. 61.100 / 59. 61.100
   libavformat    59. 37.100 / 59. 37.100
   libavdevice    59.  8.101 / 59.  8.101
   libavfilter     8. 56.100 /  8. 56.100
   libswscale      6.  8.112 /  6.  8.112
   libswresample   4.  9.100 /  4.  9.100
   libpostproc    56.  7.100 / 56.  7.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 
'/Users/steven/Downloads/TrailDown.20230203_042912-042924.494.mp4':
   Metadata:
     major_brand     : isom
     minor_version   : 512
     compatible_brands: isomiso2avc1mp41
     encoder         : Lavf58.45.100
   Duration: 00:00:12.09, start: 0.000000, bitrate: 37956 kb/s
   Stream #0:0[0x1](und): Video: h264 (Constrained Baseline) (avc1 / 
0x31637661), yuv420p(progressive), 2592x1952, 37926 kb/s, 19.94 fps, 20.42 tbr, 
90k tbn (default)
     Metadata:
       handler_name    : VideoHandler
       vendor_id       : [0][0][0][0]
   Stream #0:1[0x2](und): Audio: aac (LC) (mp4a / 0x6134706D), 8000 Hz, mono, 
fltp, 27 kb/s (default)
     Metadata:
       handler_name    : SoundHandler
       vendor_id       : [0][0][0][0]


Most likely the AS mac hardware does not support yuvj420p that has a bigger color range than yuv420p
_______________________________________________
ffmpeg-user mailing list
ffmpeg-user@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-user

To unsubscribe, visit link above, or email
ffmpeg-user-requ...@ffmpeg.org with subject "unsubscribe".

Reply via email to