> -----Original Message-----
> From: ffmpeg-devel <ffmpeg-devel-boun...@ffmpeg.org> On Behalf Of
> Gianluca Cannata
> Sent: Dienstag, 4. März 2025 09:40
> To: ffmpeg-devel@ffmpeg.org
> Subject: [FFmpeg-devel] GSoC 2025 - OggKate subtitles support
> 
> Good morning,
> 
> I have to write a karaoke solution with FFmpeg libav libraries for a
> project of mine and I have found OggKate subtitles a good choice to
> implement such solution and I am thinking of writing a Kate demuxer and
> decoder along with a filter that will use OpenGL to render Kate
> subtitles
> capabilities on frame.
> 
> What do you think ?
> 
> There is someone interested in mentoring this proposal project ?
> 
> Or is it too overkill ?
> 
> Sincerely
> 
> Gianluca
> _______________________________________________


Hi Gianluca,

while it's true that "OggKate" doesn't appear to be well-known (I've never 
heard of it before), but it's also the only officially spec-ed subtitle format 
in Ogg containers (besides raw text).
I think that fact makes it interesting to implement it - one could also argue 
that the reason why it isn't widespread yet is that ffmpeg doesn't support it 😊

The license of the reference implementation source code appears to be 
permissive 
(https://github.com/Distrotech/libkate?tab=License-1-ov-file#readme), so an 
adaption might be possible as well - yet, IANAL.

Regarding the effort, I think that the implementation of a renderer is too 
steep, especially when aiming to support fancy things like animation. Anyway, a 
specific renderer would not quite fit into the ffmpeg architecture, because:

Every (text) subtitle decoder decodes to ASS format and every (text) subtitle 
encoder encodes from ASS to its target format. This means that implementing a 
decoder for OggKate would require to translate the Kate format to ASS.
Since we do have an ASS renderer (via libass), it would be still possible to 
achieve the goal of rendering those subtitles, even with animations.


I have seen that there are two representations of Kate subtitles: A text format 
and a bitstream format. What gets muxed into an Ogg container is always the 
bitstream format, the text/file format is just an extra and not needed, so it 
can be skipped, which means in turn that there's no need for developing a 
demuxer.

As mentioned above, for the format to have a chance to become more widespread, 
there would also need to be an encoder.

Making this a project about developing an encoder+decoder pair for Ogg Kate 
would appear to be a nice project IMO.

sw








_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".

Reply via email to