Commit graph

200 commits

Author SHA1 Message Date
Johannes Baiter
74d39e6314 lib: Add support for trigger effects and controller haptics
By default, no trigger effects and haptics are requested from the
console, lib users have to explicitly enable them for a session by
setting the new `enable_dualsense` flag on the session's
`ChiakiConnectInfo` struct.

Trigger Effects are simply a new Takion message type `11`  and
include the type of each effect and the effect data (10 bytes) for
each of the triggers. They are exposed as a new Chiaki event type
`CHIAKI_EVENT_TRIGGER_EFFECTS`.

Haptic effects are implemented in the protocol as a separate audio
stream, for which packets are only sent when there are actually
effects being played, i.e. silence is not explicitly encoded.
Audio data is 3kHz little endian 16 bit stereo sent in frames of
10 samples every 100ms. Note that the Takion AV header has the
codec field set to Opus, however this is not true.
Users can provide a new `ChiakiAudioSink` dedicated to haptics
via the new `chiaki_session_set_haptics_sink` API, which behaves
identical to the regular audio sink, except that it has a lower
frequency.
2022-11-01 18:29:05 +01:00
Florian Märkl
9ab84e6054
Prefer fixed local Port for Discovery 2021-01-10 16:01:37 +01:00
Florian Märkl
96cbd5d9b8
Fix Madgwick Filter for Orientation 2021-01-09 10:53:50 +01:00
Florian Märkl
cb827a525a
Add Motion to Feedback 2021-01-06 21:50:13 +01:00
Florian Märkl
32e1539c22
Add Orientation Tracker 2021-01-06 21:47:06 +01:00
Florian Märkl
042e02eb3e
Add Rumble to GUI 2021-01-01 13:56:30 +01:00
Florian Märkl
81984b7d48
Add Rumble to Lib 2020-12-31 23:45:47 +01:00
Florian Märkl
89c3175d71
Add fallback if getnameinfo fails 2020-12-30 12:37:28 +01:00
Florian Märkl
e6d18155af
Add H265 Streaming to GUI 2020-12-28 17:27:10 +01:00
Florian Märkl
c19c7869d5
Add Video Profile Auto Downgrade 2020-12-28 17:07:37 +01:00
H0neyBadger
1dfe88d74e
Add discovery system_version to ChiakiTarget translator () 2020-12-28 16:43:11 +01:00
Florian Märkl
7dd26f974f
Add new Console Icons to GUI 2020-12-28 16:43:11 +01:00
Florian Märkl
673a2de9c1
Move FFMPEG Decoder to lib 2020-12-28 16:43:11 +01:00
Florian Märkl
767e545f38
Fix Version Retry 2020-12-28 16:43:11 +01:00
Florian Märkl
8904c86a6d
Add Discovery and Wakeup for PS5 2020-12-28 16:43:11 +01:00
Florian Märkl
e2d1c11064
Finish new LaunchSpec 2020-12-28 16:43:10 +01:00
Florian Märkl
d4e1aa3b60
Fix Audio Parsing for PS5 2020-12-28 16:43:10 +01:00
Florian Märkl
a8d2c6c29f
Begin Stream v12 2020-12-28 16:43:10 +01:00
Florian Märkl
aa9939e93c
Preliminary PS5 Streaming 2020-12-28 16:43:08 +01:00
Florian Märkl
05812b7b7a
Finish PS5 Regist 2020-12-28 16:42:56 +01:00
Florian Märkl
20a7e9d123
Finish RpCrypt for PS5 Regist 2020-12-28 16:42:56 +01:00
Florian Märkl
21ef8fa018
Prepare Regist for PS5 2020-12-28 16:42:56 +01:00
Florian Märkl
dfc0f32ac2
Move Rest of CI to Sourcehut 2020-12-27 23:38:32 +01:00
Florian Märkl
bf929cacd0
Relicense under AGPL v3 only + OpenSSL () 2020-12-27 16:46:09 +01:00
Florian Märkl
4da09f75f3
Make Borealis GUI more generic to build () 2020-12-23 17:36:17 +01:00
Florian Märkl
ffb8851835
Add Congestion Control 2020-11-18 20:19:45 +01:00
Florian Märkl
ef7a97f6ae
Fix Congestion in Takion and add Test 2020-11-18 20:15:26 +01:00
Blueroom VR
ea79836f0f
Add Raspberry Pi Decoder (Fix ) () 2020-11-14 19:51:08 +01:00
Florian Märkl
a2ebf7e408
Disable Keyboard by default 2020-11-11 14:03:56 +01:00
Sven Scharmentke
4ed2e4d6a9
Add Text Input Support to Library () 2020-11-07 11:14:16 +01:00
Sven Scharmentke
59e6603256
Use ChiakiKeyState to 32bit fix key state overflow (Fix ) () 2020-11-04 11:45:05 +01:00
Florian Märkl
b70455d19b
Use SPDX Headers () 2020-10-26 18:56:13 +01:00
Florian Märkl
9200c0b893 Align FEC Units by 16 2020-10-22 23:43:07 +02:00
Florian Märkl
6052d9d7d7
Add Sleep Mode Trigger 2020-10-22 12:39:58 +02:00
Florian Märkl
4dac2253df
PS4 Firmware 8.0 Compatibility (Fix ) 2020-10-18 14:24:37 +02:00
Florian Märkl
736b4835df Add Key State Tracker 2020-07-12 19:29:29 +02:00
Florian Märkl
7d4cbccfbf
Add Touch Tracking Functions to Controller State 2020-07-02 19:57:36 +02:00
Florian Märkl
cd3d700df8
Add Touchpad to Feedback Sender 2020-07-02 19:40:34 +02:00
Florian Maerkl
02d026f205
Add Touchpad Feedback History Formatting 2020-07-02 19:18:20 +02:00
Florian Märkl
0b9f8798eb
Add Touches to Controller State 2020-07-02 19:17:15 +02:00
h0neybadger
44b6058e06 Remove redundant __SWITCH__ with CHIAKI_LIB_ENABLE_MBEDTLS definition 2020-05-18 14:02:53 +02:00
H0neyBadger
f35311bf61
Add Nintendo Switch chiaki-lib support () 2020-05-15 11:06:54 +02:00
Florian Märkl
4065791f4f
Fix some Alignment Issues 2019-11-06 21:06:51 +01:00
Florian Märkl
34b7d61295
Allow Video Callback to Fail 2019-11-01 17:00:28 +01:00
Florian Märkl
042e698749
Non-blocking connect 2019-10-29 15:35:59 +01:00
Florian Märkl
e3afc11a35
Add chiaki_discovery_wakeup() 2019-10-25 14:28:02 +02:00
Florian Märkl
4137a46af9
Refactor Android Settings 2019-10-20 14:45:18 +02:00
Florian Märkl
cf6829287a
Fix RP-Version 8.0 Compatibility, 2019-10-11 15:24:46 +02:00
Florian Märkl
b5ce69cb43
Add Regist with Np-AccountId (Fix ) 2019-10-09 19:28:46 +02:00
Florian Märkl
4361ba4583
Bump RP-Version to 9.0 for Session and Ctrl, 2019-10-08 18:02:47 +02:00