SUMMARY Digikam may crash when previewing .mov files STEPS TO REPRODUCE I installed a fresh digikam setup and imported one .jpg file and one .mov file. They both are displayed as thumbs. I try then to preview them by first clicking one and the the other. Scenario 1 : I open a new digikam instance. If I start with the .mov file, its is played OK, I can after that click on je .jpg file and it is displayed ok. If I then click again on the .mov file it is displayed OK, and so on. Scenario 2 : I open a new digikam instance. If I click first on the .jpg file it is displayed OK but the, If I click on the .mov file, digikam displays it very shortly and then crashes. This is 100% reproducible. OBSERVED RESULT In scenario 2, there is a crash. EXPECTED RESULT Correct display as in scenario 1. SOFTWARE/OS VERSIONS Windows: macOS: Linux/KDE Plasma: kernel 5.10.29-1-lts (available in About System) KDE Plasma Version: 5.21.4 KDE Frameworks Version: 5.81.0 Qt Version: 5.15.2 ADDITIONAL INFORMATION If launched in terminal, the scenario 2 displays the following : malloc(): unaligned tcache chunk detected I may provide more, but need instructions to send the meaningful data. Many thanks for considering this bug report.
Please run digiKam in debuger from a console, as explained here : https://www.digikam.org/contribute/ ...and capture the backtrace when it crash... Gilles Caulier
Created attachment 137534 [details] crash console log You will find attached a log of my "scenario 2" kind of crash. In the meantime, I investigated a bit further and found that chasses only occur with vertical .mov files (e.g. taken by a smartphone in vertical orientation). Everything is OK with horizontal .mov files. I said "strange", didn't I ? Thanks.
The trace is just the console output of the program, not the debug trace generated by gdb. Look well in contribute page, in section "Dealing with Crashes in digiKam" Gilles Caulier
Created attachment 137543 [details] crash gdb log Sorry, I'm not very familiar with these procedures. I hope this is what you are looking for. If not, let me know...
Created attachment 137544 [details] gdb backtrace I did not include this also...
It crash in QtAV The Qt framework used to play video with ffmpeg codecs. Which QtAv did you use exactly ? Go to Help/Component info for details. Also please try to use the digiKam 7.2.0 AppImage Linux bundle that we provide in download area, instead to use the linux native package. Gilles Caulier
Here is the version dump : digikam version 7.2.0 CPU cores: 2 Eigen: 3.3.9 Exiv2: 0.27.3 Exiv2 supports Base Media: Non Exiv2 supports XMP metadata: Oui HEIF encoding support: Oui ImageMagick codecs: 7.0.11 KF5: 5.80.0 LensFun: 0.3.95-0 LibCImg: 130 LibJPEG: 80 LibJasper: 2.0.27 LibLCMS: 2120 LibLqr support: Oui LibPGF: 7.19.03 LibPNG: 1.6.37 LibRaw: 0.21.0 LibTIFF: 4.2.0 Marble: 0.27.20 Parallelized demosaicing: Oui Qt: 5.15.2 Qt WebEngine support: Oui Rajce support: Oui VKontakte support: Non LibAVCodec: 58.91.100 LibAVFormat: 58.45.100 LibAVUtil: 56.51.100 LibGphoto2: 2.5.27 LibOpenCV: 4.5.2 LibQtAV: 1.13.0 I also tried this on a Debian testing setup. Same type of crash if you start preview with a vertical .mov file. But it is OK if you start with a horizontal one (you can preveiw vertical ones after without issues). There the version context is the following : digikam version 7.1.0 CPU cores: 2 Eigen: 3.3.9 Exiv2: 0.27.3 Exiv2 supports XMP metadata: Oui HEIF encoding support: Oui ImageMagick codecs: 6.9.11 KF5: 5.77.0 LensFun: 0.3.2-0 LibCImg: 130 LibJPEG: 62 LibJasper support: Non LibLCMS: 2090 LibLqr support: Oui LibPGF: 7.19.03 LibPNG: 1.6.37 LibRaw: 0.20.0 LibTIFF: 4.2.0 Marble: 0.27.20 Parallelized demosaicing: Oui Qt: 5.15.2 Qt WebEngine support: Oui Rajce support: Oui VKontakte support: Non Gestion du lecteur de média: Oui LibAVCodec: 58.91.100 LibAVFormat: 58.45.100 LibAVUtil: 56.51.100 LibGphoto2: 2.5.27 LibOpenCV: 4.5.1 LibQtAV: 1.13.0 Finally, as suggested, I also tried the Appimage bundle. It does not show this behavior. However, using this bundle does not allow integration in a plasma desktop environment, in particular the use of plasma file-pickers (only uses the standard low-functionality QT ones). It does not tell what codecs is fmmpeg built with, ... IMHO it is more a workaround than a solution. But it is a workaround. Many thanks for your work.
The crash is not linked with the Plasma integration of the application. If it do not crash with the AppImage bundle, it so far a native packaging problem with your Linux. Typically, a build settings for QtAV or fmmpeg. This last one in the most important as is provide the video codec. The Qt version is not very important here. Of course the AppImage version has all dependencies required embeded in the bundle, this include the ffmpeg codecs (libav*). Going to the Help/Components info dialog will give the right version used by the AppImage bundle. The File dialog is another story which is not relevant of the crash. If the native version crash and not the AppImage well the differences is in the low level components used to play the video. Gilles Caulier
Thank you for your explanations, but I struggle to understand why all files play nicely with the QtQV standalone player and not when played by the QtAV framework through digikam. This seems to indicate QtAV framework and codecs are OK, but not the way digikam calls them, no ? But you are right, this is most certainly a packaging issue somewhere and it is probably not worth keeping this bug report open here. Regards, Loïc
I find the backtrace strange, it almost seems as if it crashes when the time label is set. A test shows that with MOV files a position changed signal comes from QtAV much more often. Maybe we should limit it. Maik
Git commit 958126660a7e61417efe42aeaa01c11134c69373 by Maik Qualmann. Committed on 15/04/2021 at 06:16. Pushed by mqualmann into branch 'master'. try to fix crash in the media player M +15 -2 core/libs/video/player/mediaplayerview.cpp https://invent.kde.org/graphics/digikam/commit/958126660a7e61417efe42aeaa01c11134c69373
Created attachment 137661 [details] New backtrace after patch Thank you Maik. I built DigiKam with your patch and had a positive result in the fact that previewing "vertical files" in the first instance and then horizontal ones did not crash. However, previewing first a jpg and then a vertical file still makes DigiKam crash with the attached backtrace. To be more synthetic : 1. vertical .mov and 2. horizontal .mov --> OK 1. vertical .mov and 2. .jpeg --> OK 1. horizontal .mov and 2. vertical .mov --> OK 1. vertical .mov and 2. .jpeg --> OK 1. .jpeg and 2. vertical .mov --> CRASH 1. .jpeg and 2. horizontal .mov --> OK
Created attachment 137668 [details] backtrace after MALLOC_CHECK_ 2 Another observation : I started gdb and set the environment with "set environment MALLOC_CHECK_ 2". This time if I preview a jpg file and then a vertical mov file? this one is read correctly until the end. If I then click another file to preview it, DigiKam crashes with the attached backtrace. (your previous patch being applied). Hoping this might help. Many thanks.
Git commit a109a71df2ede48a5884b9e1f616fa0fad3847d3 by Maik Qualmann. Committed on 17/04/2021 at 22:12. Pushed by mqualmann into branch 'master'. try without locale support M +8 -4 core/libs/video/player/mediaplayerview.cpp https://invent.kde.org/graphics/digikam/commit/a109a71df2ede48a5884b9e1f616fa0fad3847d3
Created attachment 137678 [details] New backtrace after rebuild I applied your new patch with no success in my crash scenario (i.e. preview a jpg file and then a vertical mov file). I'm attaching the gdb log and backtrace. This time, I did not ctrl-c in gdb when DigiKam froze, just hit return. tell me if that is the correct thing to do... Thanks for investigating.
For me the GDB backtraces are not plausible. Since it crashes deep in Qt too. I also cannot explain to myself why a JPG has to be displayed beforehand. At the moment I have no explanation for this. Possibly provide the corresponding MOV video, if not public, then to my private mail. Maik
Thanks for the test files, but I cannot reproduce the crash. With openSUSE Tumbleweed, I'm practically on the same level as your component information. Which graphics card / driver are you using? Maik
For the record, my plasma/digikam setup runs on : 1/ a vmware virtual machine runnning on a MacOS host, which shows in Xorg.log as : (II) Loading /usr/lib/xorg/modules/drivers/vmware_drv.so (II) Loading /usr/lib/xorg/modules/drivers/modesetting_drv.so (II) vmware: driver for VMware SVGA: vmware0405, vmware0710 (--) vmware(0): DRM driver version is 2.18.0 (II) vmware(0): [DRI2] DRI driver: vmwgfx 2/ a quite old computer (which I can't access for the moment) : - nvidia graphic card 9650-GT - nvidia proprietary legacy driver 340-xx Now, considering that (i) the crash I have is not reroducible by you on OpenSuse Tumbleweed and (ii) it is not reproducible with the appimage, there are very high chances that the issue is linked to particularities in my two setups. I will investigate on my side and try to run an OpenSuse Tumbleweed inside a virtual machine. I will report back, but I can't really do that for the moment.
I was able to set up an opensuse tumbleweed VMware virtual machine. Now, despite having set up repos to install packman's versions of ffmpeg, I am facing an issue with QtAV player not playing .mov files (ffmpegthumbs also does not generate thumbs for .mov files in Dolphin). However, ffplay plays .mov files fine. Being unfamiliar with codec experiences in opensuse, I can't solve this. So I'm unable to go further on checking if the crashes I reported are linked to the distribution (if I have no crash in my opensuse VM) or the particularities of running DigiKam into a virtual machine (if I have a crash in it).
Yes, you have to switch to Packman for the FFmpeg packages, the openSUSE packages are more or less dummies. However, Packman packages have been broken for 2 days after a major openSUSE update. This is rare, but Packman usually fixes it very quickly. Maik
I finally managed to get an up and running opensuse virtual machine. digikam also crahes in this setup. So the logical conclusion is that the crash comes from a graphical "layer" failure of some kind. And I'm afraid we cannot say more, except that this bug report is most probably not a digikam bug and should then be closed. Without your two patches, I experienced crashes on Debian when previewing first a .mov file, which is no longer the case, so I would say this is a good addition. Many thanks for exploring this.
I built digikam with media player support for fedora 34 and Kde Neon (both of them disable the functionality by default, or at least do not enable it correctly). I got the same crash for fedora but everything seems ok on Kde Neon, both on virtual machines. The only real computer I have to test is quite old and unfortunately on it opensuse also crashes (Bothe with nouveau and Nvidia drivers). So, in essence, these crashes depend on some distribution software components (works on appimage and KDE neon, but not other distributions on virtual machines) and hardware components too (works on opensuse on Maik's computer, but not on mine).
I've done some further investigations on this issue and found what's going wrong. Basically, it comes down to the version of ffmpeg libraries used to run (not necessarily build) digikam, and among the various libraries, only libswscale raises an issue. Practically, if I downgrade libswscale.so.5 to libswscale.so.5.5.100 and older (which is ffmpeg version 4.2.2 and older), I don't have any crash when running digikam. If I use libswscale.so.5.7.100 and newer (which is ffmpeg version 4.3.2 and newer), I can reproduce the crashes described in this bug report. This is confirmed on both virtual machines, and and old pc with nouveau driver, whatever the distribution is. By the way, if I understand well, you are building the appimages on a mageia 7 setup, which is ffmpeg 4.1.x series, and therefore doesn't crash (It would be interesting to have one image built on mageia 8 and see what's happening). I found that a workaround for me is then simply to install one libswscale.so.5.5.100 binary somewhere in my system, in parallel to the ordinary libswscale.so.xxx provided by the distribution, and run digikam with the LD_PRELOAD=/whateverpath/libswscale.so.5.5.100 /usr/bin/digikam command. At this point, I cannot say what's wrong: a regression in libswscale or an inconsistency in the way it is called (presumabely in core/libs/threadimageio/video/videodecoder_p.h). I'm leaving that for you :). Regards, Loïc
I'm here on FFmpeg-4.4.4 and don't have this problem. The files under "core/libs/threadimageio/video" have nothing to do with the video player. These belong to the video thumbnail creator. We use QtAV to play videos in the view. Maik
Created attachment 138393 [details] test files Thanks for following this issue. I don't know what to say more. You dont'have crashes, I do with the same opensuse setup. I am attaching testifies for anybody to try and report. Launch digikam with those two files in the Images directory, click first on the picture.jpeg and then on the vertical.mov file. crash may happen immediately or near the end of video playback. Maik, could you try once more ? Thanks. Loïc
I further digged into this issue and used your infrastructure into project/bundles/appimage to build an appimage with an updated version of ffmpeg. Currently the platform you use to build appimages (Mageia 7) ships a 4.1.x version of ffmpeg, while Mageia ships a 4.3.x version. I backported and built the 4.3.x version into Mageia 7 and built an appimage using your scripts, changing nothing else than ffmpeg. I would gladly share this appimage with you and can send a temporary wetransfer link on your private mail. Results are, as I anticipated, that there is no crash with the official-ffmpeg4.1 appimage, while the crahs described in this bug report can be observed with a custom-ffmpeg4.3 appimage. What is strange and interesting though is the following : crashes are observed when starting a new digikam-ffmpeg4.3 setup (i.e. erasing all .db files and digikamrc file before starting, with the two test files in the images directory and (double)clicking first on th jpeg, then on the vertical .mov). Now, if I start a new digikam-ffmpeg4.1 setup, there is no crash, as I said, but if after that I start digikam-ffmpeg4.3 without erasing .db files and digikamrc, there is no crash either. So, I have a question : is ffmpeg used in any form when building the databases (like size, orientation, etc) to set data which would then used by qtav for playback ? Is there a way I could access and analyse the database content differences in the two setups above ?
I'm on openSUSE Tumbleweed on FFmpeg-4.4.x and have no crashes. The FFmpeg packages are from Pakman extra repository, as the openSUSE packages are just "dummies". Maik
FFmpeg is used as a metadata parser for video files, i.e. orientation, date, etc. Maik
Correction : we don't use Mageia7 to build AppImage, but Mageia6 to preserve binary compatibility with libc and older Linux distribution. Mageia7 is used to build the cross compiled version for Windows. Later 7.3.0, we plan to migrate to Mageia 7 for LTS Qt 5.15.2 and for the future Qt6 port (a student will work on it this summer), we will use Mageia 8. Best Gilles Caulier
@Maik : I am sending you a link to the Appimage created with FFMpeg 4.3.x @Gilles, Sorry for my mistake, I was relying on what is written in the project/bundles/appimage/README file.
Hi Gilles, can you test the files from comment 25 on your hardware using the method described there? I think you should be on FFmpeg-4.3.x already. Maik
Maik, Gilles, Again, thank you for looking into this issue. I carried another series of tests yesterday and found that crashes only happen if you want to play the video file on the very first launch of digikam (i.e. when ther is no digikamrc file at start). On the contrary, if you start digikam, position it on the Image folder and exit, then relaunch and play the jpg and the vieo file, there is no crash. So it's not a question of database files, but rather digikamrc file. Having said that, if I summarize, crashes happen : - on certain hardware only (thanks Maik for confirming it is OK on your platform); - on first run only ; - with ffmpeg >= 4.3.x only ; - with specific video and image files only. I doubt this can affect a lot of users (I may be the only one in fact :) ) and it is perfectly ok to live with that, given that if you make sure you have launched digikam at least once, everything should be ok. So I would suggest closing that bug. Loic
I'm linking bug 437328 because both users are using Arch Linux. Both bugs may be related. Maik
*** Bug 437328 has been marked as a duplicate of this bug. ***
Git commit c9ebd4d03581137d77cc665e183088aff9f1b4ac by Maik Qualmann. Committed on 21/05/2021 at 06:05. Pushed by mqualmann into branch 'master'. try to fix crash in the video slider context M +1 -1 core/libs/video/player/mediaplayerview.cpp M +1 -1 core/libs/video/player/slidevideo.cpp https://invent.kde.org/graphics/digikam/commit/c9ebd4d03581137d77cc665e183088aff9f1b4ac
The patched version crashes for me too. But BT looks slightly different (?): Thread 75 "QtAV::VideoThre" received signal SIGABRT, Aborted. [Switching to Thread 0x7ffeeaffd640 (LWP 113236)] 0x00007ffff4f57d22 in raise () from /usr/lib/libc.so.6 (gdb) bt #0 0x00007ffff4f57d22 in raise () at /usr/lib/libc.so.6 #1 0x00007ffff4f41862 in abort () at /usr/lib/libc.so.6 #2 0x00007ffff4f99d28 in __libc_message () at /usr/lib/libc.so.6 #3 0x00007ffff4fa192a in () at /usr/lib/libc.so.6 #4 0x00007ffff4fa2826 in unlink_chunk.constprop () at /usr/lib/libc.so.6 #5 0x00007ffff4fa29b0 in malloc_consolidate () at /usr/lib/libc.so.6 #6 0x00007ffff4fa488b in _int_malloc () at /usr/lib/libc.so.6 #7 0x00007ffff4fa64e1 in malloc () at /usr/lib/libc.so.6 #8 0x00007ffff59f9330 in QImageData::create(QSize const&, QImage::Format) () at /usr/lib/libQt5Gui.so.5 #9 0x00007ffff59f950d in QImage::QImage(QSize const&, QImage::Format) () at /usr/lib/libQt5Gui.so.5 #10 0x00007ffff59f9554 in QImage::QImage(int, int, QImage::Format) () at /usr/lib/libQt5Gui.so.5 #11 0x00007ffff59f9e37 in QImage::copy(QRect const&) const () at /usr/lib/libQt5Gui.so.5 #12 0x00007ffff59fa2a3 in QImage::detach() () at /usr/lib/libQt5Gui.so.5 #13 0x00007ffff59fc269 in QImage::reinterpretAsFormat(QImage::Format) () at /usr/lib/libQt5Gui.so.5 #14 0x00007ffff5a39292 in QRasterPlatformPixmap::createPixmapForImage(QImage, QFlags<Qt::ImageConversionFlag>) () at /usr/lib/libQt5Gui.so.5 #15 0x00007ffff5a3940d in QRasterPlatformPixmap::fromImage(QImage const&, QFlags<Qt::ImageConversionFlag>) () at /usr/lib/libQt5Gui.so.5 #16 0x00007ffff5a30284 in QPixmap::fromImage(QImage const&, QFlags<Qt::ImageConversionFlag>) () at /usr/lib/libQt5Gui.so.5 #17 0x00007fffed170a9a in QtAV::QPainterRenderer::preparePixmap(QtAV::VideoFrame const&) () at /usr/lib/libQtAV.so.1 #18 0x00007fffecfff877 in QtAV::WidgetRenderer::receiveFrame(QtAV::VideoFrame const&) () at /usr/lib/libQtAVWidgets.so.1 #19 0x00007fffed16bf58 in QtAV::VideoRenderer::receive(QtAV::VideoFrame const&) () at /usr/lib/libQtAV.so.1 #20 0x00007fffed17207c in QtAV::OutputSet::sendVideoFrame(QtAV::VideoFrame const&) () at /usr/lib/libQtAV.so.1 #21 0x00007fffed17beb0 in QtAV::VideoThread::deliverVideoFrame(QtAV::VideoFrame&) () at /usr/lib/libQtAV.so.1 #22 0x00007fffed17db1a in QtAV::VideoThread::run() () at /usr/lib/libQtAV.so.1 #23 0x00007ffff53e7f7f in () at /usr/lib/libQt5Core.so.5 #24 0x00007ffff11ef259 in start_thread () at /usr/lib/libpthread.so.0 #25 0x00007ffff50195e3 in clone () at /usr/lib/libc.so.6
Git commit 450d93baf8a059d9e4e0214539bf3810912e0a72 by Maik Qualmann. Committed on 11/09/2021 at 13:33. Pushed by mqualmann into branch 'master'. Use QtAV video output to use hardware acceleration if supported and use libAVFIlter to rotate the video Related: bug 382582, bug 430873, bug 414572 M +44 -44 core/libs/video/player/mediaplayerview.cpp https://invent.kde.org/graphics/digikam/commit/450d93baf8a059d9e4e0214539bf3810912e0a72
Git commit 701855c5455c495bf68b61298344e80828404311 by Maik Qualmann. Committed on 11/09/2021 at 14:48. Pushed by mqualmann into branch 'master'. Use QtAV video output also for the slideshow Related: bug 382582, bug 430873, bug 414572 M +42 -41 core/libs/video/player/slidevideo.cpp M +0 -1 core/libs/video/player/slidevideo.h https://invent.kde.org/graphics/digikam/commit/701855c5455c495bf68b61298344e80828404311
Loic, Stable digiKam 7.4.0 is published. Please check if problem is reproducible. Thanks in advance Gilles Caulier
(In reply to caulier.gilles from comment #39) > Loic, > > Stable digiKam 7.4.0 is published. Please check if problem is reproducible. > > Thanks in advance > > Gilles Caulier Testing with digikam 7.5.0 on Arch Linux. Test files from attachment, digikam does not crash but hangs indefinitely when previewing .mov file.
Ok. With your native digiKam package, which libraries version did you use, especially ffmpeg libav codecs ? When you run digiKam from a console, reproduce the hang. What do you see as debug trace on the console ? Note for this last point, you will need to turn a environment variable first : https://www.digikam.org/contribute/ Best Gilles Caulier
(In reply to caulier.gilles from comment #41) > Ok. > > With your native digiKam package, which libraries version did you use, > especially ffmpeg libav codecs ? ❯ ldd /usr/bin/digikam | grep -ie libav -e ffmpeg libavcodec.so.58 => /usr/lib/libavcodec.so.58 (0x00007f4a157c5000) libavfilter.so.7 => /usr/lib/libavfilter.so.7 (0x00007f4a15373000) libavformat.so.58 => /usr/lib/libavformat.so.58 (0x00007f4a150d7000) libavutil.so.56 => /usr/lib/libavutil.so.56 (0x00007f4a14e2c000) libavdevice.so.58 => /usr/lib/libavdevice.so.58 (0x00007f49fd19d000) libavc1394.so.0 => /usr/lib/libavc1394.so.0 (0x00007f49f7a02000) ❯ pacman -Qo /usr/lib/libavcodec.so.58 /usr/lib/libavcodec.so.58 is owned by ffmpeg 2:4.4.1-1 ❯ ffmpeg ffmpeg version n4.4.1 Copyright (c) 2000-2021 the FFmpeg developers built with gcc 11.1.0 (GCC) configuration: --prefix=/usr --disable-debug --disable-static --disable-stripping --enable-amf --enable-avisynth --enable-cuda-llvm --enable-lto --enable-fontconfig --enable-gmp --enable-gnutls --enable-gpl --enable-ladspa --enable-libaom --enable-libass --enable-libbluray --enable-libdav1d --enable-libdrm --enable-libfreetype --enable-libfribidi --enable-libgsm --enable-libiec61883 --enable-libjack --enable-libmfx --enable-libmodplug --enable-libmp3lame --enable-libopencore_amrnb --enable-libopencore_amrwb --enable-libopenjpeg --enable-libopus --enable-libpulse --enable-librav1e --enable-librsvg --enable-libsoxr --enable-libspeex --enable-libsrt --enable-libssh --enable-libsvtav1 --enable-libtheora --enable-libv4l2 --enable-libvidstab --enable-libvmaf --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxcb --enable-libxml2 --enable-libxvid --enable-libzimg --enable-nvdec --enable-nvenc --enable-shared --enable-version3 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 libswscale 5. 9.100 / 5. 9.100 libswresample 3. 9.100 / 3. 9.100 libpostproc 55. 9.100 / 55. 9.100 Hyper fast Audio and Video encoder usage: ffmpeg [options] [[infile options] -i infile]... {[outfile options] outfile}... > > When you run digiKam from a console, reproduce the hang. What do you see as > debug trace on the console ? > Note for this last point, you will need to turn a environment variable first > : > > https://www.digikam.org/contribute/ > > Best > > Gilles Caulier These are the lines of log just before the hang: digikam.general: Using 12 CPU core to run threads digikam.general: Action Thread run 1 new jobs digikam.general: Cancel Main Thread digikam.general: One job is done digikam.general: Cancel Main Thread digikam.general: Stacked View Mode : 6 digikam.general: Database Info populated for QUrl("file:///path/to/vertical.mov") [ALSOFT] (EE) Failed to set real-time priority for thread: Operation not permitted (1) digikam.general: Found video orientation: 0 digikam.general: Stacked View Mode : 6 corrupted size vs. prev_size
The problem come from the audio output in your system: "[ALSOFT] (EE) Failed to set real-time priority for thread: Operation not permitted" Try to search this line with google, you will found plenty of links. Gilles Caulier
Perhaps there is a solution around ulimit as explained here : https://stackoverflow.com/questions/10704983/operation-not-permitted-while-setting-new-priority-for-thread GilleS Caulier
Interesting to read : https://www.reddit.com/r/archlinux/comments/kfknqr/issue_with_arch_linux_and_using_audio_libs_in_c/ Gilles Caulier
(In reply to caulier.gilles from comment #43) > The problem come from the audio output in your system: > > "[ALSOFT] (EE) Failed to set real-time priority for thread: Operation not > permitted" > > Try to search this line with google, you will found plenty of links. > > Gilles Caulier I got rid of that error (adding my user into realtime group and reboot) however the hang did not go away. This is the updated log: digikam.general: Database Info populated for QUrl("file:///path/to/vertical.mov") digikam.general: Found video orientation: 0 digikam.general: Stacked View Mode : 6 corrupted size vs. prev_size
I can confirm the lag under digiKam 7.6.0 with MacOS. The video player try to load and play the MOV file, it take a while and finally after 10s digiKam continue to run. No crash. The MOV file can be played under VLC, but not in Apple QuickTime (the official MacOS video player supporting well MOV, as it's a format from Apple). So, something is wrong in this file, but what ? Gilles
Report from ffmpeg : [gilles@localhost testfiles]$ ffmpeg -i vertical.mov ffmpeg version 4.3.3 Copyright (c) 2000-2021 the FFmpeg developers built with gcc 10 (Mageia 10.3.0-2.mga8) configuration: --prefix=/usr --enable-shared --enable-pic --libdir=/usr/lib64 --shlibdir=/usr/lib64 --incdir=/usr/include --disable-stripping --enable-postproc --enable-gpl --enable-pthreads --enable-libtheora --enable-libvorbis --disable-encoder=vorbis --enable-libvpx --enable-runtime-cpudetect --enable-libaom --enable-libdc1394 --enable-librtmp --enable-libspeex --enable-libfreetype --enable-libgsm --enable-libcelt --enable-libopus --disable-libopencv --enable-libopenjpeg --enable-libvidstab --enable-libtwolame --enable-libxavs --enable-frei0r --enable-libmodplug --enable-libass --enable-gnutls --enable-libcdio --enable-libmfx --enable-libpulse --enable-libv4l2 --enable-avresample --enable-opencl --enable-libmp3lame --enable-sndio --enable-libdav1d --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-version3 --enable-libx264 --enable-libx265 --enable-libvo-amrwbenc --enable-libxvid 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 libavresample 4. 0. 0 / 4. 0. 0 libswscale 5. 7.100 / 5. 7.100 libswresample 3. 7.100 / 3. 7.100 libpostproc 55. 7.100 / 55. 7.100 Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'vertical.mov': Metadata: major_brand : qt minor_version : 0 compatible_brands: qt creation_time : 2021-05-13T15:31:45.000000Z com.apple.quicktime.location.accuracy.horizontal: 12.001812 com.apple.quicktime.make: Apple com.apple.quicktime.model: iPhone 8 com.apple.quicktime.software: 14.4.2 com.apple.quicktime.creationdate: 2021-04-19T12:13:41+0200 com.apple.photos.originating.signature: AUJo9HcbRepHA3yCAn9nzoJQZLO4 Duration: 00:00:03.30, start: 0.000000, bitrate: 2619 kb/s Stream #0:0(und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, mono, fltp, 91 kb/s (default) Metadata: creation_time : 2021-05-13T15:31:45.000000Z handler_name : Core Media Audio Stream #0:1(und): Video: h264 (Main) (avc1 / 0x31637661), yuv420p(tv, smpte170m/smpte170m/bt709), 360x640 [SAR 1:1 DAR 9:16], 2512 kb/s, 30 fps, 30 tbr, 600 tbn, 1200 tbc (default) Metadata: creation_time : 2021-05-13T15:31:45.000000Z handler_name : Core Media Video encoder : H.264 Stream #0:2(und): Data: none (mebx / 0x7862656D), 0 kb/s (default) Metadata: creation_time : 2021-05-13T15:31:45.000000Z handler_name : Core Media Metadata Stream #0:3(und): Data: none (mebx / 0x7862656D), 0 kb/s (default) Metadata: creation_time : 2021-05-13T15:31:45.000000Z handler_name : Core Media Metadata
ffmpeg can play the MOV file using ffplay from command line.
Under Linux, with digiKam 7.6.0, i can preview the MOV file, but at end of preview, digiKam crash : digikam.metaengine: ExifTool "Load Metadata" "-json -G:0:1:2:4:6 -l /home/gilles/Images/bug 435660/testfiles/vertical.mov" digikam.metaengine: Parse metadada with FFMpeg: "/home/gilles/Images/bug 435660/testfiles/vertical.mov" digikam.metaengine: -- FFMpeg audio stream metadata entries : digikam.metaengine: QMap(("creation_time", "2021-05-13T15:31:45.000000Z")("handler_name", "Core Media Audio")("language", "und")) digikam.metaengine: ----------------------------------------- digikam.metaengine: -- FFMpeg video stream metadata entries : digikam.metaengine: QMap(("creation_time", "2021-05-13T15:31:45.000000Z")("encoder", "H.264")("handler_name", "Core Media Video")("language", "und")) digikam.metaengine: ----------------------------------------- digikam.metaengine: -- FFMpeg root container metadata entries : digikam.metaengine: QMap(("com.apple.photos.originating.signature", "AUJo9HcbRepHA3yCAn9nzoJQZLO4")("com.apple.quicktime.creationdate", "2021-04-19T12:13:41+0200")("com.apple.quicktime.location.accuracy.horizontal", "12.001812")("com.apple.quicktime.make", "Apple")("com.apple.quicktime.model", "iPhone 8")("com.apple.quicktime.software", "14.4.2")("compatible_brands", "qt ")("creation_time", "2021-05-13T15:31:45.000000Z")("major_brand", "qt ")("minor_version", "0")) digikam.metaengine: ------------------------------------------ digikam.metaengine: Loading metadata with "FFMpeg" backend from "/home/gilles/Images/bug 435660/testfiles/vertical.mov" digikam.general: Metadata loading with Exiv2 took 17 ms ( true ) digikam.general: "Standard Exif Tags" decoding took 0 ms ( false ) digikam.general: "MakerNote Exif Tags" decoding took 0 ms ( false ) digikam.general: "IPTC Records" decoding took 0 ms ( false ) digikam.general: "XMP Schema" decoding took 0 ms ( false ) digikam.metaengine: ExifToolProcess::readOutput(): ExifTool command completed digikam.metaengine: ExifTool complete command for action "Load Metadata" with elasped time (ms): 228 digikam.metaengine: Json Array size: 1 digikam.metaengine: ExifTool Json map size: 165 digikam.metaengine: ExifTool parsed command for action "Load Metadata" digikam.metaengine: 148 properties decoded digikam.general: Stacked View Mode : 6 digikam.general: Database Info populated for QUrl("file:///home/gilles/Images/bug 435660/testfiles/vertical.mov") [ALSOFT] (WW) Error generated on context 0x4f7abd0, code 0xa001, "Invalid source ID 1" [ALSOFT] (WW) Error generated on context 0x4f7abd0, code 0xa001, "Invalid source ID 1" [ALSOFT] (WW) Error generated on context 0x4f7abd0, code 0xa001, "Invalid source ID 1" [ALSOFT] (WW) Error generated on context 0x4f7abd0, code 0xa001, "Invalid source ID 1" [ALSOFT] (EE) Failed to set real-time priority for thread: Operation not permitted (1) digikam.general: Found video orientation: 0 digikam.metaengine: ExifTool "Load Metadata" "-json -G:0:1:2:4:6 -l /home/gilles/Images/bug 435660/testfiles/vertical.mov" digikam.metaengine: Parse metadada with FFMpeg: "/home/gilles/Images/bug 435660/testfiles/vertical.mov" digikam.metaengine: -- FFMpeg audio stream metadata entries : digikam.metaengine: QMap(("creation_time", "2021-05-13T15:31:45.000000Z")("handler_name", "Core Media Audio")("language", "und")) digikam.metaengine: ----------------------------------------- digikam.metaengine: -- FFMpeg video stream metadata entries : digikam.metaengine: QMap(("creation_time", "2021-05-13T15:31:45.000000Z")("encoder", "H.264")("handler_name", "Core Media Video")("language", "und")) digikam.metaengine: ----------------------------------------- digikam.metaengine: -- FFMpeg root container metadata entries : digikam.metaengine: QMap(("com.apple.photos.originating.signature", "AUJo9HcbRepHA3yCAn9nzoJQZLO4")("com.apple.quicktime.creationdate", "2021-04-19T12:13:41+0200")("com.apple.quicktime.location.accuracy.horizontal", "12.001812")("com.apple.quicktime.make", "Apple")("com.apple.quicktime.model", "iPhone 8")("com.apple.quicktime.software", "14.4.2")("compatible_brands", "qt ")("creation_time", "2021-05-13T15:31:45.000000Z")("major_brand", "qt ")("minor_version", "0")) digikam.metaengine: ------------------------------------------ digikam.metaengine: Loading metadata with "FFMpeg" backend from "/home/gilles/Images/bug 435660/testfiles/vertical.mov" digikam.general: Metadata loading with Exiv2 took 26 ms ( true ) digikam.general: "Standard Exif Tags" decoding took 0 ms ( false ) digikam.general: "MakerNote Exif Tags" decoding took 0 ms ( false ) digikam.general: "IPTC Records" decoding took 0 ms ( false ) digikam.general: "XMP Schema" decoding took 0 ms ( false ) digikam.general: Stacked View Mode : 6 digikam.metaengine: ExifToolProcess::readOutput(): ExifTool command completed digikam.metaengine: ExifTool complete command for action "Load Metadata" with elasped time (ms): 100 digikam.metaengine: Json Array size: 1 digikam.metaengine: ExifTool Json map size: 165 digikam.metaengine: ExifTool parsed command for action "Load Metadata" digikam.metaengine: 148 properties decoded tcache_thread_shutdown(): unaligned tcache chunk detected Aborted (core dumped) [gilles@localhost testfiles]$
The gdb backtrace of the crash : digikam.metaengine: ExifToolProcess::readOutput(): ExifTool command completed digikam.metaengine: ExifTool complete command for action "Load Metadata" with elasped time (ms): 155 digikam.metaengine: Json Array size: 1 digikam.metaengine: ExifTool Json map size: 165 digikam.metaengine: ExifTool parsed command for action "Load Metadata" digikam.metaengine: 148 properties decoded corrupted double-linked list --Type <RET> for more, q to quit, c to continue without paging-- Thread 64 "QtAV::VideoThre" received signal SIGABRT, Aborted. [Switching to Thread 0x7fff2cc3c640 (LWP 17022)] 0x00007ffff3ab5490 in raise () from /lib64/libc.so.6 (gdb) bt #0 0x00007ffff3ab5490 in raise () at /lib64/libc.so.6 #1 0x00007ffff3aa0526 in abort () at /lib64/libc.so.6 #2 0x00007ffff3af47a8 in () at /lib64/libc.so.6 #3 0x00007ffff3afc0fa in () at /lib64/libc.so.6 #4 0x00007ffff3afd23c in unlink_chunk.constprop () at /lib64/libc.so.6 #5 0x00007ffff3afd399 in malloc_consolidate () at /lib64/libc.so.6 #6 0x00007ffff3afec17 in _int_malloc () at /lib64/libc.so.6 #7 0x00007ffff3b006a9 in malloc () at /lib64/libc.so.6 #8 0x00007ffff484f526 in QImageData::create(QSize const&, QImage::Format) () at /lib64/libQt5Gui.so.5 #9 0x00007ffff484f71b in QImage::QImage(QSize const&, QImage::Format) () at /lib64/libQt5Gui.so.5 #10 0x00007ffff484f756 in QImage::QImage(int, int, QImage::Format) () at /lib64/libQt5Gui.so.5 #11 0x00007ffff484ff53 in QImage::copy(QRect const&) const () at /lib64/libQt5Gui.so.5 #12 0x00007ffff4850458 in QImage::detach() () at /lib64/libQt5Gui.so.5 #13 0x00007ffff4852164 in QImage::reinterpretAsFormat(QImage::Format) () at /lib64/libQt5Gui.so.5 #14 0x00007ffff488c43e in QRasterPlatformPixmap::createPixmapForImage(QImage, QFlags<Qt::ImageConversionFlag>) () at /lib64/libQt5Gui.so.5 #15 0x00007ffff488c59a in QRasterPlatformPixmap::fromImage(QImage const&, QFlags<Qt::ImageConversionFlag>) () at /lib64/libQt5Gui.so.5 #16 0x00007ffff48841d3 in QPixmap::fromImage(QImage const&, QFlags<Qt::ImageConversionFlag>) () at /lib64/libQt5Gui.so.5 #17 0x00007fffe686b490 in QtAV::QPainterRenderer::preparePixmap(QtAV::VideoFrame const&) () at /lib64/libQtAV.so.1 #18 0x00007fffe6728643 in non-virtual thunk to QtAV::WidgetRenderer::receiveFrame(QtAV::VideoFrame const&) () at /lib64/libQtAVWidgets.so.1 #19 0x00007fffe6866c53 in QtAV::VideoRenderer::receive(QtAV::VideoFrame const&) () at /lib64/libQtAV.so.1 #20 0x00007fffe686cab6 in QtAV::OutputSet::sendVideoFrame(QtAV::VideoFrame const&) () at /lib64/libQtAV.so.1 #21 0x00007fffe687508f in QtAV::VideoThread::deliverVideoFrame(QtAV::VideoFrame&) () at /lib64/libQtAV.so.1 #22 0x00007fffe6876c74 in QtAV::VideoThread::run() () at /lib64/libQtAV.so.1 #23 0x00007ffff408e961 in QThreadPrivate::start(void*) () at /lib64/libQt5Core.so.5 #24 0x00007ffff3c3cdec in start_thread () at /lib64/libpthread.so.0 #25 0x00007ffff3b6ffbf in clone () at /lib64/libc.so.6 (gdb)
Hum under Linux, the last backtrace appear with QtAV 1.12. If i use digiKam 7.6.0 linux AppImage bundle including QtAv rolling release code (last one from git repository), video is played without crash. So the bug exist in older QtAV version. Loic, which QtAV do you use with digiKam. Look in Help/Components Info dialog for details. Also, please try to run digiKam 7.6.0 pre-release AppImage bundle on your computer to see if crash disappear. File is here : https://files.kde.org/digikam/ Gilles Caulier
Oh, nice. Under MacOS, VLC is frozen after to play the MOV file. I must force to quit from task manager...
Here under openSUSE Tumbleweed still no problems with the MOV file. Neither GStreamer bases player nor VLC or digiKam. Maik
(In reply to caulier.gilles from comment #52) > Hum under Linux, the last backtrace appear with QtAV 1.12. > > If i use digiKam 7.6.0 linux AppImage bundle including QtAv rolling release > code (last one from git repository), video is played without crash. > > So the bug exist in older QtAV version. > > Loic, which QtAV do you use with digiKam. Look in Help/Components Info > dialog for details. In Help/Components I can only get info about KDE Frameworks and Qt version, nothing about QtAv. Version of QtAv installed is 1.13.0. I installed QtAv from git and reinstalled, the hang is still there. Haven't tried AppImage version but this won't actually solve the problem for me (want to use the package coming from repository).
Components Information dialog with qtav + libav versions : https://i.imgur.com/ddzkUuF.png
(In reply to caulier.gilles from comment #56) > Components Information dialog with qtav + libav versions : > > https://i.imgur.com/ddzkUuF.png Thank you, now I finally see it. It says LibQtAv 1.13.0 (with -git version having installed)
QtAV 1.13 is older than 2 years... https://github.com/wang-bin/QtAV/releases/tag/v1.13.0 and it have never been released officially. This is why a prefix -git is appended. The code from current Linux AppImage bundle of digiKam 7.6.0 is compiled with last code from github. Please, just to validate that it work for you, download the AppImage bundle, make it executable, and start it to look if problem remain on your computer. Here i cannot reproduce. https://files.kde.org/digikam/ If it work for you, well your native package must be compiled with last QtAV code from github. It's a DOWNSTREAM bug to report to your Linux distro team. Gilles Caulier
(In reply to caulier.gilles from comment #58) > If it work for you, well your native package must be compiled with last QtAV > code from github. It's a DOWNSTREAM bug to report to your Linux distro team. > > Gilles Caulier As mentioned previously I did install Qt-Av from github and recompiled digikam to make sure it will use it. ❯ pacman -Q qtav-git qtav-git v1.13.0.r65.g3b937991-1 "3b937991" matches the latest commit on https://github.com/wang-bin/QtAV. Also /usr/bin/Player binary which came with the package shows the date and time of the compilation. Anyway when I try to open said file in the Player application I get the same behaviour as in digikam. @Loic could you perhaps try the same? I could try to file a report at https://github.com/wang-bin/QtAV/issues but seeing 500+ issues there I am a bit skeptical. Perhaps it's worth checking the patches Tumbleweed is applying and/or the version of ffmpeg it is linking with. Anyway this is not a digikam issue, really so perhaps we can close it.
I don't see any problems with the MOV file on Windows either. Just as a question in the room, could it also be that ffmpeg uses hardware acceleration on some computers and that's why there are problems? ffmpeg -hide_banner -hwaccels Maik
To Jozef, No it's not a digiKam issue. perhaps a QtAv or more probably a ffmpeg issue due to hardware acceleration. Yes a report must be done to QtAV, with the sample mov and the QtAV player trace in GDB. Gilles Caulier
Jozef, On QtAv, only 35 files still open as Bugs. The rest are wishes or enhancements. GilleS Caulier
Update: Don't know what happened exactly but currently QtAv's Player plays the file without issues. Digikam sometimes shows a few frames of the video file, sometimes it is even play the full video but then it becomes unresponsive (when this happens I get the following text on the console: tcache_thread_shutdown(): unaligned tcache chunk detected). But most of the time it hangs right from the start. I was able reproduce the same behaviour on my laptop (Elitebook 840 G1) with Intel GPU (driver used is i915) which likely rules out a relationship to hardware acceleration (don't think the GPU uses any). Also once I also experienced a crash (not just hang).
Git commit 5aae9b7c21ab662d63b49f165163984809c1d585 by Gilles Caulier. Committed on 12/05/2022 at 11:10. Pushed by cgilles into branch 'master'. Move AVPlayer config widgets to core/QtAV to allow to re-use these settings view in a new Video section from digiKam Setup dialog. the goal is to be able to configure the video decoder, the audio backend, and the video renderer with video preview framework, to prevent dysfunctions while playing audio and video media if wrong decoder/backend/renderer is selected by default. Currently none of these settings is possible in digiKam and playing video and audio always depends of default settings done in QtAV framework which can be badly configured for the available hardwares and modules in client computer. TODO: add the new video config pannel in digiKam Setup dialog to configure decoder/backend/renderer. Related: bug 382582, bug 445422, bug 426951, bug 430873, bug 437328, bug 388475, bug 440668, bug 415778, bug 442802, bug 423580 M +2 -14 core/avplayer/CMakeLists.txt M +3 -6 core/avplayer/main/MainWindow.cpp M +7 -7 core/avplayer/main/MainWindow.h R +2 -0 core/avplayer/utils/ConfigDialog.cpp [from: core/avplayer/config/ConfigDialog.cpp - 099% similarity] R +8 -5 core/avplayer/utils/ConfigDialog.h [from: core/avplayer/config/ConfigDialog.h - 090% similarity] M +2 -0 core/avplayer/utils/common.cpp M +12 -0 core/libs/video/qtav/CMakeLists.txt R +2 -2 core/libs/video/qtav/widgets/config/AVFilterConfigPage.cpp [from: core/avplayer/config/AVFilterConfigPage.cpp - 098% similarity] R +7 -6 core/libs/video/qtav/widgets/config/AVFilterConfigPage.h [from: core/avplayer/config/AVFilterConfigPage.h - 086% similarity] R +2 -2 core/libs/video/qtav/widgets/config/AVFormatConfigPage.cpp [from: core/avplayer/config/AVFormatConfigPage.cpp - 098% similarity] R +7 -6 core/libs/video/qtav/widgets/config/AVFormatConfigPage.h [from: core/avplayer/config/AVFormatConfigPage.h - 084% similarity] R +2 -2 core/libs/video/qtav/widgets/config/AVPlayerConfigMngr.cpp [from: core/avplayer/config/AVPlayerConfigMngr.cpp - 099% similarity] R +10 -6 core/libs/video/qtav/widgets/config/AVPlayerConfigMngr.h [from: core/avplayer/config/AVPlayerConfigMngr.h - 098% similarity] R +2 -2 core/libs/video/qtav/widgets/config/CaptureConfigPage.cpp [from: core/avplayer/config/CaptureConfigPage.cpp - 099% similarity] R +7 -6 core/libs/video/qtav/widgets/config/CaptureConfigPage.h [from: core/avplayer/config/CaptureConfigPage.h - 086% similarity] R +2 -2 core/libs/video/qtav/widgets/config/ClickableMenu.cpp [from: core/avplayer/utils/ClickableMenu.cpp - 097% similarity] R +10 -6 core/libs/video/qtav/widgets/config/ClickableMenu.h [from: core/avplayer/utils/ClickableMenu.h - 082% similarity] R +2 -2 core/libs/video/qtav/widgets/config/ConfigPageBase.cpp [from: core/avplayer/config/ConfigPageBase.cpp - 097% similarity] R +10 -6 core/libs/video/qtav/widgets/config/ConfigPageBase.h [from: core/avplayer/config/ConfigPageBase.h - 087% similarity] R +34 -37 core/libs/video/qtav/widgets/config/DecoderConfigPage.cpp [from: core/avplayer/config/DecoderConfigPage.cpp - 098% similarity] R +11 -6 core/libs/video/qtav/widgets/config/DecoderConfigPage.h [from: core/avplayer/config/DecoderConfigPage.h - 082% similarity] R +2 -2 core/libs/video/qtav/widgets/config/MiscPage.cpp [from: core/avplayer/config/MiscPage.cpp - 099% similarity] R +10 -6 core/libs/video/qtav/widgets/config/MiscPage.h [from: core/avplayer/config/MiscPage.h - 086% similarity] R +2 -2 core/libs/video/qtav/widgets/config/PropertyEditor.cpp [from: core/avplayer/config/PropertyEditor.cpp - 099% similarity] R +10 -6 core/libs/video/qtav/widgets/config/PropertyEditor.h [from: core/avplayer/config/PropertyEditor.h - 093% similarity] R +2 -2 core/libs/video/qtav/widgets/config/ShaderPage.cpp [from: core/avplayer/config/ShaderPage.cpp - 098% similarity] R +7 -6 core/libs/video/qtav/widgets/config/ShaderPage.h [from: core/avplayer/config/ShaderPage.h - 085% similarity] R +2 -2 core/libs/video/qtav/widgets/config/Slider.cpp [from: core/avplayer/utils/Slider.cpp - 099% similarity] R +10 -6 core/libs/video/qtav/widgets/config/Slider.h [from: core/avplayer/utils/Slider.h - 088% similarity] R +2 -2 core/libs/video/qtav/widgets/config/VideoEQConfigPage.cpp [from: core/avplayer/config/VideoEQConfigPage.cpp - 099% similarity] R +10 -6 core/libs/video/qtav/widgets/config/VideoEQConfigPage.h [from: core/avplayer/config/VideoEQConfigPage.h - 088% similarity] https://invent.kde.org/graphics/digikam/commit/5aae9b7c21ab662d63b49f165163984809c1d585
Git commit 505bc17cd39702e14446c15d79d44d14d80fe005 by Gilles Caulier. Committed on 12/05/2022 at 13:56. Pushed by cgilles into branch 'master'. Add Setup Video page from digiKam configuration dialog. This allow to setup few options for media player as the decoder priority to use. Related: bug 382582, bug 445422, bug 426951, bug 430873, bug 437328, bug 388475, bug 440668, bug 415778, bug 442802, bug 423580 M +24 -12 core/libs/video/player/mediaplayerview.cpp M +1 -0 core/libs/video/player/mediaplayerview.h M +22 -10 core/libs/video/player/slidevideo.cpp M +4 -0 core/libs/video/player/slidevideo.h M +2 -2 core/libs/video/qtav/widgets/config/AVPlayerConfigMngr.cpp M +1 -1 core/libs/video/qtav/widgets/config/DecoderConfigPage.cpp M +1 -0 core/utilities/setup/CMakeLists.txt M +29 -0 core/utilities/setup/setup.cpp M +2 -0 core/utilities/setup/setup.h M +1 -1 core/utilities/setup/setuptemplate.cpp A +69 -0 core/utilities/setup/setupvideo.h [License: GPL (v2+)] https://invent.kde.org/graphics/digikam/commit/505bc17cd39702e14446c15d79d44d14d80fe005
Git commit 0e2bc2695efc7d6d0d2ec52731c3f69095554b7f by Gilles Caulier. Committed on 12/05/2022 at 15:24. Pushed by cgilles into branch 'master'. Hide advanced settings for each decoder as nothing is saved and restored between the sessions. Only the list of decoder and the priority is saved Related: bug 382582, bug 445422, bug 426951, bug 430873, bug 437328, bug 388475, bug 440668, bug 415778, bug 442802, bug 423580 M +6 -4 core/libs/video/qtav/widgets/config/DecoderConfigPage.cpp M +1 -1 core/libs/video/qtav/widgets/config/DecoderConfigPage.h M +1 -1 core/utilities/setup/setupvideo.cpp https://invent.kde.org/graphics/digikam/commit/0e2bc2695efc7d6d0d2ec52731c3f69095554b7f
@Loic, digiKam 8.0.0 is out. Problem still reproducible ? Best regards Gilles Caulier
@Loic, We needs a fresh feedback about this file. Thanks in advance Gilles Caulier
@Loic, What's about this file using current 8.2.0 AppImage Linux bundle ? It's reproducible ? https://files.kde.org/digikam/ Thanks in advance Gilles Caulier
Git commit 79ac8d6e9cb90c8d9b456405051ec0937f8485fe by Gilles Caulier. Committed on 26/01/2024 at 13:44. Pushed by cgilles into branch 'master'. Preview and Slideshow of video is now rendered with Qt6::Multimedia and Qt5::QtAVPlayer. Older and unmaintained QtAV framework code used in digiKam core is fully removed. Both Qt6::Multimedia and Qt5::QtAVPlayer are based and compatible to FFMpeg API 5 and later. Related: bug 468572, bug 382582, bug 471199, bug 478314, bug 445422, bug 448681, bug 477031, bug 478613 FIXED-IN: 8.3.0 M +12 -9 NEWS https://invent.kde.org/graphics/digikam/-/commit/79ac8d6e9cb90c8d9b456405051ec0937f8485fe