Commit Graph

228 Commits

Author SHA1 Message Date
Martin Fleisz
53f7927bf3 audin: Fix possible crash in winmm backend 2020-01-16 10:23:17 +01:00
Martin Fleisz
05a865281e channels: Fix memory leak and make log messages more precise 2020-01-08 16:49:15 +01:00
Martin Fleisz
d21e0a6d6d Fix audio channel init when no audio devices are present
This PR fixes the handling of using rdpsnd or audin when the system has
no audio device available.
In case of a missing playback device the
Windows backend now correctly reports an error and the fake rdpsnd
backend is loaded.
If audin is enabled and no microphone is present the channel
initialization will report an error but it won't cut the connection (as
it did before).
2019-12-30 12:59:14 +01:00
Armin Novak
da6ff1ca65 Removed some unnecessary casts. 2019-12-05 11:40:56 +01:00
Armin Novak
72ca88f49c Reformatted to new style 2019-11-07 10:53:54 +01:00
Martin Fleisz
bc39b32d20
Merge pull request #5685 from akallabeth/multi_instance_arg_parse
COMMAND_LINE_ARGUMENT structs contain parser results, use one per instance
2019-11-06 09:09:22 +01:00
Armin Novak
f01e042211 Code cleanups (strlen, casts, size_t, ...) 2019-10-29 11:58:43 +01:00
Armin Novak
0c87eaee4d COMMAND_LINE_ARGUMENT structs contain parser results, use one per instance
Remove the old global structs as the parser modifies them. When using
multiple instances in the same process space this could break parsing.
2019-10-28 13:30:05 +01:00
Armin Novak
30c21279cb Fixed memory leak when freeing up audin formats. 2019-10-24 12:18:24 +02:00
Armin Novak
624d895106 Fixed sign issues 2019-04-05 09:22:35 +02:00
Armin Novak
ef1728faf5 Fixed NULL dereferences and uninitialized values 2019-01-30 16:11:10 +01:00
Peter Åstrand (astrand)
30cd1ba1ab Use lowercase for includes and libs
Makes build possible on case sensitive systems such as MinGW on Linux.
2019-01-09 09:36:28 +01:00
Ilya Shipitsin
bdc039e719 resolve several issues found by cppcheck
[client/X11/xf_floatbar.c:800] -> [client/X11/xf_floatbar.c:796]: (warning) Either the condition '!floatbar' is redundant or there is possible null pointer dereference: floatbar.
[client/X11/xf_floatbar.c:800] -> [client/X11/xf_floatbar.c:797]: (warning) Either the condition '!floatbar' is redundant or there is possible null pointer dereference: floatbar.
[client/X11/xf_floatbar.c:800] -> [client/X11/xf_floatbar.c:798]: (warning) Either the condition '!floatbar' is redundant or there is possible null pointer dereference: floatbar.
[libfreerdp/codec/dsp.c:1156] -> [libfreerdp/codec/dsp.c:1154]: (warning) Either the condition '!srcFormat' is redundant or there is possible null pointer dereference: srcFormat.
[channels/drdynvc/client/drdynvc_main.c:1453] -> [channels/drdynvc/client/drdynvc_main.c:1450]: (warning) Either the condition '!drdynvc' is redundant or there is possible null pointer dereference: drdynvc.
[channels/audin/client/opensles/audin_opensl_es.c:98] -> [channels/audin/client/opensles/audin_opensl_es.c:94]: (warning) Either the condition '!opensles' is redundant or there is possible null pointer dereference: opensles.
[channels/audin/client/opensles/audin_opensl_es.c:159] -> [channels/audin/client/opensles/audin_opensl_es.c:153]: (warning) Either the condition '!opensles' is redundant or there is possible null pointer dereference: opensles.
2019-01-02 20:35:24 +05:00
Armin Novak
0f45a570fa Added fallback for supported sample rates if original not supported.
Added format compatibility check between recording input and destination.
2018-11-14 13:27:20 +01:00
Armin Novak
93eea24120 Fixed possible NULL pointer dereference 2018-11-14 13:27:20 +01:00
Armin Novak
7aebf8ebd2 Silence code analyzers, check correct variable for NULL. 2018-10-25 13:19:45 +02:00
Martin Fleisz
00af869cd3
Merge pull request #4889 from akallabeth/shadow_server_audin_refactor
Shadow server audin refactor
2018-10-08 12:56:09 +02:00
Armin Novak
ac14763564 [audin] Abort version exchange if server version is not supported. 2018-10-04 13:53:18 +02:00
Armin Novak
47f8804073 Fixed audio recording with opensles. 2018-10-04 13:18:06 +02:00
Armin Novak
d56efaae8b Fixed server format selection. 2018-09-26 12:49:09 +02:00
Armin Novak
16531e1437 Fixed server audin callback, provide more information. 2018-09-26 12:49:09 +02:00
Armin Novak
18f97d03e7 Cleaned up defaults. 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
dab5770fed Added microphone support to shadow server. 2018-09-25 11:14:10 +02:00
Ondrej Holy
926ac4f938 channels/audin: Fix leak found by covscan
leaked_storage: Variable out going out of scope leaks the storage it points to.
2018-08-22 13:35:43 +02:00
Armin Novak
44d1438eac Fixed mac audin 2018-08-01 12:56:17 +02:00
Armin Novak
7355b4e5f3 Fixed leak in audio format processing. 2018-07-31 10:33:19 +02:00
MartinHaimberger
2d7499b7c0
Merge pull request #4758 from akallabeth/dsp_fix
Audio/microphone fixes
2018-07-31 10:22:22 +02:00
Armin Novak
033abe93d4 Fixed callback parameter checks. 2018-07-30 11:22:11 +02:00
Armin Novak
3b187ef321 Code Cleanup 2018-07-19 16:21:03 +02:00
Martin Fleisz
b6a41b26e5 audin: Fix server-side dsp decoding
The decoder format was never set and so dsp_decode always failed
on the server side.
2018-07-19 16:00:31 +02:00
Armin Novak
d40daedb9c Fixed FFMPEG backend: Do not drop samples for package alignment. 2018-07-19 15:17:54 +02:00
Armin Novak
d7e88b1b81 Fixed winmm backend logging. 2018-07-19 11:55:48 +02:00
Armin Novak
a003890b34 Fixed opensles compilation errors. 2018-07-19 11:51:26 +02:00
Armin Novak
ec83f3d4f1 Fixed number of samples returned. 2018-07-18 12:33:52 +02:00
Armin Novak
7c8a556377 Fixed alignment issues. 2018-07-18 12:14:37 +02:00
Armin Novak
8664a3c91e Fixed alsa and pulse backend receive buffer sizes 2018-07-17 16:18:21 +02:00
Armin Novak
b9645c9247 Using dynamic logger again. 2018-07-17 11:20:45 +02:00
Armin Novak
4465bcfa86 Fixed remarks 2018-07-04 11:03:32 +02:00
Armin Novak
bf70ee6267 Keep extra data of audio format locally cached. 2018-07-03 09:54:29 +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
Armin Novak
8758638c2a Ensure audin channel uses supported protocol version 1. 2018-04-16 10:23:45 +02:00
Armin Novak
3f712cab70 Fixed formatting of changed files. 2018-04-05 13:14:16 +02:00
Armin Novak
2e801a8425 Free dsp context on close. 2018-04-05 13:14:16 +02:00
Armin Novak
1c127fab7d Added AudioFormatFlags fallback. 2018-04-05 13:14:16 +02:00
Armin Novak
65a82e9cdc Fix #4462: Fallback typedef for AudioFormatID on MacOS < 10.10 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
0c49152a3d Fixed #4412: memory corruption in audin channel. 2018-03-26 16:29:50 +02:00
Armin Novak
c53d72211a Audin channel use dynamic logger where possible. 2018-03-26 14:40:23 +02:00