Jump to content

GSoC/2024/StatusReports/ChengkunChen: Difference between revisions

From KDE Community Wiki
Seri (talk | contribs)
Created page with "== Improved subtitling support for Kdenlive == == Work report == == Links to Blogs and other writing =="
 
Seri (talk | contribs)
m Add mentor, future plans and contact.
 
(2 intermediate revisions by the same user not shown)
Line 1: Line 1:
== Improved subtitling support for Kdenlive ==
== Improved subtitling support for Kdenlive ==
Kdenlive saves its subtitles in the SRT format, which only allows very basic styling features - that means only one style for the complete subtitle file. A more advanced file format like [https://github.com/libass/libass/wiki/ASS-File-Format-Guide ASS] (SubStation Alpha Subtitles) would allow much more powerful styling, for example attributing different styles to different speakers, proper styling (using bold, italic or colors on words or sentences only), etc.
I'll improve Kdenlive's support for ASS files. Expecting results include opening and saving an ASS subtitle and keeping the styling infos, implementing a widget allowing to create styles and attribute a style to a subtitle sentence, and adding some attributes like bold to selected parts of the text.
== Mentor ==
Jean-Baptiste Mardelle


== Work report ==
== Work report ==


== Links to Blogs and other writing ==
=== Week 1-2 ===
 
* Added initial support for reading and saving embedded fonts in ASS subtitles.
 
* Optimized the storage method for subtitle styles.
 
* Migrated from V4Style to V4+Style.
 
=== Week 3-6 ===
 
* Created a SubtitleEvent class to help us better manage subtitle event information, which can replace the original SubtitledTime class.
 
* Added basic display support for subtitle layers as multiple subtitle tracks.
 
=== Week 7-8 ===
 
==== Multiple Subtitle Track ====
 
* Enable user to add new layers directly on the timeline by simply dragging the existing subtitle out of the bottom border of the subtitle track.
 
* Added an indicator to the header of the subtitle track.
 
[[File:Multiple subtitle tracks.png]]
 
==== Improved Subtitle Manager ====
 
* Added basic layer management in Subtitle Manager.
 
==== Automatic Conversion of .srt Subtitle ====
 
* Automatically convert the .srt files from old projects to .ass files while keeping the original .srt file.
 
=== Week 9-10 ===
 
==== Enhanced Subtitle Editor ====
 
* Easily modify elements such as the event’s layer, style, margins, and more.
 
[[File:Subtitle Editor Page1.gif]]
 
* Control subtitle scrolling by simply adjusting checkboxes and combo boxes for speed, direction, and range.
 
* Assist users in inputting [https://aegisub.org/docs/latest/ass_tags/ ASS override tags] using the provided buttons.
 
[[File:Buttons in Subtitle Editor.gif]]
 
* A highlighter renders different parts of the tags in distinct styles, making them more distinguishable.
 
* An auto-completer automatically lists all valid presets as we start typing a override tag name.
 
[[File:Subtitle Editor Auto-Completer.gif]]
 
=== Week 11-12 ===
 
* A new widget, the Style Editor, was created to edit styles and provide a preview.
 
[[File:Subtitle Style Editor.png]]
 
* Old styles will now be automatically converted to the “Default” style in the new project. Font size, outline, and shadow will be scaled to maintain the original effects.
 
* We can assign different default styles to each layer, which will automatically be applied to a subtitle event when it’s created on the corresponding layer.
 
* A "Simple Editor" that syncs with the normal editor but displays only the text without tags while rendering some basic tag effects.
 
[[File:Subtitle Simple Editor.png]]
 
==== Subtitle Manager ====
 
* Subtitle Manager is now integrated with style management and has been divided into four sections: File, Event, Style, and Info.
 
* Move/Copy layers/styles by simple drag-and-drop.
 
== Future Plans ==
 
* Add more buttons to assist users in inputting ASS override tags.
 
* Improve the UI to avoid misunderstandings.
 
* Continue enhancing the "Simple Editor."
 
== Links ==
 
=== Reports on Planet KDE ===
 
[https://planet.kde.org/chengkun-chen-2024-05-27-intro-blog-of-gsoc-2024-kdenlive/ Intro blog of GSoC 2024 - Kdenlive]
 
[https://planet.kde.org/chengkun-chen-2024-06-13-gsoc-24-progress-week-1-and-2/ GSoC '24 Progress: Week 1 and 2]
 
[https://planet.kde.org/chengkun-chen-2024-07-10-gsoc-24-progress-week-3-6/ GSoC '24 Progress: Week 3 - 6]
 
[https://planet.kde.org/chengkun-chen-2024-07-24-gsoc-24-progress-week-7-and-8/ GSoC '24 Progress: Week 7 and 8]
 
[https://planet.kde.org/chengkun-chen-2024-08-22-gsoc-24-progress-week-9-12/ GSoC '24 Progress: Week 9 - 12]
 
=== Related Merge Requests ===
 
[https://invent.kde.org/multimedia/kdenlive/-/merge_requests/522 Improve the ASS format subtitling support]
 
[https://invent.kde.org/documentation/docs-kdenlive-org/-/merge_requests/84 Update doc with new subtitle features]
 
=== Related Issues ===
 
[https://invent.kde.org/multimedia/kdenlive/-/issues/1897 Improve the subtitle editor]
 
== Contact ==
 
 
[https://matrix.to/#/@seri037:matrix.org @seri037:matrix.org]

Latest revision as of 16:54, 25 August 2024

Improved subtitling support for Kdenlive

Kdenlive saves its subtitles in the SRT format, which only allows very basic styling features - that means only one style for the complete subtitle file. A more advanced file format like ASS (SubStation Alpha Subtitles) would allow much more powerful styling, for example attributing different styles to different speakers, proper styling (using bold, italic or colors on words or sentences only), etc.

I'll improve Kdenlive's support for ASS files. Expecting results include opening and saving an ASS subtitle and keeping the styling infos, implementing a widget allowing to create styles and attribute a style to a subtitle sentence, and adding some attributes like bold to selected parts of the text.

Mentor

Jean-Baptiste Mardelle

Work report

Week 1-2

  • Added initial support for reading and saving embedded fonts in ASS subtitles.
  • Optimized the storage method for subtitle styles.
  • Migrated from V4Style to V4+Style.

Week 3-6

  • Created a SubtitleEvent class to help us better manage subtitle event information, which can replace the original SubtitledTime class.
  • Added basic display support for subtitle layers as multiple subtitle tracks.

Week 7-8

Multiple Subtitle Track

  • Enable user to add new layers directly on the timeline by simply dragging the existing subtitle out of the bottom border of the subtitle track.
  • Added an indicator to the header of the subtitle track.

Improved Subtitle Manager

  • Added basic layer management in Subtitle Manager.

Automatic Conversion of .srt Subtitle

  • Automatically convert the .srt files from old projects to .ass files while keeping the original .srt file.

Week 9-10

Enhanced Subtitle Editor

  • Easily modify elements such as the event’s layer, style, margins, and more.

  • Control subtitle scrolling by simply adjusting checkboxes and combo boxes for speed, direction, and range.

  • A highlighter renders different parts of the tags in distinct styles, making them more distinguishable.
  • An auto-completer automatically lists all valid presets as we start typing a override tag name.

Week 11-12

  • A new widget, the Style Editor, was created to edit styles and provide a preview.

  • Old styles will now be automatically converted to the “Default” style in the new project. Font size, outline, and shadow will be scaled to maintain the original effects.
  • We can assign different default styles to each layer, which will automatically be applied to a subtitle event when it’s created on the corresponding layer.
  • A "Simple Editor" that syncs with the normal editor but displays only the text without tags while rendering some basic tag effects.

Subtitle Manager

  • Subtitle Manager is now integrated with style management and has been divided into four sections: File, Event, Style, and Info.
  • Move/Copy layers/styles by simple drag-and-drop.

Future Plans

  • Add more buttons to assist users in inputting ASS override tags.
  • Improve the UI to avoid misunderstandings.
  • Continue enhancing the "Simple Editor."

Links

Reports on Planet KDE

Intro blog of GSoC 2024 - Kdenlive

GSoC '24 Progress: Week 1 and 2

GSoC '24 Progress: Week 3 - 6

GSoC '24 Progress: Week 7 and 8

GSoC '24 Progress: Week 9 - 12

Related Merge Requests

Improve the ASS format subtitling support

Update doc with new subtitle features

Related Issues

Improve the subtitle editor

Contact

[email protected]

@seri037:matrix.org