Offical Discord For PinBox: Link
Gbatemp Link: https://gbatemp.net/threads/pinbox-desktop-remote-streaming.493302/
Movie stream : you can accept the delay (around 1~2 secs) to exchange with FPS and smoothy even stream 3D movie. Some game can still use this mode if no require realtime action.
Game Stream: lag and delay is not acceptable in some action game so this mode is optimized for it. Allow latency ~100ms but it will be abit lag at sometime or with low-end wifi router
---------------------------------------------------------------
v0.5.9 test only. ( this version was implemented new way to transfer data also add additional data slot for sound )
experimented for test only.
Server: Link
Client: Link CIA
---------------------------------------------------------------
Download Client v0.5.8: Link
Download Server v0.5.8: Link
Hope everyone can help me improve it for a better experiment.
Source Client : https://github.com/namkazt/NKStreamer
Source Server : https://github.com/namkazt/NKStreamer-Server-
Banner done by : @farfar123
Older Version Download : Link
Platform: Windows (Mac later)
How to Use:
1, Config server: in root folder of server have "server.cfg" file. Inside it have port config. Please enter your or keep it as default (1234)
2, After run server it will list a list of IP address. please select 1 ( normally it will be the last IP )
3, start app . enter IP and port and press connect.
Change Logs:
Version 0.5.8
Change Logs:
- add mutex for process data ( that is the main cause crash on server )
- fix circle pad data read
- add config for mouse support in profile
- implement libconfig to save configable variables
- mouse support :
1, if mouse support = false -> circle pad using as d-pad
2, if mouse support = true -> circle pad using as mouse ( ZL and ZR become mouse left and right - new 3ds only )
- change profile at runtime ( from 3ds client )
===================================================
[NEXT] v0.6:
Done:
- Reactivate multi threads for sockManager. so now it have a new way to transfer data.
- Change libjpeg to turbojpeg - performance + 5~10%
- remove libsfil libjpeg libpng libwebp ( no need for now )
- Add UI options to change how many threads run on your devices ( Old 3ds should be 3~4 - New 3ds can up to 6~8 )
WIP:
- Xbox input and GamePad Driver Emulator -> input will directly understand as from a gamepad.
- Optimized Video stream format (50%)
- Writing new method for server that allow split frame into small pieces ( in order to work perfectly with multithreads socket) (50%)
===================================================
What todo next:
- New streaming data format optimized for speed. ( i have the ideas about it )
- Sound
- Zoom
- Graphic display current use sd2d and sfil what is no longer support. Implement new method will be
more optimize for speed and stable.
===================================================
Old version change logs.
===================================================
Gbatemp Link: https://gbatemp.net/threads/pinbox-desktop-remote-streaming.493302/
NKStreamer - [Deprecated ]
version 0.5.8
NKStreamer is a tool using for stream PC desktop screen (or windows) to 3DS with input. Im start working on it from 19/07/2017.
You can use it for play video, play game
NKStreamer is a tool using for stream PC desktop screen (or windows) to 3DS with input. Im start working on it from 19/07/2017.
You can use it for play video, play game
Q&A:Movie stream : you can accept the delay (around 1~2 secs) to exchange with FPS and smoothy even stream 3D movie. Some game can still use this mode if no require realtime action.
Game Stream: lag and delay is not acceptable in some action game so this mode is optimized for it. Allow latency ~100ms but it will be abit lag at sometime or with low-end wifi router
---------------------------------------------------------------
v0.5.9 test only. ( this version was implemented new way to transfer data also add additional data slot for sound )
experimented for test only.
Server: Link
Client: Link CIA
---------------------------------------------------------------
Download Client v0.5.8: Link
Download Server v0.5.8: Link
Hope everyone can help me improve it for a better experiment.
Source Client : https://github.com/namkazt/NKStreamer
Source Server : https://github.com/namkazt/NKStreamer-Server-
Banner done by : @farfar123
Older Version Download : Link
Platform: Windows (Mac later)
How to Use:
1, Config server: in root folder of server have "server.cfg" file. Inside it have port config. Please enter your or keep it as default (1234)
2, After run server it will list a list of IP address. please select 1 ( normally it will be the last IP )
3, start app . enter IP and port and press connect.
Change Logs:
Version 0.5.8
Change Logs:
- add mutex for process data ( that is the main cause crash on server )
- fix circle pad data read
- add config for mouse support in profile
- implement libconfig to save configable variables
- mouse support :
1, if mouse support = false -> circle pad using as d-pad
2, if mouse support = true -> circle pad using as mouse ( ZL and ZR become mouse left and right - new 3ds only )
- change profile at runtime ( from 3ds client )
===================================================
[NEXT] v0.6:
Done:
- Reactivate multi threads for sockManager. so now it have a new way to transfer data.
- Change libjpeg to turbojpeg - performance + 5~10%
- remove libsfil libjpeg libpng libwebp ( no need for now )
- Add UI options to change how many threads run on your devices ( Old 3ds should be 3~4 - New 3ds can up to 6~8 )
WIP:
- Xbox input and GamePad Driver Emulator -> input will directly understand as from a gamepad.
- Optimized Video stream format (50%)
- Writing new method for server that allow split frame into small pieces ( in order to work perfectly with multithreads socket) (50%)
===================================================
What todo next:
- New streaming data format optimized for speed. ( i have the ideas about it )
- Sound
- Zoom
- Graphic display current use sd2d and sfil what is no longer support. Implement new method will be
more optimize for speed and stable.
===================================================
Old version change logs.
===================================================
Update v0.5.7:
------------------------------------------------------------------
Fix minor bugs and some critical bug on server
Rewrite Input handler.
[Movie Mode] is not stable and slow ( please do not use it if you do not want to get a crash )
Mouse is added but it not working as i expected so just leave it here to testing.
Message: Video mode is abit low frame rate ( im trying to improve it in next version )
Client v0.5.6:
- fix some crash bug on server
- fix freeze bug on threads ( mostly done with it )
- add some new configable option :
---> Threads number : number of thread will run ( select your self depend on your device )
---> Frame Quality : image quality ( 10 to 100 )
---> Streaming Mode : Movie stream or Game Stream
---> Split frame mode : [Not active for now]
Server v0.5.6:
- fix memory leak on capture frame.
- fix some unstable method
- add Split frame mode.
===================================================
v0.5.5 - UI Revamp
Change:
- UI revamp
- demo new virtual keyboard input
Issues:
- Reconnect have problem so don't do it ( i want to give out this version ASAP so you guy can test the input )
===================================================
v0.5.1 - Playing Stardew Valley in 3DS
- fix possible crash on client
- add mutex . texture drawing now thread-safe.
- improve streaming.
===================================================
v0.5a:
- fix bugs on server and client cause crash ( not all, still have some bugs )
- edit UI, add new stream button. Connect now do not auto matic stream video ( but input do )
- add Input Redirection and config:
===================================================
v0.4.1a Server Update:
- Add monitor index in config file. Used to capture monitor
===================================================
v0.4a
First Note: Please read
- this version release do not include Input Controller ( so don't ask if it have or not )
- this version for alpha testing only so it may crash or something. use at your own risk.
- please report any bug or crash in this thread and step to reproduce.
Change logs:
- Server: Port config
- UI: IP Input
- Rework on socket thread system that allow easy config for multi thread or not ( but seem like multi socket thread is not much better than 1 ).
- Add option : Movie stream and Game Stream. ( currently hard code to test Mixed mode ( between Movie stream and GameStream )
===================================================
v0.3
FPS: 29~30
Delay: 0.3 sec ?
Input: not implement yet
UI: not implement yet
Sound : not implement yet
3D view: not implement yet
change:
- Add Theading for SocketManager.
- Add Webp ( not implement yet ) it seem like better quality and smaller.
Note: FPS can be more on good wifi device.
thinking about changing to UDP socket. because streaming with TCP have more delay if net glitch. UDP would be better.
Release will be on v0.4 when UI is added because current IP is fixed in code so it only work on my PC for now.
===================================================
v0.2
FPS: around 25~30
Delay: 0.5 sec ?
Input: not implement yet
UI: not implement yet
Sound : not implement yet
3D view: not implement yet
change:
- Completely rewrite server from Golang to C++
===================================================
v0.1
FPS: 15
Delay: 0.5 sec ?
Input: not implement yet
UI: not implement yet
Sound : not implement yet
3D view: not implement yet
------------------------------------------------------------------
Fix minor bugs and some critical bug on server
Rewrite Input handler.
[Movie Mode] is not stable and slow ( please do not use it if you do not want to get a crash )
Mouse is added but it not working as i expected so just leave it here to testing.
Message: Video mode is abit low frame rate ( im trying to improve it in next version )
Client v0.5.6:
- fix some crash bug on server
- fix freeze bug on threads ( mostly done with it )
- add some new configable option :
---> Threads number : number of thread will run ( select your self depend on your device )
---> Frame Quality : image quality ( 10 to 100 )
---> Streaming Mode : Movie stream or Game Stream
---> Split frame mode : [Not active for now]
Server v0.5.6:
- fix memory leak on capture frame.
- fix some unstable method
- add Split frame mode.
===================================================
v0.5.5 - UI Revamp
Change:
- UI revamp
- demo new virtual keyboard input
Issues:
- Reconnect have problem so don't do it ( i want to give out this version ASAP so you guy can test the input )
===================================================
v0.5.1 - Playing Stardew Valley in 3DS
- fix possible crash on client
- add mutex . texture drawing now thread-safe.
- improve streaming.
===================================================
v0.5a:
- fix bugs on server and client cause crash ( not all, still have some bugs )
- edit UI, add new stream button. Connect now do not auto matic stream video ( but input do )
- add Input Redirection and config:
//-----------------------------------------------
// Input mapping profiles
//-----------------------------------------------
// profile can be change on run-time to fit with application
// or game you are playing
//-----------------------------------------------
input =
(
{
name = "Default";
btn_A = "L";
btn_B = "K";
btn_X = "I";
btn_Y = "J";
btn_DPAD_UP = "W";
btn_DPAD_DOWN = "S";
btn_DPAD_LEFT = "A";
btn_DPAD_RIGHT = "D";
btn_START = "Z";
btn_SELECT = "X";
btn_L = "U";
btn_R = "O";
btn_ZL = "Y";
btn_ZR = "P";
//---------------------------------------------
// TODO: add circle mapping, and mouse mapping.
//---------------------------------------------
} // NOTE: add "," here if you add new profile bellow
//---------------------------------------------
// Add your custom profile here
// custom profile must have exactly same field like default
// but you can change the mapping.
//---------------------------------------------
);
// Input mapping profiles
//-----------------------------------------------
// profile can be change on run-time to fit with application
// or game you are playing
//-----------------------------------------------
input =
(
{
name = "Default";
btn_A = "L";
btn_B = "K";
btn_X = "I";
btn_Y = "J";
btn_DPAD_UP = "W";
btn_DPAD_DOWN = "S";
btn_DPAD_LEFT = "A";
btn_DPAD_RIGHT = "D";
btn_START = "Z";
btn_SELECT = "X";
btn_L = "U";
btn_R = "O";
btn_ZL = "Y";
btn_ZR = "P";
//---------------------------------------------
// TODO: add circle mapping, and mouse mapping.
//---------------------------------------------
} // NOTE: add "," here if you add new profile bellow
//---------------------------------------------
// Add your custom profile here
// custom profile must have exactly same field like default
// but you can change the mapping.
//---------------------------------------------
);
===================================================
v0.4.1a Server Update:
- Add monitor index in config file. Used to capture monitor
===================================================
v0.4a
First Note: Please read
- this version release do not include Input Controller ( so don't ask if it have or not )
- this version for alpha testing only so it may crash or something. use at your own risk.
- please report any bug or crash in this thread and step to reproduce.
Change logs:
- Server: Port config
- UI: IP Input
- Rework on socket thread system that allow easy config for multi thread or not ( but seem like multi socket thread is not much better than 1 ).
- Add option : Movie stream and Game Stream. ( currently hard code to test Mixed mode ( between Movie stream and GameStream )
===================================================
v0.3
FPS: 29~30
Delay: 0.3 sec ?
Input: not implement yet
UI: not implement yet
Sound : not implement yet
3D view: not implement yet
change:
- Add Theading for SocketManager.
- Add Webp ( not implement yet ) it seem like better quality and smaller.
Note: FPS can be more on good wifi device.
thinking about changing to UDP socket. because streaming with TCP have more delay if net glitch. UDP would be better.
Release will be on v0.4 when UI is added because current IP is fixed in code so it only work on my PC for now.
===================================================
v0.2
FPS: around 25~30
Delay: 0.5 sec ?
Input: not implement yet
UI: not implement yet
Sound : not implement yet
3D view: not implement yet
change:
- Completely rewrite server from Golang to C++
===================================================
v0.1
FPS: 15
Delay: 0.5 sec ?
Input: not implement yet
UI: not implement yet
Sound : not implement yet
3D view: not implement yet
Last edited by namkazt,