Home

dev / openkara

publicthedavidweng/OpenKara· sync paused
Code Branches Pull requestsIssuesInsights
main
Home Code PRsIssues

#269 Will it support MV in video format ?

open

Opened by Rebuilding127 · 2 weeks ago

Rebuilding127opened this issueAuthor· 2 weeks ago

Will it support common video file formats ? like mp4, mkv .

I hope I can sing along while watching the music video, that would be much more fun.

Simply displaying the lyrics would be too monotonous.

devcommented· 2 weeks ago

Claude: Honest answer: not for 1.0, and it is a bigger change than it looks.

Playback today is an audio pipeline end to end — symphonia decodes to PCM, the mixer holds four stems in lockstep, and cpal writes the result to the output device. The visual layer is a lyrics renderer and a CD+G canvas, both drawing from the same clock. Adding MP4/MKV means a video decoder, a video surface composited under the lyrics, and A/V sync against the mixer's clock rather than the file's own — and it has to keep working while the four stems are being remixed live, which is the part that makes it more than "add a <video> element".

There is also a separation question: the app separates stems from the audio track, so a video file would need its audio demuxed first, and the result played back against the original video. That is workable, but it is a second import path with its own cache and its own failure modes.

Worth noting what already exists, since it may cover part of what you want: CD+G sidecars render graphics during fullscreen playback when a track ships a same-name .cdg file, and the fullscreen player can be sent to a second monitor. That is not a music video, but it is more than a lyrics list.

Leaving this open is up to @thedavidweng — it is a legitimate feature request, just not a 1.0 one. If it stays, it belongs in the project board rather than the 1.0 milestone.

Rebuilding127commented· 2 weeks ago
devcommented· 2 weeks ago

Im considering adding support for YouTube links in future so users can queue karaoke videos, but regarding local video playback, I’d like to understand how you planing using it. Were you looking to play music video with subtitles? If so why not use other video players? Because currently OpenKara is more of a music player, adding video playback feels a bit out of place.

We currently have CD+G support, which is already implemented.

I would really appreciate it if you could share more details on your intended use case. It would help me better understand your needs.

Rebuilding127commented· 2 weeks ago

Sign in to comment.

Linked pull requests

No linked pull requests yet.

Yes, I completely agree with you.

I hope to see it in a future major version.

First, my positioning of OpenKara is as a customized and localized karaoke software, not a conventional music player. The key point is that it separates the vocal and background music tracks of a song, which is precisely the core of karaoke singing. I use OpenKara not for listening to music, but for singing.

I am Chinese, and in China there are specific commercial karaoke venues called KTVs. I won't go into the origin of KTV here—you can look it up yourself. This KTV model is also common throughout Southeast Asia. In China, KTVs are widely used for: family and friend gatherings, social entertainment with peers, company events, and so on. The typical usage mode of Chinese KTVs is to play a song's music video (MV) on a TV screen, with the lyrics displayed on the MV, and the lyrics are enhanced with dynamic visual effects that indicate the current position of the melody. In this way, users can choose to play only the backing track and sing the song themselves. The atmosphere created by the combination of visuals and music is clearly much richer than having only the song and plain lyrics.

The effect is similar to this video: 遇見 - 孫燕姿 KTV伴奏版 (Karaoke Version) - YouTube. However, what we normally see in KTVs is the actual MV content, whereas this video, possibly due to copyright concerns, displays a static starry sky image instead.

In short, my point is that the visuals (MV) combined with the music and lyrics create a much richer experience than just the music and lyrics by themselves.