shotcut icon indicating copy to clipboard operation
shotcut copied to clipboard

Pressing and holding Enter-key in playlist on a single mp4 test video seems to generate memory leak

Open hkskoglund opened this issue 5 years ago • 4 comments

I've tested holding the Enter key (for at least 30-60 seconds) on a single file in the playlist. It seems like its leaking some memory (RES is now on 3,1g). Maybe this can lead to problems when navigating the playlist during editing.

Shotcut-version : 18.11.18.02 (disabled GPU effects) Fedora: 29

top -p $(pgrep shotcut)

`Threads:  33 total,   0 running,  33 sleeping,   0 stopped,   0 zombie
%Cpu(s):  4,4 us,  1,9 sy,  0,0 ni, 91,9 id,  1,3 wa,  0,4 hi,  0,2 si,  0,0 st
GiB Mem :      5,7 total,      0,5 free,      4,2 used,      1,1 buff/cache
GiB Swap:      5,6 total,      2,7 free,      2,9 used.      0,6 avail Mem 

USER      PR  NI    VIRT    RES    SHR S  %CPU  %MEM     TIME+ P  PPID nTH   PID COMMAND                            
henning    5 -15 6565,7m   3,1g  43,5m S   0,8  53,6   0:06.52 2  5908  33 28652 SDLAudioP2                         
henning   20   0 6565,7m   3,1g  43,5m S   0,0  53,6   5:12.28 1  5908  33 28545 shotcut                            
henning   20   0 6565,7m   3,1g  43,5m S   0,0  53,6   0:00.00 3  5908  33 28546 shotcut                            
henning   20   0 6565,7m   3,1g  43,5m S   0,0  53,6   0:01.48 2  5908  33 28547 QXcbEventReader                    
henning   20   0 6565,7m   3,1g  43,5m S   0,0  53,6   0:00.00 0  5908  33 28552 gmain                              
henning   20   0 6565,7m   3,1g  43,5m S   0,0  53,6   0:00.00 0  5908  33 28554 gdbus                              
henning   20   0 6565,7m   3,1g  43,5m S   0,0  53,6   0:00.00 2  5908  33 28555 dconf worker                       
henning   20   0 6565,7m   3,1g  43,5m S   0,0  53,6   0:00.05 1  5908  33 28556 QDBusConnection                    
henning   20   0 6565,7m   3,1g  43,5m S   0,0  53,6   0:00.00 2  5908  33 28558 shotcut:disk$0                     
henning   20   0 6565,7m   3,1g  43,5m S   0,0  53,6   0:00.09 3  5908  33 28559 Qt bearer threa                    
henning   20   0 6565,7m   3,1g  43,5m S   0,0  53,6   0:00.04 3  5908  33 28560 Database                           
henning   20   0 6565,7m   3,1g  43,5m S   0,0  53,6   0:00.08 3  5908  33 28561 QQmlThread                         
henning   20   0 6565,7m   3,1g  43,5m S   0,0  53,6   0:00.00 3  5908  33 28562 shotcut                            
henning   20   0 6565,7m   3,1g  43,5m S   0,0  53,6   0:00.00 3  5908  33 28565 QNetworkAccessM                    
henning   20   0 6565,7m   3,1g  43,5m S   0,0  53,6   0:02.30 1  5908  33 28640 FrameRenderer                      
henning   39  19 6565,7m   3,1g  43,5m S   0,0  53,6   0:00.00 0  5908  33 28641 PulseHotplug                       
henning   20   0 6565,7m   3,1g  43,5m S   0,0  53,6   0:00.89 0  5908  33 28642 shotcut                            
henning   20   0 6565,7m   3,1g  43,5m S   0,0  53,6   1:03.04 2  5908  33 28643 Mlt::RenderThre                    
henning   20   0 6565,7m   3,1g  43,5m S   0,0  53,6   0:10.64 2  5908  33 28644 Mlt::RenderThre                    
henning   20   0 6565,7m   3,1g  43,5m S   0,0  53,6   0:10.51 0  5908  33 28645 Mlt::RenderThre                    
henning   20   0 6565,7m   3,1g  43,5m S   0,0  53,6   0:10.84 1  5908  33 28646 Mlt::RenderThre                    
henning   20   0 6565,7m   3,1g  43,5m S   0,0  53,6   0:10.44 1  5908  33 28647 Mlt::RenderThre                    
henning   20   0 6565,7m   3,1g  43,5m S   0,0  53,6   0:00.22 0  5908  33 28654 shotcut                            
henning   20   0 6565,7m   3,1g  43,5m S   0,0  53,6   0:00.04 0  5908  33 25939 shotcut                            
henning   20   0 6565,7m   3,1g  43,5m S   0,0  53,6   0:00.06 2  5908  33 25940 shotcut                            
henning   20   0 6565,7m   3,1g  43,5m S   0,0  53,6   0:00.02 0  5908  33 25941 shotcut                            
henning   20   0 6565,7m   3,1g  43,5m S   0,0  53,6   0:00.02 0  5908  33 25942 shotcut                            
henning   20   0 6565,7m   3,1g  43,5m S   0,0  53,6   0:00.02 0  5908  33 25943 shotcut                            
henning   20   0 6565,7m   3,1g  43,5m S   0,0  53,6   0:00.04 2  5908  33 25944 Mlt::RenderThre                    
henning   20   0 6565,7m   3,1g  43,5m S   0,0  53,6   0:00.05 3  5908  33 25945 Mlt::RenderThre                    
henning   20   0 6565,7m   3,1g  43,5m S   0,0  53,6   0:00.04 3  5908  33 25946 Mlt::RenderThre                    
henning   20   0 6565,7m   3,1g  43,5m S   0,0  53,6   0:00.01 3  5908  33 25947 Mlt::RenderThre                    
henning   20   0 6565,7m   3,1g  43,5m S   0,0  53,6   0:00.02 3  5908  33 25948 Mlt::RenderThre     `

`
henning@satellite Shotcut]$ tail ~/.local/share/Meltytech/Shotcut/shotcut-log.txt 
[Debug  ] <MLT> [producer avformat-novalidate] "/home/henning/Nedlastinger/test.mp4" checking VFR: pkt.duration 512
[Debug  ] <MLT> [producer avformat-novalidate] "/home/henning/Nedlastinger/test.mp4" checking VFR: pkt.duration 512
[Debug  ] <MLT> [producer avformat-novalidate] "/home/henning/Nedlastinger/test.mp4" checking VFR: pkt.duration 512
[Debug  ] <MLT> [producer avformat-novalidate] "/home/henning/Nedlastinger/test.mp4" checking VFR: pkt.duration 512
[Debug  ] <MLT> [producer avformat-novalidate] "/home/henning/Nedlastinger/test.mp4" checking VFR: pkt.duration 512
[Debug  ] <MLT> [producer avformat-novalidate] "/home/henning/Nedlastinger/test.mp4" checking VFR: pkt.duration 512
[Debug  ] <MLT> [producer avformat-novalidate] "/home/henning/Nedlastinger/test.mp4" checking VFR: pkt.duration 512
[Debug  ] <MLT> [producer avformat-novalidate] "/home/henning/Nedlastinger/test.mp4" checking VFR: pkt.duration 512
[Debug  ] <MLT> [producer avformat-novalidate] "/home/henning/Nedlastinger/test.mp4" checking VFR: pkt.duration 512
[Debug  ] <MLT> [producer avformat-novalidate] "/home/henning/Nedlastinger/test.mp4" checking VFR: pkt.duration 512
`
[henning@satellite ~]$ lsof -p $(pgrep shotcut) | tail
shotcut 28545 henning  112r      REG              253,2   1471917 1967667 /home/henning/Nedlastinger/test.mp4
shotcut 28545 henning  113r      REG              253,2   1471917 1967667 /home/henning/Nedlastinger/test.mp4
shotcut 28545 henning  114r      REG              253,2   1471917 1967667 /home/henning/Nedlastinger/test.mp4
shotcut 28545 henning  115r      REG              253,2   1471917 1967667 /home/henning/Nedlastinger/test.mp4
shotcut 28545 henning  116r      REG              253,2   1471917 1967667 /home/henning/Nedlastinger/test.mp4
shotcut 28545 henning  117r      REG              253,2   1471917 1967667 /home/henning/Nedlastinger/test.mp4
shotcut 28545 henning  118r      REG              253,2   1471917 1967667 /home/henning/Nedlastinger/test.mp4
shotcut 28545 henning  119r      REG              253,2   1471917 1967667 /home/henning/Nedlastinger/test.mp4
shotcut 28545 henning  263r      REG              253,2   1471917 1967667 /home/henning/Nedlastinger/test.mp4
shotcut 28545 henning  264r      REG              253,2   1471917 1967667 /home/henning/Nedlastinger/test.mp4

hkskoglund avatar Nov 28 '18 16:11 hkskoglund

Shotcut-version : 18.11.18.02 (disabled GPU effects) Fedora: 29

This is not a build created and supported by us. I do not know the version of MLT used in this, and that might be a factor as I did not reproduce this on macOS. I will try on Linux next using one of our builds.

ddennedy avatar Nov 28 '18 19:11 ddennedy

I only experienced something extremely minor on Linux using my build with MLT 6.12.0, RES: 271366 -> 310308 when holding Enter for 2 minutes.

ddennedy avatar Nov 28 '18 20:11 ddennedy

I've also tested with flatpak build now. Current top info: RES 2,5g and VIRT 7739,2m

Tracing memory access when pressing Enter on test-file in playlist:

I see mmap of 8392704 bytes at 0x7f7026fe0000 and then later madvise DONTNEED of 8368128 bytes. I cannot see any release of the mmap for 0x7f7027fe2000 memory.

5 shotcut cloned threads (25784-25788) and 1 'Thread (pooled)' 25789

`[pid  4413] munmap(0x7f7027fe2000, 8392704) = 0
strace: Process 25784 attached
strace: Process 25785 attached
strace: Process 25786 attached
strace: Process 25787 attached
[pid  4413] mmap(NULL, 8392704, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_STACK, -1, 0) = 0x7f7027fe2000
[pid  4413] mprotect(0x7f7027fe2000, 4096, PROT_NONE) = 0
strace: Process 25788 attached
[pid  4413] mmap(NULL, 8392704, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_STACK, -1, 0) = 0x7f7026fe0000
[pid  4413] mprotect(0x7f7026fe0000, 4096, PROT_NONE) = 0
strace: Process 25789 attached
[pid  4413] munmap(0x7f704c092000, 16384) = 0
[pid  4413] munmap(0x7f703a827000, 12288) = 0
[pid  4413] munmap(0x7f7044008000, 16384) = 0
[pid  4413] munmap(0x7f704c092000, 16384) = 0
[pid 25789] madvise(0x7f7026fe0000, 8368128, MADV_DONTNEED) = 0
[pid 25789] +++ exited with 0 +++
[pid  4413] munmap(0x7f7054001000, 16384) = 0
`

Tracing file access: It seems like duplicate stats are run, two open calls for mp4 file ?

strace -e trace=file -f -p $(pgrep shotcut)

`[pid  4413] getcwd("/home/henning", 4096) = 14
[pid 24013] +++ exited with 0 +++
[pid 24014] +++ exited with 0 +++
[pid 24015] +++ exited with 0 +++
[pid 24016] +++ exited with 0 +++
[pid 24017] +++ exited with 0 +++
[pid  4413] open("/home/henning/Nedlastinger/test.mp4", O_RDONLY) = 26
[pid  4413] open("/home/henning/Nedlastinger/test.mp4", O_RDONLY) = 35
[pid  4413] open("/sys/devices/system/cpu/online", O_RDONLY|O_CLOEXEC) = 26
strace: Process 24060 attached
strace: Process 24061 attached
strace: Process 24062 attached
strace: Process 24063 attached
strace: Process 24064 attached
[pid 24018] stat("/etc/localtime", {st_mode=S_IFREG|0644, st_size=2251, ...}) = 0
[pid 24018] stat("/etc/localtime", {st_mode=S_IFREG|0644, st_size=2251, ...}) = 0
[pid 24018] stat("/etc/localtime", {st_mode=S_IFREG|0644, st_size=2251, ...}) = 0
[pid  4413] stat("/home/henning/.var/app/org.shotcut.Shotcut/data/Meltytech/Shotcut", {st_mode=S_IFDIR|0775, st_size=4096, ...}) = 0
[pid  4413] stat(":/icons/oxygen/32x32/actions/player-volume.png", 0x7ffea1309300) = -1 ENOENT (No such file or directory)
[pid  4413] stat("/home/henning/.var/app/org.shotcut.Shotcut/data/mime", 0x7ffea1308f60) = -1 ENOENT (No such file or directory)
[pid  4413] stat("/app/share/mime", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
[pid  4413] stat("/usr/share/mime", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
[pid  4413] stat("/usr/share/runtime/share/mime", 0x7ffea1308f60) = -1 ENOENT (No such file or directory)
[pid  4413] stat("/run/host/share/mime", 0x7ffea1308f60) = -1 ENOENT (No such file or directory)
[pid  4413] access("/app/share/mime/packages/freedesktop.org.xml", F_OK) = -1 ENOENT (No such file or directory)
[pid  4413] access("/usr/share/mime/packages/freedesktop.org.xml", F_OK) = 0
[pid  4413] open("/app/share/mime/packages", O_RDONLY|O_NONBLOCK|O_CLOEXEC|O_DIRECTORY) = 26
[pid  4413] stat("/usr/share/mime/mime.cache", {st_mode=S_IFREG|0644, st_size=133224, ...}) = 0
[pid  4413] stat("/home/henning/.var/app/org.shotcut.Shotcut/data/mime/image/png.xml", 0x7ffea1308ff0) = -1 ENOENT (No such file or directory)
[pid  4413] stat("/app/share/mime/image/png.xml", 0x7ffea1308ff0) = -1 ENOENT (No such file or directory)
[pid  4413] stat("/usr/share/mime/image/png.xml", {st_mode=S_IFREG|0644, st_size=2683, ...}) = 0
[pid  4413] stat("/usr/share/runtime/share/mime/image/png.xml", 0x7ffea1308ff0) = -1 ENOENT (No such file or directory)
[pid  4413] stat("/run/host/share/mime/image/png.xml", 0x7ffea1308ff0) = -1 ENOENT (No such file or directory)
[pid  4413] open("/usr/share/mime/image/png.xml", O_RDONLY|O_CLOEXEC) = 26
[pid  4413] stat(":/icons/oxygen/32x32/status/audio-volume-muted.png", 0x7ffea1309300) = -1 ENOENT (No such file or directory)
[pid  4413] stat("/home/henning/.var/app/org.shotcut.Shotcut/data/mime/image/png.xml", 0x7ffea1308ff0) = -1 ENOENT (No such file or directory)
[pid  4413] stat("/app/share/mime/image/png.xml", 0x7ffea1308ff0) = -1 ENOENT (No such file or directory)
[pid  4413] stat("/usr/share/mime/image/png.xml", {st_mode=S_IFREG|0644, st_size=2683, ...}) = 0
[pid  4413] stat("/usr/share/runtime/share/mime/image/png.xml", 0x7ffea1308ff0) = -1 ENOENT (No such file or directory)
[pid  4413] stat("/run/host/share/mime/image/png.xml", 0x7ffea1308ff0) = -1 ENOENT (No such file or directory)
[pid  4413] open("/usr/share/mime/image/png.xml", O_RDONLY|O_CLOEXEC) = 26
[pid  4413] access("/home/henning/.var/app/org.shotcut.Shotcut/config/Meltytech/Shotcut.conf", F_OK) = 0
[pid  4413] open("/home/henning/.var/app/org.shotcut.Shotcut/config/Meltytech/Shotcut.conf", O_RDWR|O_CREAT|O_CLOEXEC, 0666) = 26
[pid  4413] open("/home/henning/.var/app/org.shotcut.Shotcut/config/Meltytech/Shotcut.conf.lock", O_RDWR|O_CREAT|O_EXCL|O_CLOEXEC, 0666) = 26
[pid  4413] open("/proc/sys/kernel/random/boot_id", O_RDONLY|O_CLOEXEC) = 37
[pid  4413] open("/var/lib/dbus/machine-id", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
[pid  4413] open("/usr/local/var/lib/dbus/machine-id", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
[pid  4413] readlink("/proc/2/exe", "/app/bin/shotcut", 256) = 16
[pid  4413] access("/home/henning/.var/app/org.shotcut.Shotcut/config/Meltytech/Shotcut.conf", F_OK) = 0
[pid  4413] stat("/home/henning/.var/app/org.shotcut.Shotcut/config/Meltytech/Shotcut.conf", {st_mode=S_IFREG|0664, st_size=5523, ...}) = 0
[pid  4413] stat("/etc/localtime", {st_mode=S_IFREG|0644, st_size=2251, ...}) = 0
[pid  4413] stat("/etc/localtime", {st_mode=S_IFREG|0644, st_size=2251, ...}) = 0
[pid  4413] stat("/etc/localtime", {st_mode=S_IFREG|0644, st_size=2251, ...}) = 0
[pid  4413] access("/home/henning/.var/app/org.shotcut.Shotcut/config/Meltytech/Shotcut.conf", F_OK) = 0
[pid  4413] access("/home/henning/.var/app/org.shotcut.Shotcut/config/Meltytech/Shotcut.conf", W_OK) = 0
[pid  4413] stat("/home/henning/.var/app/org.shotcut.Shotcut/config/Meltytech/Shotcut.conf", {st_mode=S_IFREG|0664, st_size=5523, ...}) = 0
[pid  4413] lstat("/home/henning/.var/app/org.shotcut.Shotcut/config/Meltytech/Shotcut.conf", {st_mode=S_IFREG|0664, st_size=5523, ...}) = 0
[pid  4413] open("/home/henning/.var/app/org.shotcut.Shotcut/config/Meltytech", O_RDWR|O_CLOEXEC|O_TMPFILE, 0600) = 37
[pid  4413] stat("/home/henning/.var/app/org.shotcut.Shotcut/config/Meltytech/Shotcut.conf", {st_mode=S_IFREG|0664, st_size=5523, ...}) = 0
[pid  4413] access("/home/henning/.var/app/org.shotcut.Shotcut/config/Meltytech/Shotcut.conf", R_OK) = 0
[pid  4413] access("/home/henning/.var/app/org.shotcut.Shotcut/config/Meltytech/Shotcut.conf", W_OK) = 0
[pid  4413] access("/home/henning/.var/app/org.shotcut.Shotcut/config/Meltytech/Shotcut.conf", X_OK) = -1 EACCES (Permission denied)
[pid  4413] linkat(AT_FDCWD, "/proc/self/fd/37", AT_FDCWD, "/home/henning/.var/app/org.shotcut.Shotcut/config/Meltytech/Shotcut.conf", AT_SYMLINK_FOLLOW) = -1 EEXIST (File exists)
[pid  4413] linkat(AT_FDCWD, "/proc/self/fd/37", AT_FDCWD, "/home/henning/.var/app/org.shotcut.Shotcut/config/Meltytech/Shotcut.conf.bknWSq", AT_SYMLINK_FOLLOW) = 0
[pid  4413] rename("/home/henning/.var/app/org.shotcut.Shotcut/config/Meltytech/Shotcut.conf.bknWSq", "/home/henning/.var/app/org.shotcut.Shotcut/config/Meltytech/Shotcut.conf") = 0
[pid  4413] stat("/home/henning/.var/app/org.shotcut.Shotcut/config/Meltytech/Shotcut.conf", {st_mode=S_IFREG|0664, st_size=5523, ...}) = 0
[pid  4413] stat("/etc/localtime", {st_mode=S_IFREG|0644, st_size=2251, ...}) = 0
[pid  4413] stat("/etc/localtime", {st_mode=S_IFREG|0644, st_size=2251, ...}) = 0
[pid  4413] stat("/etc/localtime", {st_mode=S_IFREG|0644, st_size=2251, ...}) = 0
[pid  4413] unlink("/home/henning/.var/app/org.shotcut.Shotcut/config/Meltytech/Shotcut.conf.lock") = 0
[pid  4413] access("/home/henning/.var/app/org.shotcut.Shotcut/config/Meltytech.conf", F_OK) = -1 ENOENT (No such file or directory)
[pid  4413] stat("/home/henning/.var/app/org.shotcut.Shotcut/config/Meltytech.conf", 0x7ffea1309f90) = -1 ENOENT (No such file or directory)
[pid  4413] stat("/home/henning/.var/app/org.shotcut.Shotcut/config/Meltytech.conf", 0x7ffea1309f50) = -1 ENOENT (No such file or directory)
[pid  4413] access("/app/etc/xdg/Meltytech/Shotcut.conf", F_OK) = -1 ENOENT (No such file or directory)
[pid  4413] stat("/app/etc/xdg/Meltytech/Shotcut.conf", 0x7ffea1309f90) = -1 ENOENT (No such file or directory)
[pid  4413] stat("/app/etc/xdg/Meltytech/Shotcut.conf", 0x7ffea1309f50) = -1 ENOENT (No such file or directory)
[pid  4413] access("/etc/xdg/Meltytech/Shotcut.conf", F_OK) = -1 ENOENT (No such file or directory)
[pid  4413] stat("/etc/xdg/Meltytech/Shotcut.conf", 0x7ffea1309f90) = -1 ENOENT (No such file or directory)
[pid  4413] stat("/etc/xdg/Meltytech/Shotcut.conf", 0x7ffea1309f50) = -1 ENOENT (No such file or directory)
[pid  4413] access("/app/etc/xdg/Meltytech.conf", F_OK) = -1 ENOENT (No such file or directory)
[pid  4413] stat("/app/etc/xdg/Meltytech.conf", 0x7ffea1309f90) = -1 ENOENT (No such file or directory)
[pid  4413] stat("/app/etc/xdg/Meltytech.conf", 0x7ffea1309f50) = -1 ENOENT (No such file or directory)
[pid  4413] access("/etc/xdg/Meltytech.conf", F_OK) = -1 ENOENT (No such file or directory)
[pid  4413] stat("/etc/xdg/Meltytech.conf", 0x7ffea1309f90) = -1 ENOENT (No such file or directory)
[pid  4413] stat("/etc/xdg/Meltytech.conf", 0x7ffea1309f50) = -1 ENOENT (No such file or directory)
[pid  4413] stat("/app", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
[pid  4413] stat("/app/share", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
[pid  4413] stat("/app/share/shotcut", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
[pid  4413] stat("/app/share/shotcut/qml", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
[pid  4413] stat("/app/share/shotcut/qml/modules", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
[pid  4413] stat("/app/share/shotcut/qml/modules/Shotcut", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
[pid  4413] stat("/app/share/shotcut/qml/modules/Shotcut/Controls", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
[pid  4413] stat("/app", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
[pid  4413] stat("/app/share", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
[pid  4413] stat("/app/share/shotcut", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
[pid  4413] stat("/app/share/shotcut/qml", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
[pid  4413] stat("/app/share/shotcut/qml/modules", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
[pid  4413] stat("/app/share/shotcut/qml/modules/Shotcut", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
[pid  4413] stat("/app/share/shotcut/qml/modules/Shotcut/Controls", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
[pid  4413] stat("/app", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
[pid  4413] stat("/app/share", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
[pid  4413] stat("/app/share/shotcut", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
[pid  4413] stat("/app/share/shotcut/qml", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
[pid  4413] stat("/app/share/shotcut/qml/modules", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
[pid  4413] stat("/app/share/shotcut/qml/modules/Shotcut", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
[pid  4413] stat("/app/share/shotcut/qml/modules/Shotcut/Controls", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
[pid 24018] +++ exited with 0 +++

`

hkskoglund avatar Nov 29 '18 08:11 hkskoglund

The flatpak uses the MLT git master from the date of the build. So, the big difference between what you are testing and myself is Qt version. The v18.11.18 flatpak (and probably also your Fedora package) of Shotcut uses Qt 5.11 while mine and the other builds (portable and appimage) are using Qt 5.6.

It seems like duplicate stats are run, two open calls for mp4 file ?

Yes, each audio/video file is opened twice with libavformat in order to maintain a/v synchronization while seeking. Ideally, it should not be needed, but that is the way it is with no plans to change it.

ddennedy avatar Nov 30 '18 05:11 ddennedy