Armin Novak
ff7e91fed0
Removed unnecessary pulse context check.
2018-10-22 10:18:17 +02:00
Armin Novak
03dcfaf8db
Unified sound device reopen in a single function.
2018-10-22 10:04:02 +02:00
Norbert Federa
d35470f8af
rdpsnd: always call rdpsnd_server_send_formats
...
Since the rdpsnd_server_send_formats function is no longer exported
we must always call it, even if the rdpsnd server application uses
its own thread.
2018-10-18 10:21:15 +02:00
Armin Novak
3920c570dd
Fixed memory leak with audio formats.
2018-10-15 16:33:56 +02:00
Armin Novak
2cf0662559
Unified format support for rdpsnd.
2018-09-26 12:49:52 +02:00
Armin Novak
a83c805ade
Fixed format debug message.
2018-09-26 12:49:09 +02:00
Armin Novak
106dde9571
Working mic redirection for shadow server.
2018-09-26 12:49:09 +02:00
Armin Novak
28efbbc01f
Refactored audio_format* functions.
2018-09-26 12:49:09 +02:00
Armin Novak
114abad767
Removed use of strcpy.
2018-08-27 14:34:09 +02:00
Armin Novak
d90e5da865
Fixed unused label warning.
2018-08-24 13:40:36 +02:00
Armin Novak
98c254ffa0
Fixed invalid return value type.
2018-08-01 12:56:18 +02:00
Martin Fleisz
0ec9579013
rdpsnd: Fix sending of wave2 PDU
...
According to MS-RDPEA 2.2.3.10 the Wave2 PDU's header BodySize field
should be equal the size of the PDU minus the header (4 Bytes).
2018-07-11 15:06:31 +02:00
Armin Novak
4465bcfa86
Fixed remarks
2018-07-04 11:03:32 +02:00
Armin Novak
a554207c11
Added target dependencies.
2018-07-02 16:58:14 +02:00
Armin Novak
7cd25027ad
Fixed empty lib.
2018-07-02 16:38:21 +02:00
Armin Novak
373bfac9ab
Added support for WAVE2 PDU in server side audio channel.
2018-07-02 16:20:39 +02:00
Armin Novak
e44d10a3e0
Merge remote-tracking branch 'origin/pr/4701' into reconnect_fixes
2018-06-19 12:46:58 +02:00
Armin Novak
a716dc244c
Removed duplicate resource free.
2018-06-18 10:23:57 +02:00
Pascal J. Bourguignon
15f2bafeab
Cleaned up const char** -> char** for argv, since we definitely do modify the argv!
...
(we overwrite the password and pin arguments).
This implies changes in the argument parsing tests that now must pass a mutable argv
(copied from the statically declared test argvs).
Some other const inconsistency have been dealt with too.
2018-06-06 16:43:09 +02:00
David Fort
0255a7db15
Merge pull request #4654 from akallabeth/alsa_latency_patch
...
Return real alsa latency if buffer is filled.
2018-05-16 09:53:30 +02:00
Armin Novak
c078aee238
Return real alsa latency if buffer is filled.
2018-05-16 08:52:55 +02:00
Armin Novak
0cf4dcc016
Fix missing sound arrival time for wave2 PDU
2018-05-15 14:57:00 +02:00
Martin Fleisz
c4e8685a29
Merge pull request #4623 from akallabeth/mac_sound_backend_fix
...
Fixed mac sound backend initialization.
2018-05-04 13:08:45 +02:00
Armin Novak
87c19b30d0
Fixed uninitialized return and early resource cleanup.
2018-05-04 12:36:29 +02:00
Armin Novak
670c1190c4
Fixed formats supported by backend.
2018-05-04 09:44:06 +02:00
Armin Novak
17d43edafb
Fixed mac sound backend initialization.
2018-05-03 16:12:12 +02:00
Armin Novak
066cb52caa
Fixed treat_wave sample length and checks.
2018-05-03 10:08:56 +02:00
David Fort
d07d06b28c
rdpsnd: add support for wave2 PDU in client ( #2 )
...
To achieve this the announced version number is bumped to 8.
2018-04-16 08:56:09 +02:00
Armin Novak
3606b66cc3
Fix rdpsnd channel detached handling.
...
Do not play samples if detached, but handle every other message
just like with an attached channel.
2018-04-11 08:48:29 +02:00
Armin Novak
82ad911ee5
Added fake rdpsnd backend.
2018-04-09 17:39:08 +02:00
Armin Novak
030e9fc12f
Fixed channel duplicate disconnect handling
2018-04-09 11:27:54 +02:00
Armin Novak
3f712cab70
Fixed formatting of changed files.
2018-04-05 13:14:16 +02:00
Armin Novak
ec5dab973f
Initialized ALSA backend format.
2018-04-05 13:14:16 +02:00
Armin Novak
f89c1857b9
Rewrite of sound and microphone channels
...
The sound and microphone redirection channels (and in part TSMF)
did not properly decouple encoding/decoding from the backends used
to play/record sound.
Encapsulating encoding/decoding in rewritten freerdp_dsp_* functions
with variable backends, simplifying alsa/oss/pulse/... audio backends.
2018-04-05 13:14:16 +02:00
Armin Novak
2517755d25
Fixed thread function return and parameters.
2018-03-07 14:36:55 +01:00
Armin Novak
6623927fe4
Free gsmBuffer on channel close.
2018-02-19 14:04:42 +01:00
Armin Novak
3b67190d17
Clean up GSM context on channel close.
2018-02-19 13:05:53 +01:00
David Fort
41823080f9
Fix users of Stream_GetPosition() that returns size_t
2017-12-11 22:38:58 +01:00
Armin Novak
f96a46acd5
Fix #4278 : Fix nasty range check bug
2017-11-26 14:59:37 +01:00
Armin Novak
4eb5b8e349
Replaced atoi
2017-11-15 15:52:16 +01:00
Armin Novak
7058a9add2
Pause playback on queue empty, free buffers on close.
2017-10-05 12:05:09 +02:00
Armin Novak
8b9e3fa51e
Fixed use of reserved keywords for include guards.
2017-07-20 09:35:41 +02:00
Armin Novak
0490aeb018
Fixed clang malloc integer overflow warnings.
2017-07-20 09:29:48 +02:00
Armin Novak
7960251e2c
Fixed audio termination code.
2017-01-17 16:06:04 +01:00
Armin Novak
9f19da798c
Added attach/detach support for channels.
2016-12-19 17:07:01 +01:00
Norbert Federa
f71b6b46e8
fix string format specifiers
...
- fixed invalid, missing or additional arguments
- removed all type casts from arguments
- added missing (void*) typecasts for %p arguments
- use inttypes defines where appropriate
2016-12-16 13:48:43 +01:00
Bernhard Miklautz
00dae7c5ef
Fix some spelling errors
...
Fixes #3633
2016-12-01 15:36:49 +01:00
Norbert Federa
c6e6b44143
countless WLog/printf format specifier fixes
2016-11-25 17:06:25 +01:00
Martin Fleisz
0febd9c7cd
Merge pull request #3563 from akallabeth/android_update
...
Android fix warnings, visibility and formatting
2016-11-24 12:59:30 +01:00
Martin Haimberger
778767cafe
fixed error
2016-11-23 04:22:03 -08:00
Martin Haimberger
7fe28a8a78
virtualChannel: removed static variable usage from
...
VirtualChannelApi
2016-11-23 04:17:56 -08:00
Martin Haimberger
d29848f383
rdpsnd: using new VirtualChannelEx api
2016-11-23 03:50:22 -08:00
Marc-André Moreau
dee76617d9
channels: remove thread-local storage usage
2016-11-15 11:41:01 -05:00
Marc-André Moreau
70c4646722
channels: restore global tables for initHandle, openHandle mappings instead of thread local storage
2016-11-14 15:23:05 -05:00
Armin Novak
6ca5a1324f
Android: fixed warnings, reformatted.
2016-10-17 10:21:23 +02:00
Armin Novak
943e295714
WLog using C99 compatible variadic macros.
2016-10-07 14:05:27 +02:00
Armin Novak
9d0f7534e3
Fixed use after free.
2016-10-06 13:43:15 +02:00
Armin Novak
b03e47166e
Fixed NULL pointer checks.
2016-10-06 13:43:14 +02:00
Armin Novak
1b6cf57307
Reformatted file.
2016-10-06 13:43:13 +02:00
Armin Novak
9f5da483dc
Reformatted files touched in last 2 commits.
2016-10-06 13:43:12 +02:00
Armin Novak
64590e7e89
Set pEntryPointsEx->ppInterface NULL on error.
2016-10-06 13:43:12 +02:00
Armin Novak
88a3b8dd76
Initializing channel context in each thread.
2016-10-06 13:43:12 +02:00
Armin Novak
dadc5262ae
Removed static channel variables.
...
Global static variables do not work, if more than one instance
of an RDP client is running in the same process space.
Removed the varaibles where possible and replaced them with
thread local storage where necessary.
2016-10-06 13:43:09 +02:00
Ondrej Holy
2fec57f1a0
rdpsnd/pulse: Fix crashes in pulseaudio
...
Function pa_stream_trigger has to be called under lock to avoid
following crashes on asserts:
Assertion 'e->mainloop->n_enabled_defer_events > 0' failed at pulse/mainloop.c:257, function mainloop_defer_enable(). Aborting.
Assertion '!e->next' failed at pulsecore/queue.c:104, function pa_queue_pop(). Aborting.
Assertion 'q->front' failed at pulsecore/queue.c:81, function pa_queue_push(). Aborting.
2016-10-04 15:18:16 +02:00
David PHAM-VAN
fe2e4264af
Fix Memory Leaks in RdpSnd
2016-09-19 11:27:25 -07:00
Vic Lee
019a569d42
rdpsnd/server: decrease audio latency and make it configurable.
2016-06-21 17:22:43 +08:00
Norbert Federa
90cdfa7646
cmake: replaced STATIC_CHANNELS with BUILTIN_CHANNELS
2016-06-15 13:36:27 +02:00
zihao.jiang
444b678e71
shadow/rdpsnd: Fix race condition in rdpsnd channel server. The output buffer and format parameters are not protected. This cause some data inconsistence if rdpsnd has own thread
2016-05-22 22:13:32 +08:00
Marc-André Moreau
915b9a15b1
Merge branch 'master' of github.com:FreeRDP/FreeRDP
...
Conflicts:
winpr/libwinpr/bcrypt/CMakeLists.txt
2016-05-11 11:05:17 -04:00
Bernhard Miklautz
62cb5fac44
build: add missing dependencies
...
Add all missing dependencies found when building with
STATIC_CHANNELS=OFF.
Fixes #3281
2016-04-15 14:32:40 +02:00
Bernhard Miklautz
783807229d
build: add missing dependencies
...
Add all missing dependencies found with --no-undefined. Since
dependencies aren't exported anymore (if not required) it is no necessary
to explicitly list all required libraries.
2016-04-07 15:10:00 +02:00
Armin Novak
2dbc1a0b87
Reverted WTS API changes.
2016-03-14 13:19:08 +01:00
Armin Novak
36cbf1b583
Fixed error handling for channel load failures.
2016-03-14 13:13:43 +01:00
Marc-André Moreau
ceefc4b099
Merge branch 'master' of github.com:FreeRDP/FreeRDP
2016-03-07 10:19:50 -05:00
Armin Novak
fb88ad0ee6
Fixed symbol export for sound plugins.
2016-03-03 17:17:13 +01:00
Marc-André Moreau
8fa25aae6a
mfreerdp: fix build on 32-bit with mac audio
2016-02-16 13:42:08 -05:00
David PHAM-VAN
3f5ce2d43f
Refactor format_supported with a nice switch() statement
2016-01-29 09:58:48 -08:00
David PHAM-VAN
8ef64aee96
Add ADPCM codec for Mac client
2016-01-28 16:11:39 -08:00
Bernhard Miklautz
6fa3608111
cleanup cmake exports and pkg-config files
...
With this commit the "exported" components (usable with pkg-config and
cmake find module package)
* winpr - winpr library and headers
* freerdp - core library and headers
* freerdp-client - client specific library
* freerdp-server - server specific library
* rdtk - rdtk headers and library
To allow the installation of multiple different version (different major
number) the include files were moved into the respective sub folder:
freerdp -> freerdp{MAJOR}/freerdp (currently freerdp2/freerdp/)
winpr -> winpr{MAJOR}/winpr (currently winrp1/winpr/)
rdtk -> rdpk{MAJOR}/rdtk (currently rdtk0/rdtk/
The generated pkg-config and cmake find modules now also include the major
version number. Currently the following pkg-config are generated and
installed.
* winpr1
* freerdp2
* freerdp-server2
* freerdp-client2
* rdtk0
As cmake is able to handle multiple versions out of the box the
following can be used to find a specific module:
find_package(WinPR)
find_package(FreeRDP)
find_package(FreeRDP-Server)
find_package(FreeRDP-Client)
find_package(RdTk)
As cmake doesn't automatically resolve dependencies for packages it is
necessary to manually include the requirements. For example if
FreeRDP-Client is required WinPR and FreeRDP need to be included
(find_package) as well.
This commit also fixes the installation when STATIC_CHANNELS are built.
WITH STATIC_CHANNELS all channels are linked into libfreerdp-client, for
this all channels are generated as linker archive and linked together in
the final step. Before the intermediate linker archives were, although
not required and useful, installed. Same applies for server side
channels.
2016-01-12 17:32:33 +01:00
Armin Novak
6ed43cd6ec
Updated pdb file locations.
...
Now supporting generators NMake and Visual Studio.
2015-12-15 12:08:35 +01:00
Armin Novak
cb958ba9c6
Added pdb files to package target.
...
Fixed name collision with freerdp-shadow targets.
2015-12-15 12:07:21 +01:00
Hardening
55d097a161
Merge pull request #2414 from zavadovsky/opensles_fixes
...
opensles fixes
2015-12-14 17:22:38 +01:00
Mehul Dhorda
044ebaafcd
Fixed build errors that occur when setting WITH_IOSAUDIO build option.
...
- Replaced } with ) in CMakeLists.txt
- Included header in TPCircularBuffer.c which is required for the TAG define
2015-11-10 11:39:37 -08:00
zihao.jiang
f21749ac07
server: Fix several memory leak while running valgrind on freerdp-shadow
2015-09-17 01:02:22 +08:00
Vic Lee
cc1bcb31b8
rdpsnd/winmm: fix SetVolume when device is not opened.
2015-09-02 15:31:40 +08:00
Armin Novak
f8295a1517
Fixed resource cleanup double free.
2015-08-28 10:51:27 +02:00
Martin Haimberger
52405a3e79
Remove WIN32ERROR type
...
All return values are UINT now.
2015-08-27 05:38:20 -07:00
Martin Haimberger
65fd259610
misc fixes:
...
fixed all bugs from the review
checking all WaitFor*Object/s calls
2015-07-30 06:49:21 -07:00
Martin Haimberger
f65d15feeb
fixed audioserver
...
if no data could be read, the ERROR_NO_DATA is returend to
indicate a further read.
2015-07-22 03:16:46 -07:00
Bernhard Miklautz
f992568432
rdpsnd: restore old behavior and fixes
...
* oss: fix function signature
* autodetection - if only /sound is given all enabled
plugins are tried in order and the first successful loaded is used.
- this restores the previous behavior
* alsa/pulse fix command line parsing - no parameters shouldn't be
treated as error
2015-07-20 12:28:49 +02:00
Martin Haimberger
e682329eeb
fixed compiler errors
2015-07-15 03:17:38 -07:00
Martin Haimberger
6ab0187d84
Merge remote-tracking branch 'upstream/master' into mh-channel
...
Conflicts:
channels/audin/client/oss/audin_oss.c
channels/drive/client/drive_main.c
channels/printer/client/printer_cups.c
channels/printer/client/printer_main.c
channels/rail/client/rail_main.c
channels/rdpgfx/client/rdpgfx_main.c
channels/rdpsnd/client/oss/rdpsnd_oss.c
channels/remdesk/client/remdesk_main.c
channels/remdesk/server/remdesk_main.c
channels/tsmf/client/tsmf_media.c
2015-07-15 01:57:07 -07:00
Martin Haimberger
b8c110d19b
introduced channel error reporting system
...
The rdpContext gets an event which will
get set if an error occoured in a channel.
If a thread or a void callback has to report an
error it will get signaled by this system.
2015-07-15 00:50:35 -07:00
David FORT
1b7140d84e
Fixed some more checks in rdpsnd channel
2015-07-04 00:17:37 +02:00
Armin Novak
cf9f975341
Replaced snprintf with sprintf_s
2015-07-03 13:26:15 +02:00
Zavadovsky Yan
2c1aff1ab9
channels/rdpsnd: fix memory leak
...
Pointer to sound data chunk must be put into queue
otherwise bqPlayerCallback() will have nothing to free and
memory will leak.
2015-07-01 18:58:38 +03:00
Zavadovsky Yan
6ce87bd477
channels/rdpsnd: fix rdpsnd_opensles_set_format() logic
...
If server says "PCM format" treat sound data as PCM, not ADPCM.
This fixes noise from speakers when using Xrdp as server.
2015-07-01 18:58:10 +03:00
Marc-André Moreau
ddf2519f1e
Merge pull request #2719 from bmiklautz/pull/2481
...
OSS, tsmf, usb and BSD fixes and improvements
2015-06-26 08:27:22 -04:00
David FORT
a8fefae3a1
Harden the sound channel
...
This patch adds checks for the sound channel and plugins:
* checks for protocol bytes;
* checks for malloc/calloc;
* be more strict when interacting with sound plugin
2015-06-24 17:06:45 +02:00
Bernhard Miklautz
7624519453
oss: fix formating
2015-06-22 19:45:56 +02:00