SimpleScreenRecorder .mp4 products playable in VLC but not in Google Photos

<https://photos.app.goo.gl/C4zxK1tSkegftyPo8> for example.

Originals of recordings such as this play without error in VLC media player, however when copied to Google, it seems that errors occur at playback time (I see a short period of what might be an attempt to buffer, then an on-screen error; playback does not commence).

Please, has anyone else encountered problems with recordings made by SimpleScreenRecorder (or whatever's used by SimpleScreenRecorder to produce the files)?

Not necessarily with Google Photos; I wonder whether there's a subtle problem with the recordings, a problem to which applications/environments such as Google Photos might be 'intolerant'.

TIA

Environment

Code:
% pkg info -x simplescreenrecorder vlc
simplescreenrecorder-0.4.3_1
vlc-3.0.12_3,4
% freebsd-version
14.0-CURRENT
% uname -KU
1400017 1400017
%

If I'm not mistaken, I had the same problem/symptoms long ago (probably more than a year) with recordings made by SimpleScreenRecorder on 13.0-CURRENT.
 
I can confirm that it doesn't work. Right-clicking and choosing 'copy debug info' gives this:

Code:
"debug_error": {
    "errorCode": "fmt.unplayable",
    "errorMessage": "An error occurred. Please try again later.",
    "pA": "GENERIC_WITHOUT_LINK",
    "WI": "vct.0.000;vd.NaN;vpl.;vbu.;vpa.0;vsk.0;ven.0;vpr.1;vrs.0;vns.3;vec.4;vemsg.Failed to open media;vvol.1;vdom.1;vsrc.1;vw.720;vh.448;mediaElem.1"
  },

Error code fmt.unplayable could refer to the file format as well as to the encoder for video and audio. If SimpleScreenRecorder allows it, choose other options for those. You can find info on your current settings with command ffprobe <your video file>.
 
Code:
% ffprobe 2021-06-06\ 09.54.03\ UFS,\ soft\ updates\ disabled,\ single\ user\ mode\ unusable\ following\ an\ interruption.mp4
ffprobe version 4.4 Copyright (c) 2007-2021 the FFmpeg developers
  built with FreeBSD clang version 11.0.1 (git@github.com:llvm/llvm-project.git llvmorg-11.0.1-0-g43ff75f2c3fe)
  configuration: --prefix=/usr/local --mandir=/usr/local/man --datadir=/usr/local/share/ffmpeg --pkgconfigdir=/usr/local/libdata/pkgconfig --disable-static --enable-shared --enable-pic --enable-gpl --enable-avresample --cc=cc --cxx=c++ --disable-alsa --disable-libopencore-amrnb --disable-libopencore-amrwb --enable-libaom --disable-libaribb24 --enable-asm --enable-libass --disable-libbs2b --disable-libcaca --disable-libcdio --disable-libcelt --disable-libcodec2 --enable-libdav1d --disable-libdavs2 --disable-libdc1394 --disable-debug --enable-htmlpages --enable-libdrm --disable-libfdk-aac --disable-libflite --enable-fontconfig --enable-libfreetype --enable-frei0r --disable-libfribidi --disable-gcrypt --disable-libglslang --disable-libgme --enable-gmp --enable-gnutls --enable-version3 --disable-libgsm --enable-iconv --disable-libilbc --disable-libjack --disable-libklvanc --disable-libkvazaar --disable-ladspa --enable-libmp3lame --disable-liblensfun --disable-libbluray --disable-librsvg --disable-librtmp --enable-libxml2 --disable-lto --disable-lv2 --disable-mbedtls --disable-libmfx --disable-libmodplug --disable-libmysofa --disable-nonfree --disable-openal --disable-opencl --disable-opengl --disable-libopenh264 --disable-libopenjpeg --disable-libopenmpt --disable-openssl --disable-libopenvino --enable-optimizations --enable-libopus --disable-pocketsphinx --disable-libpulse --disable-librabbitmq --disable-librav1e --disable-librist --enable-runtime-cpudetect --disable-librubberband --disable-sdl2 --disable-libsmbclient --disable-libsnappy --disable-sndio --disable-libsoxr --disable-libspeex --disable-libsrt --disable-libssh --disable-libtensorflow --disable-libtesseract --enable-libtheora --disable-libtwolame --disable-libuavs3d --enable-libv4l2 --enable-vaapi --disable-vapoursynth --enable-vdpau --disable-libvidstab --disable-libvmaf --enable-libvorbis --disable-libvo-amrwbenc --enable-libvpx --disable-vulkan --disable-libwebp --enable-libx264 --enable-libx265 --disable-libxavs2 --enable-libxcb --enable-libxvid --disable-outdev=xv --disable-libzimg --disable-libzmq --disable-libzvbi
  libavutil      56. 70.100 / 56. 70.100
  libavcodec     58.134.100 / 58.134.100
  libavformat    58. 76.100 / 58. 76.100
  libavdevice    58. 13.100 / 58. 13.100
  libavfilter     7.110.100 /  7.110.100
  libavresample   4.  0.  0 /  4.  0.  0
  libswscale      5.  9.100 /  5.  9.100
  libswresample   3.  9.100 /  3.  9.100
  libpostproc    55.  9.100 / 55.  9.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '2021-06-06 09.54.03 UFS, soft updates disabled, single user mode unusable following an interruption.mp4':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2avc1mp41
    encoder         : Lavf58.76.100
  Duration: 00:03:50.17, start: 0.000000, bitrate: 137 kb/s
  Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p(tv, bt709), 720x448 [SAR 1:1 DAR 45:28], 136 kb/s, 5.96 fps, 6 tbr, 12288 tbn, 12 tbc (default)
    Metadata:
      handler_name    : VideoHandler
      vendor_id       : [0][0][0][0]
%
 
Seems like a usual file to me, nothing special. Container mp4/isom, AVC encoded h264 video, no audio. However, downloading gives me a 560900 byte file that won't play. Both ffprobe and mplayer say 'moov atom not found'. Your ffprobe worked. Could it be that the file got corrupted during upload?
 
downloading gives me a 560900 byte file that won't play.

For the first example (opening post), my first download using the Open in Browser extension began playback in the browser after the download.

For the second example, first download failed to playback. Second download of the same file a few minute later began playback in the browser.

1623018712499.png


This smells like an intermittent server-side issue. Hmm.
 
grahamperrin said:
Second download of the same file a few minute later began playback in the browser.

So the upload of the file went well, it probably takes Google some time to really make it available. Having seen your work today I didn't expect a server-side issue. Your doing well!
 
This smells of a latency issue - UDP packets with video data getting lost along the way.

For what it's worth, two tests at home this morning with latencies of 24 and 18 ms:
Before and after the tests: the video linked from <https://forums.FreeBSD.org/threads/80787/post-516153> would not play.

After the test: the video linked from the opening post would not play. Tested with:
  1. Firefox in two profiles, one of which was cleaned yesterday
  2. qutebrowser
  3. Chromium.
I'll retry on campus.
 
Can cause for some reason. Same happened to me on Kazam Screen recorder.
FIX:
1)Install Shotcut software and drag-drop your mp4.
2)Export and select YouTube format mp4 from options.
3)Get the working file.

Hope it works
 
grahamperrin said:
I'd like to understand what triggers the failure.

To find the difference, ffprobe (comes with ffmpeg) may be helpful. Try ffprobe <bad-video-file> versus ffprobe <good-video-file>. It could be different audio/video codecs.
 
Back
Top