Skip to content

This issue was moved to a discussion.

You can continue the conversation there. Go to discussion →

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Ability to save replays as video #2967

Closed
kerrytazi opened this issue Jul 5, 2018 · 12 comments
Closed

Ability to save replays as video #2967

kerrytazi opened this issue Jul 5, 2018 · 12 comments

Comments

@kerrytazi
Copy link

kerrytazi commented Jul 5, 2018

Sometimes it is not suitable or even possible to share replays of game with "osu replay files". So it may be cool feature to save reaplays as video like avi/mp4 formats with choosable framerate and resolution.
This way much easier for end-user to just click "save as video" instead of installing screencapture programs.
And sometimes on low-end PC it is not even possible to record replay.

@peppy
Copy link
Member

peppy commented Jul 6, 2018

On a low end PC where it is not possible to save as video, it will be just as impossible for osu! to do so. There’s no magic zero-overhead method to save video. It would need a full background render workflow which would likely take minutes to hours.

I disagree with implementing this at an osu! level when operating systems have this functionality built in already at negligible performance overheads (both windows and macOS).

@peppy peppy added this to the Backlog milestone Jul 6, 2018
@peppy peppy added the proposal label Jul 6, 2018
@mzhang28
Copy link

mzhang28 commented Jul 6, 2018

i've been working on a program to do this for some time, although it's still undergoing massive rewrite (read: progress has stopped) to integrate with libosu. The idea would to have it be calculating the offset in non-realtime so you can still achieve nice fps with a low-end computer.

(example of emitted video: https://streamable.com/2g9o2)

@peppy
Copy link
Member

peppy commented Jul 6, 2018

The way lazer is written, it would not be hard to do something like this. I just think it's an unnecessary feature for a game to implement itself when external solutions already exist.

@Rekkonnect
Copy link
Contributor

It's never bad to have an extra feature despite the alternative options. It's just not of high priority, I would prefer to see this being implemented once the rest is done.

@peppy
Copy link
Member

peppy commented Jul 6, 2018

Disagree. Feature creep is definitely a real thing.

@mzhang28
Copy link

mzhang28 commented Jul 6, 2018

third-party plugin api when??

@ayrod
Copy link

ayrod commented Apr 11, 2019

This feature is the #1 thing you should be working on.
With replays, you can only share with people who already play the game. With "export as some_video_format", you can have your players post their clips on their Discord. Then sit back and watch your playerbase grow.

Using screen recording software is not a solution. It makes videos of terrible quality because it has to work in real time. And even if it worked fine, it still wouldn't be a real solution. When you say "use a third party", you lose 95% of people. The feature has to be directly available in osu!.

@peppy
Copy link
Member

peppy commented Apr 11, 2019

We have plenty of priorities. Finishing the game and restoring all existing features is higher priority than a new (not-so-easy-to-implement) feature for us.

We'll keep this on the back-burner though. You're welcome to start on this one if you feel skilled enough!

@Gabixel
Copy link
Contributor

Gabixel commented Apr 11, 2019

Of course, this is a good idea and can help saving time, but remember what peppy said...

On a low-end PC where it is not possible to save as video, it will be just as impossible for osu! to do so.

osu! isn't the only game that doesn't export an entire replay as a video. For example, League of Legends saves replays with its own .rofl file format, but nobody is complaining about this replay feature.
One difference is that League also has a "highlights" feature that saves the part of the replay that you're watching at that moment into a .webm format (and you can watch it on normal video-player apps, but I don't know exactly its process between recording and converting it to video).

So maybe a good solution could be something like a "Record this play" toggle option before playing a song (but this is not for low-end PCs I guess), or even a similar "highlights" feature when watching a replay, and then save the recorded part into a .webm video (for example), instead of converting an entire .osr file in video.

Of course, this is just an idea, what I tried to say was that if this is not possible, it doesn't mean that osu! is incomplete or osu! is losing people: new features are always welcome, but only if they are good, funny/enjoyable, useful, easy-to-understand or easy-to-use. [sorry if there's bad english]

@peppy peppy added the priority:3 Nice to have, at some point label Feb 17, 2020
@peppy peppy removed this from the Backlog milestone Feb 17, 2020
@smoogipoo smoogipoo changed the title feature for save replays as video Ability to save replays as video Sep 15, 2020
@UboidStrata
Copy link

Well, I am not that knowledgeable about video rendering but isn't the necessary process just creating output frames and combining them together at the desired fps with the desired resolution? As in something say... an FFmpeg would do or something, since when I work on animations and render scenes using manim—math animation library from the 3b1b GitHub repository—I can wait all I want, but in the end, I get that nice 60fps 1080p or 1440p.

So I don't know if this helps or not; nevertheless, the way I see it is to output rendered frame (mix of background video/picture and circle patterns at that instant) and store to collect and further combine with other rendered frames. Again if this works similar to how my rendering goes, then all what low-end PC users have to do is wait more for their rendered replays.

Then again no pressure on this feature since some of us are capable of using external software or "third parties" to record these replays yet at the cost of reduced quality. Personally, if I knew more about how video rendering works and how to make such apps and whatnot I would've started assisting, but I unfortunately don't so yea.

@bdach
Copy link
Collaborator

bdach commented Jan 24, 2021

Given that we've closed many issues on the basis that osu! is not a music player, I'd also argue that osu! is not a video recorder, either. External tools are the way to go.

@UboidStrata
Copy link

Actually, yes nevermind, that was slightly off the general purpose of the game, so implementing it to be part of osu! is a bit of an overkill.

Welp, recording with OBS is not that bad after all. I'll look into it though since this piqued my interest in replay-to-video rendering.

Nonetheless, thanks for the quick reply.

@peppy peppy removed the priority:3 Nice to have, at some point label Mar 17, 2021
@peppy peppy closed this as completed May 27, 2021
@ppy ppy locked and limited conversation to collaborators May 27, 2021

This issue was moved to a discussion.

You can continue the conversation there. Go to discussion →

Labels
None yet
Projects
None yet
Development

No branches or pull requests

8 participants