UI/UX Suggestions (or please tell me how to improve usability)

Hello!

First of all, I am really impressed about the features and power of Cinelerra GG, and this got me wondering why I didnt hear (or see) about it before… I do recognize that maintaining such a project should require a lot of work and dedication, so my intention here isnt simply point to problems but try to bring some ideas and suggestions. I have been using the program for a couple of days, downloaded and read (parts) of the manual (a great work, by the way!), and I was able to configure the program to my needs mostly, but I am still struggling with some points. So if I missed something, pointing to the right direction will be greatly appreciated, of course.

Some background: I am running the latest single-user build for Eoan on Pop!_OS 19.10, the computer is a 2-in1 convertible with an Atom x5 processor and 4GB of RAM. From all programs that I have used so far, Cinelerra GG is by far the slowest regarding user interface, even though I was able to configure its settings and get an almost flawless video playback (I am editing some cached drone videos at 720p and 30fps). It is so slow that if I try to scroll the timeline up and down the whole program freezes for many seconds. Hopefully these are bugs, probably because if the program is used with a larger screen then there is no need to scroll the tracks up and down…

  1. UI/UX: my screen is kinda small (1280x800) so the many windows with all those title bars use a lot of space. I think that using an unified view (single window) would help a lot, and it would move the application menu to the top too, where most people are used to. Then certainly a full screen mode would be possible as well, saving even more space for the program.

  2. Doing anything in the timeline is very sluggish, even after disabling Draw media. I really have no idea why, I just hope it might be some configuration while building with Qt since everything else seems normal.

  3. Maybe adding an option to show only the first and last frame of clips, or even just the first one, in the timeline would help with performance/memory usage, since completely removing the thumbnails when disabling Draw media makes editing much harder (I know it is possible to add names to clips, but it requires much more time for editing and its far less convenient that seeing the actual thumbnail for that clip).

  4. Please add some way to edit the keyframes more easily, either by adding a dedicated screen for them or simply by adding some buttons/shortcuts for navigating them. There are so many powerful tools in Cinelerra GG, but working with keyframes is very frustrating, there is no way to fine-tune their position and/or value.

  5. I didnt find a snapping toggle anywhere… I dont know if it is because doing anything in the timeline is so slow with me, but it is really hard to move things around so they easily snap to the end/beginning of other clips.

If any tests or further info would help with the suggestions above, please let me know.

Thanks again for this incredible program!

Regards,

LFOM

Hopefully, some one with more experience will address your slowness. I do not see this on my laptop but I only load small videos and do not do any real editing - just testing of the new features or attempt to reproduce problems for analysis. However, I will address some of what you mentioned.

  1. Single screen versus multiple screens - Cinelerra has been around since even before 2000 when computers had less capability and it was designed with multiple screens. It does not use QT (this is sometimes a source of consternation as it would be helpful in some scenarios). There is a lot of benefit to having multiple screens that you may appreciate in the future when you get used to them. BUT for now, use the Window pulldown on the main/timeline window and Save Layout to set up different window placements to use. I have noticed that several users, tend to put the Resources window in the upper left hand corner, extend the Main window timeline to make it longer, and leave Show Overlays window up. I do not see the possibility of a Single screen because the multiple screens is just too useful for us.

  2. I think most users change the Settings->Preferences, Playback A tab, Video Driver to X11-OpenGL. With a good graphics board, this should be helpful. The default is X11. There is also X11-Direct which for playback can really speed things up. As far as GPU hardware decoding – this can improve performance, but it is limited in the formats it handles depending on your graphics board and graphics software. Recently we had been provided with a Drone output video and that video was profile 66 and it produced the error Codec h264 profile 66 not supported for hardware decode.

As always, more memory on your computer helps. A really big help is to use Proxy under the Settings pulldown. It is pretty well debugged. Tips for Using Smaller Computers chapter in the manual (I think it is section 19.5) is not just for small computers. For example, turn off the Thumbnails in the Resources window – Settings->Preferences, Appearance tab.

P.S. We are unaware of any specific bugs having to do with performance.

  1. I have no feedback on this at this time.

  2. I have never heard any reports of the difficulty of using keyframes. I will see if I can figure out why this may be difficult.

  3. There are several ways to easily line up the edits but the traditional snapping is best described in a very short paragraph in the Editing chapter, section 5.7.9. We added several shortcuts for these as described there:

snap_left_edit ctrl+alt+ ,
snap_right_label ctrl+alt +shift . shift+period is the > sign on US keyboards
snap_left_label ctrl+alt +shift, shift+comma is the < sign on US keyboards

We have a LOT of shortcuts so when Snapping and Snapping while Dragging were added, we had to make do with whatever we could use for characters. It is easier for me to just line the edits up manually by watching the colors when in Drag and Drop mode (not the default mode which is Insert mode instead). And there are other ways to tell when things are lined up next to each other in Insert mode when double arrows appear.

Hey, @phyllissmith! Thanks a lot for your reply. Sorry about the confusion, I thought Cinelerra was build using Qt, but in the end it doesnt really matter.

  1. Sure, multiple windows has its advantages, but the title bars use lots of space… You can see in many videos/tutorials that usually part of the UI is covered by other windows when the screen isnt big enough. And being a single window does not mean that you cannot have floating windows (or panels) too. For instance, both Shotcut and Olive use a single window interface, but you can unlock the panels and arranje them as tabs in the interface, making switching between them very easy. Custom layouts help for sure, but I was suggesting something to improve the UI so it would adapt better for any screen size.

  2. Yeah, I have tried all that as well as all the options from the manual regarding performance. The video play back is very good, but no matter what I do the program window is very sluggish, it is why I think there is something wrong regarding the UI specifically. As I said previously, simply scrolling the tracks up and down is painfully slow, or when trying to move clips is very slow too, even with all the options and settings to improve performance enabled. This happens even with and empty project with just a photo or a solid color in the timeline… If it helps, I can try to capture a video showing the problem, but right now I only have access to a very slow internet connection so it may take a while to upload the video.

  3. Every time I change Draw media the program takes a long time to rebuild the thumbnails, and the same happens while playing the timeline and it scrolls, so maybe it is related to the slow performance somehow…

  4. Maybe it is related to the slow response of my program window, but every time I try to create or move a keyframe in the timeline it is a pain: even if I make the program window full screen and the tracks taller, it is very hard to click on them without creating a new keyframe, etc…

  5. Thanks for the shortcuts tip, I did miss them. Same about the double arrow, I think I didnt understand how to do that yet, but I will look further. Anyway, I think the snapping feature with a toggle would be very useful, specially for beginners in the drag&drop mode, and probably it is a good idea to make it enabled by default.

Regards

On the left side in the patchbay there is a switch (the eye) with which the graphical display of the media can be switched off. You have already discovered it and you should leave it off with your computer. Without this thumbnails the speed of editing is increased enormously. For beginners this is often irritating, because they orientate themselves on the timeline with this thumbnails, but with time you get used to it. By the way, these thumbnails only show the approximate position on the timeline, only the Composer display is correct.

Hi,
For performance try unchecked Play every frame, its an option that weighs heavily on playback. For playback only it is better to use X11; however if you add various effects then it is better to switch to X11-OpenGL.
What format and codec does your drone use? There are formats that give seek problems (for example mkv format, to me). In these cases its better to use Transcode to make the media uniform to a more manageable format (some people recommend proxies in mjpg because theyre very light and hassle-free).
Another workaround is to disable playback (from patchbay) of all tracks except the ones you are working on.
Last tip is to calibrate the cache to use. This takes a lot of testing and a lot of time and is done using the top console command, to check resource usage as you test.

1- Unfortunately the windowed interface is not editable because it is not based on GTK, QT or anything else, but on Guicast, personally created by the original developer. Its an old issue that everyone has faced sooner or later, but that would require rewriting all the code. However you are in a borderline condition, large screens and even multi-monitors are required for smooth video editing. Try disabling the windows you dont need and leaving only the Main and Compositor. Then, uncomfortably, turn up Resource and Viewer whenever you need them; even overlaying them with the ones you already have.

2, 3- A workaround could be changing the colors of the track (right click → bar color) to distinguish one edit from another. So you can leave only the title bar. For media recognition we have to go to the Resources window, maybe using the Inter-view view. Anyway the idea of leaving only the first and last frame visible is good; lets hear what GG says.

4- The only way I found is to be sure to position the cursor precisely over the point of the keyframe, and only then click. Its also a problem with the Mask tool, but I must say Ive quickly got used to working with more precision.

5- Good idea to have a switch in Preferences to make the snap of the edits by default.

NOTE: if you want to make precise requests its better to use the Bug Tracker, so that you dont lose track over time.

Thanks a lot for your replies, @Olaf and @andreapaz (by the way, thanks a lot about your video about the new release, that is why I knew about the user manual, it is great that you added EN subtitles).

Indeed I have tried most of the suggestions that you gave me, and indeed the only way to speed up the timeline in my case is by disabling the assets. For small projects it is not a big deal. My suggestions was more for improving Cinelerra GG even more, mostly for new users (if the learning curse is too steep then probably they will seek another alternative).

Too bad that it is not possible to implement a single window mode. I can deal with a few windows and different layouts, that is one of the good features of the GG Infinity version.

As I was not sure if these issues are related to my configuration/setup I though it would be better to post here in the forum for discussion first. If specific items can go to the Bug Tracker, I will gladly add them later.

Regards.

@LFOM

Just out of ignorance on my part what is this thing? – single-user build for Eoan on Pop!_OS 19.10 – I mean which operating system build?

Some more feedback:

I have logged a Bug Tracker issue #392 for looking into the possibility of adding an option for Single window after talking to gg. It is not out of the realm of possibility but of low priority.

Also logged BT #393 for an automatic Snap option preference, but gg is not sure how this should work.

Finally, gg wonders if there is anything unusual about your media – drone 720p 25fps should not be performance issue. If you have an example of one that goes slow, he could at least look at it to see if it is a problem here if you want to put it somewhere where he can grab it. Or send it to my email if it is private so it will not be shared: phylsmith2004@yahoo.com

** Posted by: @phyllissmith **Just out of ignorance on my part what is this thing? – single-user build for Eoan on Pop!_OS 19.10 – I mean which operating system build?
Pop!_OS is based on Ubuntu, so version 19.10 > Ubuntu 19.10 = Eoan Ermine, so I have installed cinelerra-5.1-ub19-x86_64-static.txz.

Thanks for the replies and time for adding the Bt issues, I do appreciate it. The problem isnt the media. As I said before, even if I simply add a photo or a color frame/title using the filters anything I try to do in the program window (where the timeline is located) is very sluggish. The only way I could use the program is by disabling the assets (all tracks show only their name/label), but them it is very hard to adjust keyframes, etc…

Regards

You might want to try starting up CinGG from terminal, to see if there are any strange messages that might reveal something. Otherwise, theres a real debugging to be done (gdb, valgrind?). But this is beyond my skills.

LFOM: Atom x5 processor and 4GB of RAM.
[…] With this, the Atom x5-Z8350 easily handles all Android apps and is also suitable for simple everyday applications under Windows. […]
Graphics: Under Windows users will therefore have to continue to limit themselves to very old and undemanding games.
Does this apply to your PC?

If an Nvidia graphics card is installed, are the original drivers installed or the combination Nouveau/Mesa?
glxinfo | grep vendor

You might want to post here the output of inxi -F

@andreapaz

No errors at all. I am running Gnome on Wayland as it is way faster than X11 for normal tasks (web videos, scrolling, etc), but I have also logged in using the normal X11 system and it was the same.

Again, just to make it clear: video playback and UI works fine as long as I dont do anything related to the program window itself (timeline). I have created proxies (Cinelerra GG Infinity handles them pretty well, automatically) and optimized the program for my hardware using the tips from the manual and the forum, and it works great until I have to move a clip in the timeline or try to create/move a keyframe, thats why my post is about the UI/UX. Other programs are usually the opposite: using the timeline is normally snappy.

@olaf

Yeah, sure. And it has no hybrid graphics, it uses the Intel HD video driver only (what works acceptable with Wayland and vaapi).

But, again, it is not the issue: how Cinelerra GG Inifinty handles the media isnt my issue, far from this (it is actually the best NLE for this, because of how it handles proxies), but using the timeline, specifically, is very sluggish for me. If I simply open Cinelerra GG with a brand new empty project and just add a simple title I have the exact same issues. Sure, if I disable everything in the timeline and see only the clips titles it works in an acceptable manner. I was not sure if it could be improved or not. If you say thats how it works, then OK, I am simply suggesting that it maybe could be improved to help new users and/or improve usability, as my suggestion to add an option to only show the first and/or last frame for each clip in the timeline (a cache can be used, speeding up things, perhaps).

$ glxinfo | grep vendor
server glx vendor string: SGI
client glx vendor string: Mesa Project and SGI
OpenGL vendor string: Intel Open Source Technology Center

@matn

Hey, I think it was you that left a comment in that itsfoss.com article that made me install Cinelerra GG Infinity. Thanks!

$ inxi -F
System:
Host: miix320-pop Kernel: 5.3.0-7642-generic x86_64 bits: 64
Desktop: Gnome 3.34.3 Distro: Pop!_OS 19.10
Machine:
Type: Detachable System: LENOVO product: 80XF v: Lenovo MIIX 320-10ICR
serial:
Mobo: LENOVO model: LNVNB161216 v: SDK0J91196WIN serial:
UEFI: LENOVO v: 5HCN39WW date: 05/11/2018
Battery:
ID-1: BAPM charge: 33.3 Wh condition: 33.3/33.3 Wh (100%)
CPU:
Topology: Quad Core model: Intel Atom x5-Z8350 bits: 64 type: MCP
L2 cache: 1024 KiB
Speed: 480 MHz min/max: 480/1920 MHz Core speeds (MHz): 1: 480 2: 480 3: 485
4: 490
Graphics:
Device-1: Intel Atom/Celeron/Pentium Processor x5-E8000/J3xxx/N3xxx Integrated
Graphics
driver: i915 v: kernel
Display: wayland server: X.Org 1.20.5 driver: i915 resolution: 1280x800~60Hz
OpenGL: renderer: Mesa DRI Intel HD Graphics (Cherrytrail) v: 4.5 Mesa 19.2.8
Audio:
Device-1: Intel Atom/Celeron/Pentium Processor x5-E8000/J3xxx/N3xxx Series
Imaging Unit
driver: intel_atomisp2_pm
Sound Server: ALSA v: k5.3.0-7642-generic
Network:
Device-1: Intel Wireless 3165 driver: iwlwifi
IF: wlp1s0 state: up mac: 74:70:fd:90:af:e7
IF-ID-1: anbox0 state: unknown speed: N/A duplex: N/A mac: 7e:88:87:1d:9a:22
Drives:
Local Storage: total: 116.48 GiB used: 93.61 GiB (80.4%)
ID-1: /dev/mmcblk0 model: DF4128 size: 116.48 GiB
Partition:
ID-1: / size: 37.87 GiB used: 29.04 GiB (76.7%) fs: ext4 dev: /dev/mmcblk0p8
ID-2: swap-1 size: 4.00 GiB used: 0 KiB (0.0%) fs: swap dev: /dev/dm-0
Sensors:
System Temperatures: cpu: 46.0 C mobo: N/A
Fan Speeds (RPM): N/A
Info:
Processes: 250 Uptime: 3h 56m Memory: 3.71 GiB used: 1.51 GiB (40.8%)
Shell: zsh inxi: 3.0.36

Again, I know that my hardware wont run Cinelerra GG Infinity at full speed, the intuit of this post is to improve/enhance the UI/UX usability, maybe from the perspective of a new user. Hopefully I will be able to capture a video showing the issue and I will post it here soon. Thanks again for all the replies.

Regards

@LFOM

I forgot to provide feedback on this suggestion – to add an option to only show the first and/or last frame for each clip in the timeline – GG does not see this as feasible from a programming viewpoint or from a user viewpoint as quite often both the first and last frame are just black.

I wish we could see what you see because there is no way for the programmer to fix something if he cant reproduce it.

@phyllissmith

I see.. But even if its just a full black thumbnail, it would make it much easier to see the junctions of clips, wouldnt it? And it not always black (in my experience, once you starting creating the clips for the timeline they hardly are black. Anyway, I dont know how it was coded, but using a cache for both starting and ending thumbnails seems like an improvements, instead of rebuilding all of them (if they are already cached, then I dont know what to say)…

Sure, I will try to make a short video showing the problem. Is it OK to compare it with another program, so you can see how it works?

Regards

@LFOM

We are not familiar with actually using any of the other NLEs and purposely stay away from them so we do not copy their work. But It is OK to compare a demo with another program so we can see the difference.

@phyllissmith

Maybe you can make a computer temporarily slow? If the BIOS allows you to turn off cores, and you reduce it to one, then maybe the effect shows. I remember that if you have very many audio tracks it is slow scrolling scrolling vertically.

@lfom

Yes that was me at itsfoss . I wonder where the time is spent at your machine. The inxi output looks OK.

Youre using Gnome, is there a small widget or so in there that allows you to see CPU utilization? If it is maxed out while you have this problem, we know it is not waiting for (program) resources.

@lfom, some more questions:

  1. Is your problem mainly scrolling the timeline vertically, or also horizontally?

  2. inxi shows your are using the Intel i915 driver. Does vainfo show that video acceleration APIs are available, and if so, do you have it enabled in Settings->Preferences->Performace->hw device?

  3. It is probably not relevant if you are using proxies, but what is the format of the original video? In the resources window, right-click on the video, then detail .

  4. I once reported very slow response (https://cinelerra-gg.org/bugtracker/view.php?id=258) which is probably unrelated to your problem. But what could be relevant is that with that slowness, CPU utilization was only 23%, so CinGG was not using the available CPU resources. In my instance, I loaded 150M if images from a fast SSD, pure storage access should have been < about 0.5 second, yet the whole process too 7 minutes

@matn

Yes, only when scrolling the timeline or moving clips/keyframes is slow. Scrolling vertically when there are audio tracks is painfully sluggish, it is the worst scenario by far. Indeed I use a widget in the top bar that shows CPU and memory usage, and when this happens the CPU usage is low (below 50%). The only way to improve it is by disabling assets and Display media.

vaap was enabled, as I mentioned before, but I had to disable it for the tests since it has some bug when handling images (I will make the video using only images and titles to be clear that the problem is not handling the videos). But recording the screen is using lots of CPU, so it may not be clear that the problem isnt CPU usage or the media… I may go back to X11 tho, if this helps recording the video, and it rules out any problems with Wayland…

$ vainfo
libva info: VA-API version 1.5.0
libva info: va_getDriverName() returns 0
libva info: Trying to open /usr/lib/x86_64-linux-gnu/dri/i965_drv_video.so
libva info: Found init function __vaDriverInit_1_4
libva info: va_openDriver() returns 0
vainfo: VA-API version: 1.5 (libva 2.5.0)
vainfo: Driver version: Intel i965 driver for Intel(R) CherryView - 2.3.0
vainfo: Supported profile and entrypoints
VAProfileMPEG2Simple : VAEntrypointVLD
VAProfileMPEG2Simple : VAEntrypointEncSlice
VAProfileMPEG2Main : VAEntrypointVLD
VAProfileMPEG2Main : VAEntrypointEncSlice
VAProfileH264ConstrainedBaseline: VAEntrypointVLD
VAProfileH264ConstrainedBaseline: VAEntrypointEncSlice
VAProfileH264Main : VAEntrypointVLD
VAProfileH264Main : VAEntrypointEncSlice
VAProfileH264High : VAEntrypointVLD
VAProfileH264High : VAEntrypointEncSlice
VAProfileH264MultiviewHigh : VAEntrypointVLD
VAProfileH264MultiviewHigh : VAEntrypointEncSlice
VAProfileH264StereoHigh : VAEntrypointVLD
VAProfileH264StereoHigh : VAEntrypointEncSlice
VAProfileVC1Simple : VAEntrypointVLD
VAProfileVC1Main : VAEntrypointVLD
VAProfileVC1Advanced : VAEntrypointVLD
VAProfileNone : VAEntrypointVideoProc
VAProfileJPEGBaseline : VAEntrypointVLD
VAProfileJPEGBaseline : VAEntrypointEncPicture
VAProfileVP8Version0_3 : VAEntrypointVLD
VAProfileVP8Version0_3 : VAEntrypointEncSlice
VAProfileHEVCMain : VAEntrypointVLD

Hello, again!

Sorry for the delay to post the video showing the problem, but here it is:
https://streamable.com/c296d4

CPU usage is high since the beginning due to the screen recorder. I had to go back to X11 to be able to record the screen properly. But it seems that the sluggishness only happens when any line with keyframes is shown (fade, speed, etc), you can see in the video how bad it goes… Also, displaying sound wave forms slows down UI too, but not as bad as the keyframes. Too bad, since the keyframes are one of the best features IMO. I have shown the settings, but they dont actually matter. The program is much faster on Wayland with vappi enabled, but then there is some problem rendering images (JPG or PNG, i dont recall which one exactly now), video playback and everything else is snappy when there is no keyframes or waveforms visible.

Also I notices that Show titles is disabled when there is anything in the timeline the current titles remain, they arent hidden. Known bug?

I will upload another video soon, showing the problem (in my opinion) when editing keyframes, and showing how it works in Olive, with a separate timeline for them (Shotcut does this too).

Regards