#SteamLink
1614 messages · Page 2 of 2 (latest)

I'm.... I'm just gonna be busy for like 30 minutes
Hybrid device? Android from manufacturer?
It's the RG40XX-H so uhhhhh
Maybe because it supports ADB it magically has /dev/ion
If this works I'll be amazed, but still writing it out
cebion has entered the chat
Hi! Am I doing something wrong? I followed the instructions from the github. rg35xx h, Muos
The patcher is in the process of being updated, and muOS is not yet supported. Apologies.
Ty for answer! I'll wait for the update.
@subtle hazel Are you ok if I add MIT license to steamlink repo? Don't want to retroactively make your gpucompat MIT without asking. I don't usually apply licenses to my stuff since they're all wrappers but for this one I'm considering it because I'd like others to feel okay to use it for whatever reason.
..actually I'm not sure if I can do that without adding confusion because we download steamlink.
but...knulli should be?after it says that the patch is done the app is closing (rg40xx h)
Read the readme
It only works on panfrost and adreno drivers atm
I’m okay with my part being set that way, but like you said, not sure about Steam Link itself cause it’s not really open source.
Should be fine if we have a disclaimer that it only applies to the wrapper and tools provided and not to steamlink or any elements of its package.
C&D what? Our making their own rpi client which is arm64 work with kmsdrm through outside means?
I dunno, they might not like us redistributing it? But I guess we really aren't doing that since we're downloading from their servers
Fair fair
License added
I've got to stop trusting LLMs without digging just a bit deeper first
We have ION Heaps on muOS H700's and KNULLI TrimUI's
Granted they still don't import into egl properly
Oh you know I never tested how much memory it uses while streaming
Probably not much? At least on the working DRM devices
It pools the buffers automagically so it hopefully is okay but good to test anyway
The only reason I went oom is cause I multiplied the buffer by 4
Trying to see if it needed Bytes Per Pixel, but uhhh I don't think so
@untold scarab This dmesg output mean anything to you?
[ 5840.422068] rcq unprotect not at safe region!```
I think it might be a syncing issue but then like
UGGGGH having to hook sync calls
yea no idea sorry
All good! I think it's an Allwinner thing after some digging
AHAH
bsdtar requires libarchive.so.13 ;w;
I'm gonna cry
Okay falling back to the system tar worked on Rocknix... jeez
Whenever you happen to see this Jeod, do you think there's an easy way to have your download script try our bsdtar first, then fall back to system tar otherwise?
Why don’t we just add the missing lib?
…that’s probably better yeah
@steady arrow
Whuh
Someone interested in your work 🙂
Oh reaaaaally?
I’m unfortunately about to sleep but I will be back in like 6 hours maybe?
I think they’re closer to your time zone
Gonna push that missing library to the repo real quick, not sure exactly how to implement it though. Just a temporary LD_LIBRARY_PATH I guess?
We already have a libs folder
Just put it in there
Right, but will it link automatically?
Yeah the launchscript already puts it in the ld path
Oh Ihought that was only for the port executable
export LD_LIBRARY_PATH="$GAMEDIR/libs.${DEVICE_ARCH}:$GAMEDIR/libs.${DEVICE_ARCH}/shell:$GAMEDIR/Qt-${QT_VERSION}/lib:$LD_LIBRARY_PATH"
OH I'm still thinking about trying to use westonpack heh
nevermind this is fine
Want a pr or you mind if I just upload
You can just add it
Also is there a way to cleanup additional files when uninstalling a port? Currently we don't seem to be gettting rid of that /Valve Corporation/ folder.
Not a super big deal but might help with fixing a bad setup that could randomly happen
Yeah...
I would say we could put it in port.json but I'm not sure that would work, or where to put it in there
Is getting rid of it that big a deal?
No not really. Just trying to think ahead a little
I guess I should focus on... it actually working first
Well if we know of a specific crash involving removing the conf file we can cat the log.txt during the launchscript for a specific line to see if it crashed on previous launch.
But I wouldn't worry about that yet.
Yeah
Oh you might like to know this just works oob on Odin2
Ohh
Wait how
Oh that's still using ioctl gpu detection
That makes sense, good!
But for my sake, can you pop the device_info.txt from the home folder in here for me please?
I have an Odin2 but not installed on Rocknix yet
It's just a really easy way to read through some of the lines in it to see what device/cfw we're on
Gotcha, thanks!
I believe the GPU detection I do in the current ship is done for every open call to DMA_HEAP, so I cleaned it up to only happen once on load
And reading that file makes it way easier
CFW/Device Name
We've yet to see a device revision that changes GPUs so it should be safe I think
I would do ioctl calls but that only works for DRM compatible gpus
So this is slightly less accurate in the case of a mismatch but is applicable to all devices.
My latest version falls back to "fake" memfd/shm buffers which should be really compatible. Should.
Are we going to support Batocera on RP5/Mini/Odin2?
Or do we already?
hey,Is there any source code reference? Or what problems are you currently facing?
There is! Let me upload the latest one real quick
And the issue is that I can't get X11/EGL to accept a dmabuf from an ION CMA heap.
rpi version is without drm display?
It has DRM. Does libmali support that?
if libmali support gbm
I don't think it does. How do you normally render to DRM? Through the framebuffer?
Here is my current wrapper source.
https://github.com/beebono/Steamlink-Arm64/blob/main/steamlink/src/gpucompat.c
ion...which device is you used?
RG40XX-H on Knulli firmware right now
yes mainline kernel is support drm
but stock kernel i think support mali-framebuffer
Ok. Steam Link rpi only supports X11/EGL, Wayland, or KMSDRM
yes you just need map buffer to fb0
You can mmap to fb0?
which kernel version?
4.9.170```
Okay!
I will let you know in a moment
Okay, wow! We have a picture now! Corrupted, but a picture! I will keep working on this!
Thank you!
😊
keep chat together is better than you think alone
@steady arrow Do you know if stock kernel supports "FBIOGET_DMABUF"? Steam Link seems to want a DMA-BUF instead of writing directly to fb0
So the image issue I'm having is that the screen is copied 4 times across the top to where it fits horizontally but not vertically.
I am not sure if it is a synchronization issue, but I know it is not a buffer size issue as changing that doesnt change the display.
What is your output of fbset -fb /dev/fb0?
mode "640x480-144"
# D: 74.482 MHz, H: 72.737 kHz, V: 143.748 Hz
geometry 640 480 640 960 32
timings 13426 192 56 22 1 136 3
rgba 8/16,8/8,8/0,8/24
endmode```
Is it using a 144 Hz refresh? 😅
@gentle anchor Oh, maybe it's a panel thing? Is that what you're checking?
Clues for sync issue
I do see 960 in the geometry too... but that would only be double, not 4 times
Maybe a stride/pitch mismatch or pixel format issue
It is decoding into yuv420p, which I believe is multiplanar... Maybe it's trying to display the planes in order rather than putting them together.
I'm not gonna pretend to understand everything currently, but what exactly is the current issue?
The current issue is that on devices without direct DRM suuport (as in, no /dev/dri/card0 or /dev/dri/renderD128) the software decoder is outputting a pixel format that neither x11 nor wayland can instantly understand
So it displays corrupted images on import
I believe I have a solution, but it will require a few hours for a major rewrite
I wonder how much interference it'll end up causing for latency.
It's all extra overhead pretty much isn't it?
It shouldn't be much, it's already decoding in software so no gpu to cpu overhead
And supposedly ffmpeg's libswscale can be pretty quick with certain settings ( which is what I am going to try and convert the format with)
You're gonna have steamlink running on your smart fridge aren't you
Taking a break for the night, libavcodec is being picky.
Hey uhhhhhhhhhhh @untold scarab , does Westonwrap support these libdrm calls?
void init_display_info(void) {
int fd = open("/dev/dri/card0", O_RDWR, 0);
drmModeRes *resources = drmModeGetResources(fd);
for (int i = 0; i < resources->count_connectors; i++) {
drmModeConnector *connector = drmModeGetConnector(fd, resources->connectors[i]);
if (!connector) {
continue;
}
if (connector->connection == DRM_MODE_CONNECTED) {
if (connector->count_modes > 0) {
drmModeModeInfo mode = connector->modes[0];
if (mode.hdisplay > mode.vdisplay) {
disp_width = mode.hdisplay;
disp_height = mode.vdisplay;
} else {
disp_width = mode.vdisplay;
disp_height = mode.hdisplay;
}
}
}
drmModeFreeConnector(connector);
}
drmModeFreeResources(resources);
close(fd);
}
Also sorry for bugging you so much
Yes!
drmModeGetResources exposes a single hardcoded connector (id 1338001)
drmModeGetConnector exposes a fake connector of type VGA with the native resolution of the device and the timings should add up to 60hz.
drmModeFreeConnector and drmModeFreeResources are stubbed out so hopefully your app doesn't call this too often because this leaks memory like hell 😅
Should just be once at start
Hmm. it seems to be exploding when dereferencing something
drmModeConnectorPtr drmModeGetConnector(int fd, uint32_t connectorId)
{
CONSIDER_BACKEND(return _drmModeGetConnector(fd,connectorId));
TRACE("FAKE drmModeGetConnector\n");
drmModeConnectorPtr res = malloc(sizeof(drmModeConnector));
res->connector_id=DRM_MAGIC_NUMBER_CONNECTOR;
res->connector_type = DRM_MODE_CONNECTOR_VGA;
res->encoder_id = DRM_MAGIC_NUMBER_ENCODER;
res->count_encoders = 1;
res->encoders = malloc(sizeof(uint32_t));
res->encoders[0] = DRM_MAGIC_NUMBER_ENCODER;
res->connection = DRM_MODE_CONNECTED;
res->count_modes = 1;
res->modes = malloc(sizeof(drmModeModeInfo));
res->modes[0].type=DRM_MODE_TYPE_PREFERRED;
strcpy(res->modes[0].name,"Mode\0");
res->modes[0].clock=50000;
int width=0;
int height=0;
get_screen_dimensions(&width,&height);
TRACE("drmMode Screen dimensions: %d %d\n",width,height);
res->modes[0].hdisplay=width;
res->modes[0].vdisplay=height;
res->modes[0].htotal=5;
res->modes[0].vtotal=5;
res->modes[0].vrefresh=60;
return res;
}
I don't see count_connectors in there?
I can just ignore it since we know there's only one though
Count connectors would be in GetResources
Oh duh
drmModeResPtr drmModeGetResources(int fd)
{
CONSIDER_BACKEND(return _drmModeGetResources(fd));
TRACE("FAKE drmModeGetResources\n");
drmModeResPtr res = malloc(sizeof(drmModeRes));
res->count_connectors=1;
res->connectors=malloc(sizeof(uint32_t));
res->connectors[0]=DRM_MAGIC_NUMBER_CONNECTOR;
res->count_encoders=1;
res->encoders=malloc(sizeof(uint32_t));
res->encoders[0]=DRM_MAGIC_NUMBER_ENCODER;
res->count_crtcs=1;
res->crtcs=malloc(sizeof(uint32_t));
res->crtcs[0]=DRM_MAGIC_NUMBER_CRTC;
int screen_width=0;
int screen_height=0;
get_screen_dimensions(&screen_width,&screen_height);
res->min_width=screen_width;
res->max_width=screen_width;
res->min_height=screen_height;
res->max_height=screen_height;
return res;
}
Weird, yeah mine's breaking on derefrencing resources->count_connectors... Gonna try just doing [0] temporarily
huh
...
card0 fd is -1
Program received signal SIGSEGV, Segmentation fault.
...
[~]# ls /dev/dri/card0
/dev/dri/card0```
whaht
sigh, time to break out perror
wait, which mode are you running in?
crusty_x11egl... oh
Yeah none of the drm emulation is in that mode. :/
If it helps, i can try making a standalone build of just the DRM "emulation" or a variant of x11egl that adds it. Not that it does anything useful. It literally just replies with a bunch of hardcoded stuff.
Give me one more night, this sounds silly but I just had an idea mid dream
Or rather I somehow am interpreting my dream in a useful way
Okay, so. Update! I've gotten the buffers to get accpted by Wayland/Weston!
But Wayland/Weston doesn't support YUV420P!
Sooooooo
I either need to find a way to enable hardware decoding/convert the frame format to fix the issue with wayland... OR get x11 to accept the buffers on non-drm capable devices.
I'm going to sleep now, but if you happen to see this @steady arrow : Do you know if the H700/Mali G31-MP2 supports hardware video decoding of H264? Possibly with cedar?
I know the hardware supports it, driver support is a different story though. ffmpeg is capable of hardware encoding at least, on current libmali drivers.
hardware video decode is supported by VPU and not GPU i think
Progress!
hey guys, just downloaded rocknix os on rg 40xx-h, got this error anyone knows a fix?
tried reinstallingit 3 times, didnt help
Can you try using the package from https://github.com/JeodC/Steamlink-Arm64 and see if that helps? The libgpucompat in that repository hasn't been added to the portmaster branch yet. I use this one for testing and dev.
A wrapper and library to fetch, download, install, and use SteamLink RPi on various SoC linux devices. - JeodC/Steamlink-Arm64
gonna try it rn
someone in port -help said that the rg 40xxh is panfrost only
yeah h700 devices are panfrost only
also, for steamlin app u have to be on the same network to pair and after that u caan play from any network. is this the same here?
im pretty sure it doesnt. You need to always be on the same network
Add export QT_DEBUG_PLUGINS=1 to your sh file near the bottom and run it again, it will output more to your log.
So like
# Exports post-setup
QT_VERSION=$(ls -d $GAMEDIR/Qt-* 2>/dev/null | grep -oE '[0-9]+\.[0-9]+\.[0-9]+' | head -n1)
export LD_LIBRARY_PATH="$GAMEDIR/libs.${DEVICE_ARCH}:$GAMEDIR/libs.${DEVICE_ARCH}/shell:$GAMEDIR/Qt-${QT_VERSION}/lib:$LD_LIBRARY_PATH"
export LD_PRELOAD="$GAMEDIR/libs.${DEVICE_ARCH}/libgpucompat.so"
export QT_QPA_PLATFORM_PLUGIN_PATH="$GAMEDIR/Qt-${QT_VERSION}/plugins"
export QT_QPA_PLATFORM="xcb"
export SDL_VIDEO_DRIVER="x11"
export QT_DEBUG_PLUGINS=1
Cannot load library /storage/roms/ports/steamlink/Qt-5.14.1/plugins/platforms/libqxcb.so: (libxcb-image.so.0: cannot open shared object file: No such file or directory) This makes me think it didn't download steamlink correctly.
Do you have a download.txt file?
In the ports/steamlink folder.
Hm bsdtar wants libnettle.so.7 (testing on my end)...gonna have to go find that
Can you verify this file is there?
it is there
At the exact path it's looking in?
yea
Is it 0KB or does it have some size to it?
67kb
Ok
hey man, i have some work to do right now. i'll get back to you tomorrow afternoon when i can. thanks for the help so far!
Ok, I pushed a commit to fix bsdtar but a fresh install on rpmini works fine. Will need someone else to test out rocknix 40xxh.
Oh gosh I'm really sorry. Life got a little hectic
Okay so, xcb probably wants all the xcb-*.so libraries. I have them compiled in my testing repo. One moment.
And funnily enough I have the bsdtar libs in there too, whoops
Burning a rocknix sd for my 40xxh real quick
I already fixed bsdtar
🙂
Okay, yes, rocknix and theoretically any H700 should work once the xcb libs are added. Tested on my RG40XXH
I can push them up to your repo if you want
Sure
Wait, so now steamlink is ganna be supported on more than just the one platform?
its still rocknix only
Nice! I have an Anbernic RG40XX H with muOS. But multiple micro sd cards for multiple different OSs. Ive never tried rocknix. 🙂
Is there a step-by-step guide on how to install it on rg35xx-h/rocknix? installation without errors but nothing happens next
@haughty lava i tihnk i konw what might be your issue
i'll find a link quickly
please support me and subscribe if you want more and smash the like button 👍🏻
Today installation guide for Anbernic handhelds , Rocknix system step by step
Balena Eatcher to flash system https://etcher.balena.io/
Rocknix system from github ...
here, this one is fro rgxx devices
u have to do some modifying after flashing the image, u can't jusst put it in to the conssole
thanks for your answer but I mean installing steamlink. Previous posts said it was possible on H700. I installed the latest version of rocknix, installed steamlink using portmaster and started it but nothing happens
/log
Every port has a log.txt generated in ports/{portfolder}, please drag and drop it to discord for help.
I have a feeling it's the same xcb library issue, because I don't think we've pushed that out yet But just to be safe.
Yup okay. Place this zip in your "/roms/ports/PortMaster/autoinstall/" folder and run PortMaster, then try running Steam Link again please!
Ah, sorry, One moment
Try one more time for me please. I'll need to look into this if it fails again.
Gosh dang it okay. Let me run it on mine and resolve all that real quick. Really sorry...
take your time. If it takes more time, I'll check here tomorrow or follow for updates
Okay, tested on mine with a fresh flash/autoinstall so this SHOULD work...
Thanks for your understanding!
sorry it took so long. we had an air raid alert.
i reinstalled rocknix and did everything from scratch + added the archive you gave. thank you very much for the help
No worries! But unfortunately that looks like a networking error, not something that I can help with other than the generic:
"Are you on the same wifi network as your Steam PC? You cannot use Steam Link remotely"
"Is your wifi network password-protected? Steam Link may not like unprotected networks."
etc etc...
maybe the problem is in the host, I connected to macos. I checked, everything works fine. But once again I was convinced that I needed to take rg40xx-h, there is a larger screen. Thanks again for the help
Sure thing! I would recommend a slightly larger screen, yes. But if you're set on using a smaller one, you can try setting this option to improve the screen usage a bit...
This is my first experience with such devices. The next one will definitely be bigger. Thank you, I will definitely try these settings. Have a nice day
I see that the port is working on h700 now. How about support for muOS?
It isn't working on H700. The app itself boots but it can't get streaming going.
Unsure if @subtle hazel is still planning on tinkering.
ouch! ty for info)
One message removed from a suspended account.
on what device are you
One message removed from a suspended account.
One message removed from a suspended account.
and have you switched to the Panfrost driver?
One message removed from a suspended account.
One message removed from a suspended account.
One message removed from a suspended account.
One message removed from a suspended account.
Alrighty gamers, we finally have a new Beta! Should support more CFWs (sometimes, it's finicky with westonwrap at the moment), but all previous workiong configs SHOULD be as they were, if not better!
So far I've got:
All devices:
- ROCKNIX (Panfrost or Standard) at 95-100% success rate
RK3566/H700: - ROCKNIX (libmali) / muOS / KNULLI at ~25% success rate on Stream Start
A133: - Untested
I'm thinking the low rates are because SDL2/3 is asking WestonWrap for some stuff it doesn't seem to have/know at the moment, one noticeable thing being Desktop Color Depth seeming to be returning an uninitialized value.
Hm, simplify the sh?
export HDCD_RESOLUTION="${DISPLAY_WIDTH}x${DISPLAY_HEIGHT}"
Those vars default to 640x480 if no res can be determined. No need for the if/else conditional chain.

Didn't know that was an option heh
This is why I added it
You should check out control.txt and device_info.txt sometime
We have a few useful things in our toolbox
which control.txt. 
Will that return the correct width x height every time too? I currently have my library set to swap them if it thinks they're swapped.
gooooood
The download and unpack works fine
<@&1216123318122577972> Any for testing knulli? TrimUI SP folks might enjoy this?
SteamLink
Figures my crossmix won't load up :v
Time to leave it forever
Can't test steamlink on it if I can't boot it
I just got Knulli flashed for my TSP, results soonish
...huh, putting the zip in autoinstall on TSP/Knulli crashes PortMaster and seems to lock things up for some reason
whats the point even trying, you cant run westonpack on Crossmix anyway
It's what was in my tsp at the time
no cannoli for you
Darn
Is it? TSP is usually the culprit for many things.
It is! The failed import messages tell me that my mapping for the frame data is going wrong somewhere
It doesn't seem to be the heap allocation as that shows up properly... hmmmm
Oh right, the TSP has a PowerVR gpu, not mali
WHOOPS
I swtg if I have to remap the frame JUST for the TSP :v
I think we need some vivante devices just to fuck with you
Or forget the TSP entirely
Yep
Yes
Won't prevent people from manually getting it and then complaining. :v
Oh. Gosh you guys have this stuff figured out huh
...play video games :v
I mean... I probably COULD get the TSP working... but I should probably focus on getting the H700 versions to not being a coin flip if the stream starts
Muos definitely needs some kind of custom controller setup, I wonder if we can provide that somehow
My next thing to implement is something that complains loudly if it detects an unsupported port being installed with Autoinstall. <_<
Controls are all wrong on the 40xx
I also have consistent drops when trying to connect while a non-steam game is loaded up (Xbox/MS Store game)
drops as in stutters or complete stream drops?
It refuses to connect
Huh. You're not going through Big Picture first?
Can you reupload that log? Or is that it?
That’s it
Only crashes
May have something to do with resolution.
I think Expedition 33 doesn't like 640x480.
Do you still have that "Change to streaming device resolution" setting on?
Yep
Hmmm. Have you have had any issues starting stream with that setting on?
Or just when launching a game
Starting stream sometimes as well
Okay, just making sure
Yes yes...
I only got it to work because I used my PC mouse to start it up.
...huh
SteamLink did not enjoy initiating big picture mode.
I was already in it when I tried connecting.
Maybe a poor wifi connection?
No, I get similar results, and I'm literally next to my router
So am I
Hm.
Let me try using my 2.4g network real quick, out of curiosity.
Nah, Big Picture still being a big butt
I wonder...
Okay, it has to do with when it initializes the stream
And when big picture is already open, it's fine...
Not always
In many cases I have to completely restart Steam.
It's almost like it doesn't do a proper cleanup or something after a crash.
But if restarting Steam fixes it, that implies it's a computer sided thing?
Well, I don't have a steamdeck to test if it's wonky elsewhere.
But if a session gets stuck somehow and stream gets rejected due to one already "active" or something, idk.
Let's see if it has to do with the resolution switching.
I think it's the resolution changes, like you said... I turned off the "Switch to streaming client resolution" option
Yeah
It also seems to dislike switching fullscreen focus
Yup immediately connects
My issues on stream start may be because my host computer is Linux based too, and it seems to hate fullscreening in general
Does yours always work without the res switch?
Yeah so far
I think it has to do with aspect ratio more than res
I have a 1440p monitor and 1920x1080 rocknix always works with switching res.
Probably. The cropping might throw it off it changes too wildly.
hmm... I wonder if setting the Resolution Limit to some smaller 16:9 in Steam Link would help
I think it has a 480p option in there
Actually, it may be because my gpu doesn't support anything lower than 800x600 by default.
...so if TrimUI will work, it may be just fine there.
I don't think it's GPU supports the frame format I'm using at the moment, but I can make a new mapper for it
I'm almost positive part of the problem is my gpu can't negotiate a 640x480 resolution, the lowest it goes is 800x600 so the aspect ratio matches but it mostly fails except in some odd lucky cases.
So the handshake may fail due to gpu saying "sorry pal can't do that".
And Steam Link doesn't let you set non 16:9 resolutions under Resolution Limit other than your native resolution... darn
And that part I can't change, cause it's baked in
So it's really a case-by-case thing huh
Yeah I'm certain it's gonna be entirely based on the host gpu driver.
I don't recall if the Mini v1 had the same issue though and it was 640x480
My v2 does have a near 1:1 ratio though
Yeah the V2 probably won't work with res switch
Like retroid mini v1?
That wasnt 640x480
Oh yeah 1280x960 right?
The V1 didn't have the issue because it was- yep
So step 1 for Troubleshooting: Disable Auto Resolution switching on the Host Steam Streaming Settings.
Mini v2 connects but has no image. Black screen except for the overlays.
Black screen even when I don't do res switch though.
1240x1080 interesting, I have audio and input but no visual.
It doesn't crash though.
Well I see two issues...
Or rather one issue
I think you loaded up the Flip2 dtb somehwo
I did not.
I'm on the Mini v2.
If I'd loaded the Flip2 dtb then my ES would be outside the display.
Then uh...
bash
DEVICE_INFO_VERSION=0.1.13
PM_VERSION=2025.05.08-1120
CFW_NAME=ROCKNIX
CFW_VERSION=20250517
CFW_GLIBC=240
DEVICE_NAME=Retroid Pocket Flip2
DEVICE_CPU=SD865
DEVICE_ARCH=aarch64
DEVICE_RAM=7
DEVICE_HAS_ARMHF="Y"
DEVICE_HAS_AARCH64="Y"
DEVICE_HAS_X86="N"
DEVICE_HAS_X86_64="N"
DISPLAY_WIDTH=1920
DISPLAY_HEIGHT=1080
DISPLAY_ORIENTATION=0
ASPECT_X=16
ASPECT_Y=9
ANALOG_STICKS=2```
OH okay phew
Ok I think I copied the wrong log 😄
The log giveth, the log taketh.
16:9 still works like a charm
Oh, so you were using the res switch thing again?
Oh I getcha
On the mini v2 it's got issues with both settings.
I thought you meant 16:9 on the V2
And on the 40xxh it just doesn't wanna work because lowres.
Drop this little doohickey in your libs.aarch64 please
It works with that but the visual is cut off on the right and bottom.
Oh lemme double check my settings
Yeah with auto res and switch it’s zoomed in
Wouldn't you want to dynamically allocate the buffer based on the resolution then?
I'm surprised it doesn't crash SUPER hard with that honestly.
Unfortunately V4L2 Request wants the buffer size BEFORE the stream starts, and the frame doesn't have that information until the first packet is decoded
So I have to manually take the screen resolution and find the right alignment
If this one doesn't work, I'll plug away at it on my Mini V2 until I find it
Unfortunately same thing.
But you know the resolution unless we're not doing the resize.
Is the scaling bigger/smaller/same?
Same.
...oh it's something else then uh
Wait... wait no, I left debug code in for the 640x480 -> 800x600 attempt
That's why the texture is too small
WHAT
Okay let me figure it out instead of doing this silliness, sorry
All good. You are the only one capable of this feat thus far so don’t beat yourself up.
Okay so it wasn't buffer size, it was current screen resolution scaled to frame aspect ratio...
But uh... since we can't change the resolution of the context mid stream, we're gonna be stuck with 16:9 all the time
Updated files
So, I think that just leaves the TSP support then, bar any other testing failures?
Oh, and controller mapping
Will try it in a few.
Sorry got wrapped up in fixing some of my ports.
Bottom is still cut off
Can't see the bottom HUD with the button glyphs
Mind sharing the Texture Rect from your log please?
...is your monitor 16:10?
Idk. 2560x1440.
oh hello new error message
shell.aarch64: ../../src/external/testffmpeg_rpi/external/hello_wayland/pollqueue.c:301: poll_thread: Assertion `npoll < POLLQUEUE_MAX_QUEUE - 1' failed.
I really gotta figure out how to clean my phone camera
Okay so
It's that "change resolution to streaming client" again
If you have it off, the 16:9 crop works
If you have it on, it still tries to crop to 16:9
So let me check somethingggg...
Added aspect ratio calculation and matching, might only work for Mini V2 for now
I sleep now
Fixed launch script and minor fix to V4L2 detection
Yeah this works!
Gimme a few and I'll check that it still aligns with RP5/FLIP2.
Pog
I no longer have a Mini v1 to test though,
It would be something to be able to force the video stream to shrink to fit varying resolutions without requiring the desktop to change its own resolution.
Avoid the <800x600 problem.
Flip2 is still good
Yup
What uh… what GPU do you have?
I don't think mine supports <800x600 either, at least Windows won't show it
Unless I magically fixed something with that aspect code
Nvidia RTX 4070
Yeah sometimes it would work usually not.
Ohhh
It wasn't consistent is all.
Okay gotcha
Whereas on the Mini and Flip2 it works every time.
I'll run it back like 10 more times to see if the aspect stuff is magic
And we determined it was most likely the resolution because turning the switch off on Steam side made it consistent.
Yeah, give the new version a shot. I'm at 6/6 proper launches
Gonna fire up the 40xxh then.
No go. Unless there's anything besides the sh and handecoder to replace?
I'm also on muOS Pixie... uhhhh
When your screen switches, does it stretch on the monitor or crop?
It changes to 800x600 (won't do 640x480) and stretches. I get black bars on the sides.
Vertically.
Right. Mine stretches with no black bars :v
uhhhh
Ah no, I must have hit a lucky streak
Just got it to fail
Yeah I managed to make it work once.
Might be game dependent as well. Dead Cells has never once run without crashing.
But this worked, too bad the controller is still bad.
Yeah I think I'm gonna pause on TSP and try to get the controllers going. I wonder if SDL is remapping it or something
Can't wait to play some Ready or Not on my 3" screen lol
Would my 120Hz refresh rate have anything to do with things?
😂 I bsod’d myself creating a custom resolution for my card
Lololol
ouchie
640.480@120hz =windows vomit
Nope. One 32" 2560x1440 monitor.
Hmmm.
Ok I managed to add a custom res to my display.
BUT IT STILL CRASHES.
SteamLink does, not my pc.
I had a feeling
But no more letterboxing
Hum hum
I think it just needs more testers.
I may be hardware limited.
On the host side.
Wait, do all muOS devices use muOS-keys now?
Because right now control.txt is still looking for deeplay-keys
I have no idea
But SteamLink is reporting that it wants muOS-keys
And /tmp/gamecontrollerdb.txt is empty :v
All the other ports work fine though?
.. is it cause we're not using gptokeyb?
Experiment time!
Oh gptokeyb would read /tm/gamecontrollerdb.txt anyway in this case
Okay, good to know
I was able to reconnect but I got a black screen until I changed the game to fullscreen mode and reconnected.
Probably need to add a few disclaimers/troubleshootings to the readme.
Did that work before though? If so, it might be my hardware decode mucking things up
I think I have an idea on how to fix resolution changes though... Gimme a bit.
That...doesn't seem like an urgent thing though.
I mean, crashing seems more urgent than controls to me?
Crashing in a specific circumstance?
That's what the readme is for. "Your game isn't fullscreen dummy"
Mm true.
Let me flash KNULLI for my rg35sp, that might shed some light if the controls work there
Just leaving this here for me
'19000000010000000100000000010000,Anbernic RG35XX-SP Controller,platform:Linux,b:b3,a:b4,dpdown:h0.4,leftx:a0,lefty:a1,lefttrigger:b12,dpleft:h0.8,rightshoulder:b8,leftshoulder:b7,righttrigger:b13,dpright:h0.2,back:b9,start:b10,dpup:h0.1,y:b6,x:b5,guide:b11,'
# From setting NO configs (Unknown)
'19000000010000000100000000010000,odroidgo2 joypad,a:b1,b:b0,dpdown:b7,dpleft:b8,dpright:b9,dpup:b6,guide:b10,leftshoulder:b4,leftstick:b12,lefttrigger:b11,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b13,righttrigger:b14,start:b15,x:b2,y:b3,platform:Linux,'
# Imported by Steam Link with configs allowed (Mismapped)
Added controller with mapping 19001a2a010000000100000000010000,Anbernic RG35XX-SP Controller,a:b0,b:b1,x:b3,y:b4,back:b9,start:b10,leftshoulder:b6,rightshoulder:b7,dpup:h0.1,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,rightx:a0,righty:a1,lefttrigger:b8,righttrigger:a2,crc:2a1a,platform:Linux,
# Imported by Steam Link with configs DISALLOWED (Mismapped)
Added controller with mapping 19001a2a010000000100000000010000,Anbernic RG35XX-SP Controller,platform:Linux,b:b3,a:b4,dpdown:h0.4,leftx:a0,lefty:a1,lefttrigger:b12,dpleft:h0.8,rightshoulder:b8,leftshoulder:b7,righttrigger:b13,dpright:h0.2,back:b9,start:b10,dpup:h0.1,y:b6,x:b5,guide:b11,```
Error: libgbm.so.1: cannot open shared object file: No such file or directory
Error: libGL.so.1: cannot open shared object file: No such file or directory
Please post the full log.txt, those two particular errors are expected in some cases.
Unfortunately muOS usage is still unstable. You'll have around a 30% success rate with the current build, and it may even still crash when your steaming computer's resolution changes.
I believe ROCKNIX is the only cfw for the H700 devices that is stable on launching the stream.
Should me try to install ROCKNIX?
If you're specifically wanting to use your device for Steam Link (and only Steam Link) right now, it's probably more compatible.
Oh hello, I try to install it in a r36s with arkOS, but I have troubles with a dependency, it ask for GLIBC 2.34 and currently I have GLIBC 2.30, there is a package that could work with the old GLIBC? Or is not possible to run it in arkOS :c
This is only for Rocknix
qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in "/roms/ports/steamlink/Qt-5.14.1/plugins" even though it was found.
This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem.
Available platform plugins are: eglfs, linuxfb, minimal, minimalegl, offscreen, vnc, xcb.
/storage/roms/ports/SteamLink.sh: line 93: 5331 Aborted (core dumped) ./"bin/shell.${DEVICE_ARCH}"
it wont launch on my device
i am on rocknix
rg35xxh
this port is maintained by Jeod on an external repo https://jeodc.github.io/RHH-Ports/
You can try to contact him for support.
any change to get this working on Trimui Smart Pro?
Read above
