SysDVR - Stream gameplay directly to a pc

SysDVR
Stream/record gameplay to a PC via USB or network.
upload_2019-10-21_9-21-20.png

Update: Version 5.0 has been released with low latency streaming, be sure to check it out on github.

This is an experimental sysmodule that allows capturing the running game output on a pc.
As this uses switch's built-in game recording feature it has the same limitations: 720p@30fps and only works on the games that enable it, but by sending the video to another device there's no time limit to the recording.

There are two modes: USB and Network, both work fine but USB is slightly better, at least compared to wifi, didn't try with a LAN adapter.
Players like mpv or vlc can play the stream directly so you can use any screen recording applications but it's also possible to write the stream directly to a file.
To use the USB version you need the UsbStream program you'll find on the github page, it's built using .NET 5 and works on both windows and linux, haven't tried mac but in theory it should work too.

You can see it in action in the two teasers i posted while working on it:



As you can see it's not meant for remote play, but it can work as a basic capture card, audio output is uncompressed so it can be useful for ripping OSTs .

Download and wall of text guide on github: https://github.com/exelix11/SysDVR/
To get notified of updates you can follow this thread or join my new discord server (i also have a twitter account where occasionally post development updates).

Please make sure to read the full readme before reporting issues as it explains the most common problems you may encounter.
 
Last edited by exelix11,

M7L7NK7

Well-Known Member
Member
Joined
Oct 16, 2017
Messages
3,905
Trophies
1
Website
youtube.com
XP
5,977
Country
Australia
If the version matches v1.2.6.0 then it should be set up fine, for some reason sometimes it shows a different name, try rebooting the switch and it should work.

Still the same, it gives different errors each time and sometimes it actually shows the game streaming for a second then exits
 

Phenj

Well-Known Member
Member
Joined
May 22, 2018
Messages
493
Trophies
0
XP
1,895
Country
Italy
which arg command did you use? I dont see any mention of it in the readme
A run.bat with "UsbStream video mpv C:\Users\[youruser]\Desktop\Stream\mpv\mpv.com audio mpv C:\Users\[youruser]\Desktop\Stream\mpv\mpv.com" inside
that's just my path
 

Justinde75

Well-Known Member
Member
Joined
Feb 14, 2016
Messages
2,529
Trophies
1
Age
23
XP
4,554
Country
Germany
A run.bat with "UsbStream video mpv C:\Users\[youruser]\Desktop\Stream\mpv\mpv.com audio mpv C:\Users\[youruser]\Desktop\Stream\mpv\mpv.com" inside
that's just my path
even after putting it in with my exact path usbstream just closes
 

HarvinMalig

Member
Newcomer
Joined
Jul 12, 2019
Messages
9
Trophies
0
Age
35
XP
98
Country
Philippines
how to use network stream? the mpv.exe close when i put the bat file (mpv.exe tcp://%my switch ip%:6666 --no-correct-pts --fps=30) also the command promp mpv autoclose upon opening thus cant be used, im using sx os and put the titles on sxos folder/titles
 

SebTheThing

Member
Newcomer
Joined
Apr 21, 2019
Messages
14
Trophies
0
Age
22
XP
251
Country
France
I'm not sure, did you specify 30fps in ffmpeg ? the h264 format doesn't include timing info so the converter may have just assumed something like 25fps.

Nope, doesn't feel like this is working. I just tried it out, and as the .264 file is already slowed down, converting it and changing the framerates does not change anything, it just outputs a slowed down file with a higher framerate :/ I don't really know what to do here, kinda stuck
 

Hambrew

Well-Known Member
Member
Joined
Oct 9, 2018
Messages
597
Trophies
0
Location
Yoyle City
XP
1,596
Country
United States
SysDVR
Stream/record gameplay to a PC via USB or network.
View attachment 183541

This is an experimental sysmodule that allows capturing the running game output on a pc.
As this uses switch's built-in game recording feature it has the same limitations: 720p@30fps and only works on the games that enable it, but by sending the video to another device there's no time limit to the recording.

There are two modes: USB and Network, both work fine but USB is slightly better, at least compared to wifi, didn't try with a LAN adapter.
Players like mpv or vlc can play the stream directly so you can use any screen recording applications but it's also possible to write the stream directly to a file, in that case video format is raw h264 data, you can convert it to mp4 with ffmpeg and audio is a stream of uncompressed 16-bit little-endian stereo samples at 48kHz, you can play it with audacity.
To use the USB version you need the UsbStream program you'll find on the github page, it's built using .NET core 3 and works on both windows and linux, haven't tried mac but in theory it should work too.

You can see it in action in the two teasers i posted while working on it:

As you can see it's not meant for remote play, but it can work as a basic capture card, audio output is uncompressed so it can be useful for ripping OSTs .

Download and wall of text guide on github: https://github.com/exelix11/SysDVR/
Please make sure to read the full readme before reporting issues as it explains the most common problems you may encounter.
y a a a s
 

Unity150_magickavoxel

Well-Known Member
Member
Joined
Jan 6, 2018
Messages
120
Trophies
0
Age
23
XP
853
Country
Canada
Was playing as normal then this happened

Fatal error. System.AccessViolationException: Attempted to read or write protected memory. This is often an indication that other memory is corrupt.
Fatal error. Internal CLR error. (0x80131506)
at System.Enum.GetEnumInfo(System.RuntimeType, Boolean) at LibUsbDotNet.NativeMethods.BulkTransfer(LibUsbDotNet.DeviceHandle, Byte, Byte*, Int32, Int32 ByRef, UInt32)

at LibUsbDotNet.NativeMethods.UnrefDevice(IntPtr)
at LibUsbDotNet.NativeMethods.BulkTransfer(LibUsbDotNet.DeviceHandle, Byte, Byte*, Int32, Int32 ByRef, UInt32)
at LibUsbDotNet.NativeMethods.UnrefDevice(IntPtr)
at LibUsbDotNet.LibUsb.UsbEndpointBase.Transfer(IntPtr, Int32, Int32, Int32, Int32 ByRef)
at LibUsbDotNet.Device.ReleaseHandle()
at LibUsbDotNet.LibUsb.UsbEndpointBase.Transfer(System.Object, Int32, Int32, Int32, Int32 ByRef)
at System.Runtime.InteropServices.SafeHandle.InternalRelease(Boolean)
at UsbStream.UsbDevStream.Read(Byte[], Int32, Int32)
at System.Runtime.InteropServices.SafeHandle.Dispose(Boolean)
at System.IO.Stream.Read(System.Span`1<Byte>)
at System.Runtime.InteropServices.SafeHandle.Finalize()
at UsbStream.Program.<StreamLoop>g__ReadToSharedArray|14_1(<>c__DisplayClass14_0 ByRef)
at UsbStream.Program.StreamLoop(IOutTarget, UsbStream.UsbDevStream, StreamKind)
at UsbStream.Program+<>c__DisplayClass16_0.<Main>b__2()
at System.Threading.ThreadHelper.ThreadStart_Context(System.Object)
at System.Threading.ExecutionContext.RunInternal(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object)
at System.Threading.ThreadHelper.ThreadStart()
 

shadow1w2

Still here.
Member
Joined
Mar 16, 2004
Messages
1,713
Trophies
2
XP
1,810
Country
United States
Oh nice.
A new way to capture footage in handheld mode, wonderful.
Hopefully this could be used for homebrew too eventually if not already.
 

alan_mugiwara

Active Member
Newcomer
Joined
Mar 29, 2017
Messages
33
Trophies
0
Location
Brazil
Website
3dsounada.blogspot.com.br
XP
117
Country
Brazil
That's great, thanks!..

BTW how to run wifi streaming in Windows version of mpv.exe?..
It's just "Drop files or URLs to play here" string, but I cannot put
Code:
tcp://<my switch ip address>:6666 --no-correct-pts --fps=3

View attachment 183546

Solved, thanks, one must create .bat file with mpv.exe tcp://%ip-address%:6666 --no-correct-pts --fps=30
it works for you?
 

MrVtR

Well-Known Member
Member
Joined
Sep 30, 2017
Messages
311
Trophies
0
Age
23
XP
1,917
Country
Brazil
Is it possible a port to other consoles? Like 3ds and wiiu. I know that 3ds have some apps to to stream the video(like KitKat),but most of times,it isn't fast
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
    Psionic Roshambo @ Psionic Roshambo: I did use a bot for Diablo III though but no ban there lol