sozi-projects / Sozi

A "zooming" presentation editor
http://sozi.baierouge.fr
Mozilla Public License 2.0
1.59k stars 165 forks source link

Video export is not working #650

Open berchas opened 2 years ago

berchas commented 2 years ago

The video export does not work. The video seems to be produced (it is played in sozi) and an information appears that the video has been exported as video. However, no video file is produced. This applies to all video formats but not the image sequence. The png-files are exported. F12 is somehow not working (maybe due to ubuntu upgrade), so I don't know how to give more information.

In the command line, sozi-to-video pres.sozi.html leads to the error below. Not sure if that is relevant (not sure if sozi-to-video is still supported).

Sozi 22.03.25 Ubuntu 22.04.1 LTS

Error after sozi-to-video

Auto configuration failed 140682280904640:error:25066067:DSO support routines:DLFCN_LOAD:could not load the shared library:dso_dlfcn.c:185:filename(libproviders.so): libproviders.so: Kann die Shared-Object-Datei nicht öffnen: Datei oder Verzeichnis nicht gefunden 140682280904640:error:25070067:DSO support routines:DSO_load:could not load the shared library:dso_lib.c:244: 140682280904640:error:0E07506E:configuration file routines:MODULE_LOAD_DSO:error loading dso:conf_mod.c:285:module=providers, path=providers 140682280904640:error:0E076071:configuration file routines:MODULE_RUN:unknown module name:conf_mod.c:222:module=providers /usr/share/libdrm/amdgpu.ids: No such file or directory ffmpeg version n4.3.1 Copyright (c) 2000-2020 the FFmpeg developers built with gcc 7 (Ubuntu 7.5.0-3ubuntu1~18.04) configuration: --prefix= --prefix=/usr --disable-debug --disable-doc --disable-static --enable-cuda --enable-cuda-sdk --enable-cuvid --enable-libdrm --enable-ffplay --enable-gnutls --enable-gpl --enable-libass --enable-libfdk-aac --enable-libfontconfig --enable-libfreetype --enable-libmp3lame --enable-libnpp --enable-libopencore_amrnb --enable-libopencore_amrwb --enable-libopus --enable-libpulse --enable-sdl2 --enable-libspeex --enable-libtheora --enable-libtwolame --enable-libv4l2 --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libx265 --enable-libxcb --enable-libxvid --enable-nonfree --enable-nvenc --enable-omx --enable-openal --enable-opencl --enable-runtime-cpudetect --enable-shared --enable-vaapi --enable-vdpau --enable-version3 --enable-xlib libavutil 56. 51.100 / 56. 51.100 libavcodec 58. 91.100 / 58. 91.100 libavformat 58. 45.100 / 58. 45.100 libavdevice 58. 10.100 / 58. 10.100 libavfilter 7. 85.100 / 7. 85.100 libswscale 5. 7.100 / 5. 7.100 libswresample 3. 7.100 / 3. 7.100 libpostproc 55. 7.100 / 55. 7.100 [image2 @ 0x560da7efd980] Could find no file with path '/tmp/tmp-13328otZrOdw3IDzR/img%d.png' and index in the range 0-4 /tmp/tmp-13328otZrOdw3IDzR/img%d.png: No such file or directory

aumouvantsillage commented 2 years ago

so I don't know how to give more information.

You can use one of the options listed here: Helping debug Sozi

In the command line, sozi-to-video pres.sozi.html leads to the error below. Not sure if that is relevant (not sure if sozi-to-video is still supported).

sozi-to-video is a different program and is no longer supported. I can't really tell whether the errors you get are relevant to the initial problem.

berchas commented 2 years ago

Thank you for your response! I tried "SOZI_DEVTOOLS=1 sozi mypres.svg", but sozi is still opening without the dev tools. In any case, it only occurred to me today that I can easily create a video from the exported pngs. Maybe helpful for other beginners:

ffmpeg -framerate 25 -i mypres-sozi-export/img%d.png -filter_complex "color=size=600x600:color=white [white]; [white][0:v] overlay=shortest=1 [out]" -map "[out]" output.mp4

The part after filter_complex is adding a white background to the video. (One additional remark: something like %05d instead of %d leads to the same error message as sozi-to-video. Something related could also be the cause in the gui export)

aumouvantsillage commented 2 years ago

You can try ELECTRON_ENABLE_LOGGING=1 to show JavaScript error messages in the terminal.

aumouvantsillage commented 2 years ago

Everything works fine for me in Ubuntu 20.04 : I can open the dev tools and successfully export videos. I will try to reproduce the problem in Ubuntu 22.04.

berchas commented 2 years ago

Following log for the video export:

[8638:0912/123044.821524:INFO:CONSOLE(644)] "Uncaught (in promise) TypeError: Object has been destroyed", source: /opt/Sozi/resources/app.asar/src/js/exporter/index.js (644) [8638:0912/123045.370583:INFO:CONSOLE(644)] "Uncaught (in promise) TypeError: Object has been destroyed", source: /opt/Sozi/resources/app.asar/src/js/exporter/index.js (644) /usr/share/libdrm/amdgpu.ids: No such file or directory ffmpeg version n4.3.1 Copyright (c) 2000-2020 the FFmpeg developers built with gcc 7 (Ubuntu 7.5.0-3ubuntu1~18.04) configuration: --prefix= --prefix=/usr --disable-debug --disable-doc --disable-static --enable-cuda --enable-cuda-sdk --enable-cuvid --enable-libdrm --enable-ffplay --enable-gnutls --enable-gpl --enable-libass --enable-libfdk-aac --enable-libfontconfig --enable-libfreetype --enable-libmp3lame --enable-libnpp --enable-libopencore_amrnb --enable-libopencore_amrwb --enable-libopus --enable-libpulse --enable-sdl2 --enable-libspeex --enable-libtheora --enable-libtwolame --enable-libv4l2 --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libx265 --enable-libxcb --enable-libxvid --enable-nonfree --enable-nvenc --enable-omx --enable-openal --enable-opencl --enable-runtime-cpudetect --enable-shared --enable-vaapi --enable-vdpau --enable-version3 --enable-xlib libavutil 56. 51.100 / 56. 51.100 libavcodec 58. 91.100 / 58. 91.100 libavformat 58. 45.100 / 58. 45.100 libavdevice 58. 10.100 / 58. 10.100 libavfilter 7. 85.100 / 7. 85.100 libswscale 5. 7.100 / 5. 7.100 libswresample 3. 7.100 / 3. 7.100 libpostproc 55. 7.100 / 55. 7.100 [image2 @ 0x55f61ec80980] Could find no file with path '/tmp/tmp-8707-SvhWyozLZmXZ/img%d.png' and index in the range 0-4 /tmp/tmp-8707-SvhWyozLZmXZ/img%d.png: No such file or directory [8638:0912/123047.988549:INFO:CONSOLE(585)] "Video export complete.", source: /opt/Sozi/resources/app.asar/src/js/exporter/index.js (585) [8638:0912/123048.135013:INFO:CONSOLE(631)] "Uncaught (in promise) TypeError: Object has been destroyed", source: /opt/Sozi/resources/app.asar/src/js/exporter/index.js (631)

With regard to F12, no logs in the terminal. F11 and F5 are working, not sure about F2.

aumouvantsillage commented 2 years ago

It would be interesting to monitor the content of the temporary folder where the PNG files are supposed to be written. In your last attempt, it was '/tmp/tmp-8707-SvhWyozLZmXZ/. Unfortunately, the name of this folder changes every time the export is run, and it is deleted immediately after completion.

In a previous version, some Windows users reported that the temporary folder was deleted before running FFMPEG. I could not reproduce this behavior, and it has not been reported for Linux, as far as I remember.

berchas commented 2 years ago

I monitored the tmp folder with the following (in the last phase of the creation):

watch -n 0.1 'ls -tr tmp-21139-NuvCn253hOiG/ | xargs >> tmp.txt'

Nothing to see there. The final number of images seems to fit more or less (frame rate of one per second, with a video length of about 90 seconds). At the end, the folder is deleted (even if I have opened one of the pictures or included another file into the tmp folder). tmp.txt

For me, the manual way stated above is fine.

aumouvantsillage commented 2 years ago

Thanks for your help. I'll add a few debug messages to the export script. Maybe it will help clarify what is going on.

aumouvantsillage commented 2 years ago

For your information, there is a new Beta release available. It fixes a similar issue in the PowerPoint export.

It does not address your video export problem yet, but it should bring the F12 key back.