Skip to content
This repository has been archived by the owner on Oct 6, 2021. It is now read-only.

[FEATURE] 2160p (4K) Support? #118

Open
mog3n opened this issue Jan 29, 2021 · 10 comments
Open

[FEATURE] 2160p (4K) Support? #118

mog3n opened this issue Jan 29, 2021 · 10 comments

Comments

@mog3n
Copy link

mog3n commented Jan 29, 2021

Screen Shot 2021-01-29 at 3 37 00 PM

This is what my docker compose looks like. However I can't seem to get it to render at 2160p. It seems to max out at 1080p@30.

I am using a sufficiently powerful VM. I'm using an 8 core with 16gigs of ram on AWS. This is mostly for movie nights so a buck or two per stream is not a huge problem.

Thanks!

@m1k1o
Copy link
Contributor

m1k1o commented Jan 29, 2021

Available screen resolutions are limited there: https://github.com/nurdism/neko/blob/master/.docker/files/base/xorg.conf

You could be theoretically able to modify it and adding custom resolutions. Though I have never tested that.

@nurdism
Copy link
Owner

nurdism commented Jan 29, 2021

I don't recommend this, but it is doable... encoding and streaming a 4k stream would need a large amount of bandwidth and a very beefy CPU

@mog3n
Copy link
Author

mog3n commented Jan 29, 2021

Got it, thank you! Another question. Is it possible to manually set the bitrate?

@m1k1o
Copy link
Contributor

m1k1o commented Jan 29, 2021

Not in any convenient way. Your only possibility is to replace existing gstreamer pipeline with your custom. It can be done via NEKO_VIDEO environment variable. In order to do that, knowledge about gstreamer and its pipelines is needed.

@Kyrex
Copy link

Kyrex commented Feb 1, 2021

Got it, thank you! Another question. Is it possible to manually set the bitrate?

I would like to know more about this too. A 720p@30 stream isn't even possible on normal ADSL internet with give or take 15mb/s download speed. It's just a stuttery mess.

Just like rabb.it had it, an SD and HD button at the bottom would be perfect, I assume it would change between a lower and higher bitrate for one client, not affecting the other clients.

@m1k1o
Copy link
Contributor

m1k1o commented Feb 1, 2021

It could be posibble with making two pipelines. SD and HD, letting user to decide. But this would introduce even higher CPU usage on server. Even now it is pretty high.

@Kyrex
Copy link

Kyrex commented Feb 2, 2021

A bit off-topic, but also kinda not since I want to experiment with the configs:
Since I'm not familiar with docker at all, if I want to edit one of the files and/or configs, like the xorg.conf file you pointed out, how can I do that? I can't seem to find them

@m1k1o
Copy link
Contributor

m1k1o commented Feb 2, 2021

You are able to copy that file (either from inside of container using ˙docker cp neko:/etc/neko/xorg.conf xorg.conf˙ or from this repo) and then mount it as volume using -v "${PWD}/xorg.conf:/etc/neko/xorg.conf".

Or in docker-compose:

    volumes:
      - ./xorg.conf:/etc/neko/xorg.conf

@JCBird1012
Copy link
Contributor

When I was playing around with #107, I tried to bump it up to 4K in the xorg.conf and I'm pretty sure I got my modesets right but it didn't appear in the front end. I never troubleshooted why.

@m1k1o
Copy link
Contributor

m1k1o commented Feb 9, 2021

Maybe because frontend is showing only modelines with 30 or 60 fps, others are simply ignored. I was able to get decent 4k video (only on my localhost ofc.) ranging from 8fps to 20fps. Even tried 60fps 8K resolution but I didn't get smooth picure.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants