FalconLee1011 / Customized-Aerial-Screen-Saver

182 stars 7 forks source link

Aerials only playing once #12

Open AlexHaffer opened 4 months ago

AlexHaffer commented 4 months ago

Hi, I love the idea of adding custom Aerials, but for some reason it no longer works for me.

I can add Aerials without issues in the app, but the thumbnail image is not generated for them. In System Settings, they are just an error icon or black rectangle in the thumbnail, which adds up, given there is no thumbnail in the folder. When selected, a Download button shows, but is not doing anything on click (like in issue #4) and instead of the newly added Aerial, another screen saver is used (an older custom one that still works).

The video file I used to test is a 40s long MOV file with 1920⨉1080px @ 60fps and no audio track and the thumbnail image is a JPG file with 1920⨉1080px @ 72dps, which both match the suggested formats.

As mentioned before, a previously added Aerial still works fine, so the new one not working made me curious. I fiddled around with the old one and noticed that changing the thumbnail image within the folder does not change the thumbnail in System Settings, even after refreshing the assets and restarting the Mac. Neither does creating and adding a preview image in the folder manually resolve the issues with the newly added Aerial.

I'm using a MacBook Air M2 (2023) with macOS Sonoma 14.5 currently installed.

aerial_issue

AlexHaffer commented 4 months ago

Update: I just now noticed after looking at the screenshot again that the path was still broken and read asset-perview instead of asset-preview (as in issue #2), so I renamed it and refreshed. Now the addition of new Aerials works fine, but they only play once. Every subsequent play (initiated by clicking preview in System Settings or actually starting the screen saver) is just a black screen until the screen saver is de- and re-selected in System Settings. This change sadly also broke my old Aerial (the thumbnail no longer shows in the app and it only plays once, just like the newly added one).

aerial_issue

D051p0 commented 3 months ago

Same here. Sonoma 14.5 playing wallpaper only once and then stops.

larryqiann commented 3 months ago

I did some testing.

First download at least two stock wallpapers, open this app, then open the system assets folder. Rename an existing file to another system file (i.e. swap the filenames on two files). Then click Refresh assetsd a few times and try to go to settings again (make sure the "target" wallpapers aren't selected before doing this). Then select them again in settings.

You will be able to observe that the media plays as expected, and the image does not match as they are switched.

Performing this procedure with a different video file that plays normally in QuickTime appears to result in the bug mentioned above. Thus, I assume that the bug has to do with the format or encoding of the video. I have tried to use Claude to clone the settings and reencode my video similarly, however, this has the same bug.

This is the output of ffprobe on the original video:

ffprobe version 7.0.1 Copyright (c) 2007-2024 the FFmpeg developers built with Apple clang version 15.0.0 (clang-1500.3.9.4) configuration: --prefix=/opt/homebrew/Cellar/ffmpeg/7.0.1 --enable-shared --enable-pthreads --enable-version3 --cc=clang --host-cflags= --host-ldflags='-Wl,-ld_classic' --enable-ffplay --enable-gnutls --enable-gpl --enable-libaom --enable-libaribb24 --enable-libbluray --enable-libdav1d --enable-libharfbuzz --enable-libjxl --enable-libmp3lame --enable-libopus --enable-librav1e --enable-librist --enable-librubberband --enable-libsnappy --enable-libsrt --enable-libssh --enable-libsvtav1 --enable-libtesseract --enable-libtheora --enable-libvidstab --enable-libvmaf --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libxvid --enable-lzma --enable-libfontconfig --enable-libfreetype --enable-frei0r --enable-libass --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libspeex --enable-libsoxr --enable-libzmq --enable-libzimg --disable-libjack --disable-indev=jack --enable-videotoolbox --enable-audiotoolbox --enable-neon libavutil 59. 8.100 / 59. 8.100 libavcodec 61. 3.100 / 61. 3.100 libavformat 61. 1.100 / 61. 1.100 libavdevice 61. 1.100 / 61. 1.100 libavfilter 10. 1.100 / 10. 1.100 libswscale 8. 1.100 / 8. 1.100 libswresample 5. 1.100 / 5. 1.100 libpostproc 58. 1.100 / 58. 1.100 Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'DE851E6D-C2BE-4D9F-AB54-0F9CE994DC51.mov': Metadata: major_brand : qt minor_version : 0 compatible_brands: qt creation_time : 2023-07-19T15:27:52.000000Z Duration: 00:04:00.24, start: 0.000000, bitrate: 9239 kb/s Stream #0:0[0x1](und): Video: hevc (Main 10) (hvc1 / 0x31637668), yuv420p10le(tv, bt709), 3840x2160 [SAR 1:1 DAR 16:9], 9214 kb/s, 239.76 fps, 239.76 tbr, 239760 tbn (default) Metadata: creation_time : 2023-07-19T15:27:52.000000Z handler_name : Core Media Video vendor_id : [0][0][0][0] encoder : HEVC

larryqiann commented 1 month ago

Update: I managed to try using Apple Compressor to compress the video (because I assumed this is what Apple mastered them with) and there are really not that many settings in there to change to try to encode this properly. Both with frame reordering on and off, the videos play once and then go into a black screen.

Unfortunately at this point it's unclear what exactly causes the issue - looking in the Console it's just giving generic "failed to decode frame" errors which doesn't make sense because it's totally capable of playing the video the first time.

Of course the same videos in question simply don't work at all in Sequoia when I tried them so this isn't exactly something I think the new OS will fix. It did work correctly on Sonoma before so it was definitely a software update that broke this (unsure if on purpose). Does anyone know whether there are specific tools to see what's going on in the original video files, or if there is some data in there we don't know about?