Bug 465138 - Make external proxies more flexible
Summary: Make external proxies more flexible
Status: RESOLVED WORKSFORME
Alias: None
Product: kdenlive
Classification: Applications
Component: Project Bin & Import (show other bugs)
Version: 22.12.1
Platform: Appimage Linux
: NOR wishlist
Target Milestone: ---
Assignee: Jean-Baptiste Mardelle
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2023-02-01 19:06 UTC by Hyuri
Modified: 2024-11-01 03:47 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments
Concept: New "Custom" option pointed by red arrow; separate suffix and extension pointed by yellow arrows (66.30 KB, image/png)
2023-02-01 19:06 UTC, Hyuri
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Hyuri 2023-02-01 19:06:01 UTC
Created attachment 155856 [details]
Concept: New "Custom" option pointed by red arrow; separate suffix and extension pointed by yellow arrows

SUMMARY
1. Add a "Custom" option to the External Proxy Clips, in Project Settings/Proxy, where we can manually change the parameters (paths, prefixes, suffixes, extensions);

2. Break the clip/proxy suffix field into two separate fields: "suffix" and "extension". The first excludes the file extension, the second only looks at the file extension. If the "extension" field is left empty, Kdenlive accepts all files of all supported extensions;

3. Option to set the proxy folder to any arbitrary folder, that can be an absolute path (this allows us to have the proxies folder located in external drives, for example, or media-only servers separate from the project folder root;

Additional:
4. Change the clip/proxy paths from "relative to clip/proxy" to "relative to the project root folder". So, if the project root folder is "My Project" and it contains the folder "FOOTAGE" that itself contains folders "PROXIES" and "ORIGINALS", we could set the clip/proxy paths to "FOOTAGE/ORIGINALS" and "FOOTAGE/PROXIES", respectively. For this to work, I imagine it would be required for the Kdenlive project to note which folder is the project root;


STEPS TO REPRODUCE
1. Open "Project Settings"
2. Click on the "Proxy" tab
3. Enable "External proxy clips"
4. Click on the drop-down menu containing the pre-existing external proxy profiles
5. Notice how we have no "Custom" option, and how we are not able to customize any of the existing profiles

EXPECTED RESULT
In the "External proxy clips" drop-down menu, we should have a "Custom" option that allows to customize the settings to our specific project needs.

SOFTWARE/OS VERSIONS
Linux: Pop!_OS 21.10
(available in About System)
DE: GNOME 40
KDE Frameworks Version: 5.101.0
Qt Version: 5.15.7

ADDITIONAL INFORMATION
Comment 1 Hyuri 2023-02-02 00:23:02 UTC
Reasons why it's useful to allow proxies generated outside of Kdenlive and be able to manually choose the proxies folder location:

1. Dedicated [open source] transcoding apps, such as Shutter Encoder and Hand Brake, offer a much simpler and specialized workflow to create proxies in a variety of edit-friendly formats;

2. These apps allow us to burn-in titles and timecode onto the proxies, make color and other image adjustments, apply LUTs, change other settings, affording us much more control over the proxies we generate;

3. Shutter Encoder, for example, has a "watch folder" feature, that lets you configure a folder to watch for new footage so that you can just drop a folder with new footage in there and Shutter Encoder automatically starts transcoding. We don't have to open Kdenlive, set up a new project, save it somewhere, import all the footage, and enable the proxy generation. Plus, proxy generation in Kdenlive has failed on me before with an .mkv source;

3. Sometimes we get proxies already generated from a production, so it doesn't make sense to re-generate them inside Kdenlive, we should be able to just link/attach the existing proxies (Premiere Pro behaves like this, as an example);

4. Project files, media files, and temporary files (proxies & cache) are usually placed in different drives, to optimize performance and maintenance. So I rarely want the proxies inside the project folder — except in small or personal projects edited in my own notebook;

5. When external apps like Shutter Encoder generates proxies, it keeps the original file name and gives you options to add a suffix (like "_Proxy") to all the files. This is really helpful to know which files are proxies and which files are not. The proxies Kdenlive generates are named a random string of characters and numbers, so it makes it very hard to manage and send them to other editors to re-link if needed (this last scenario will probably not happen now because Kdenlive isn't commonly used in the industry yet, but it might start happening as it matures and more people and production companies adopt it like happened with Blender).

So, for those reasons, it's important to offer some flexibility when it comes to attaching and using external proxies.
Comment 2 Hyuri 2023-02-02 00:34:07 UTC
Also, if we are going to use external proxies that keep the original file name, it would only make sense and be really useful to also have the proxies Kdenlive generates also keep the original file name with additional suffix, instead of the current random string of letters and numbers.

Example:
- Original file: "CLIP_0001.mp4"
- Proxy generated by Kdenlive: "CLIP_0001_Proxy.mov"
Comment 3 Hyuri 2023-02-02 00:37:09 UTC
(In reply to Hyuri from comment #2)
> Also, if we are going to use external proxies that keep the original file
> name, it would only make sense and be really useful to also have the proxies
> Kdenlive generates also keep the original file name with additional suffix,
> instead of the current random string of letters and numbers.
> 
> Example:
> - Original file: "CLIP_0001.mp4"
> - Proxy generated by Kdenlive: "CLIP_0001_Proxy.mov"

This format even provides compatibility with proxies generated for Premiere Pro. Premiere uses a "_Proxy" suffix for proxies, which would mean that proxies generated for Kdenlive could also be attached to Kdenlive projects.
Comment 4 emohr 2024-10-02 11:25:29 UTC
Hello Hyuri. Thank you for the investigation. 
With the latest Kdenlive version customized proxy import is possible. Check the documentation: https://docs.kdenlive.org/en/user_interface/menu/settings_menu/configure_kdenlive.html#configure-proxy-clips 

Let me know if this fits your need.
Comment 5 Bug Janitor Service 2024-10-17 03:47:58 UTC
🐛🧹 ⚠️ This bug has been in NEEDSINFO status with no change for at least 15 days. Please provide the requested information, then set the bug status to REPORTED. If there is no change for at least 30 days, it will be automatically closed as RESOLVED WORKSFORME.

For more information about our bug triaging procedures, please read https://community.kde.org/Guidelines_and_HOWTOs/Bug_triaging.

Thank you for helping us make KDE software even better for everyone!
Comment 6 Bug Janitor Service 2024-11-01 03:47:21 UTC
🐛🧹 This bug has been in NEEDSINFO status with no change for at least 30 days. Closing as RESOLVED WORKSFORME.