Commit graph

110 commits

Author SHA1 Message Date
Robert-André Mauchin
3358673ba4 Add compatibility with FFMPEG 7.0
avio: Constify data pointees of write callbacks

avutil: remove deprecated FF_API_PKT_DURATION

Ref: 2a68d945cd
     02aea61d69
     b8fef7e9c5
2024-05-14 14:39:29 +04:00
John Preston
2f40a44b5c Improve things for OpenAL devices management. 2024-02-01 12:37:34 +04:00
John Preston
104ba4db7c Fully migrate to Webrtc::Environment. 2024-01-25 11:57:58 +04:00
John Preston
65a80766f4 Implement media device tracking on macOS. 2024-01-25 11:04:27 +04:00
John Preston
d3778f92d2 Implement media devices tracking on Windows. 2024-01-25 11:04:27 +04:00
23rd
091c13bc23 Added initial ability to pause and resume voice recording. 2024-01-25 11:04:27 +04:00
Ilya Fedin
0d72d47318 Normalize signal connections 2023-12-31 22:03:57 +00:00
Ilya Fedin
00e785a3af Remove unused variables 2023-12-31 22:03:57 +00:00
23rd
c2712b0104 Removed redundant semicolons from code. 2023-12-31 19:42:23 +04:00
23rd
88b20f6700 Fixed indents in some files. 2023-12-16 20:25:01 +00:00
23rd
acb1a7ccf2 Spread some style entries from basic style. 2023-11-15 04:19:51 +03:00
John Preston
bda3bae712 Always use crl::time for media durations. 2023-08-04 08:46:46 +02:00
John Preston
2c17f41c61 Beta version 4.6.12: Compare speed values safely. 2023-03-17 21:18:56 +04:00
John Preston
1eff68813d Reuse new speed change control for video. 2023-03-15 13:36:40 +04:00
John Preston
4351baffb3 Unify playback speed settings serialization. 2023-03-15 09:15:40 +04:00
John Preston
5ca7b95cdb Implement new voice speed change control design. 2023-03-14 17:30:50 +04:00
John Preston
0c165d1fb8 Fix possible crash in audio speed change. 2023-03-12 07:25:39 +04:00
Ilya Fedin
aefb0f52ff Remove unused media_openal_functions 2023-03-10 11:30:43 +04:00
John Preston
da7cd6291e Proper check for atempo filter existance. 2023-03-10 11:13:44 +04:00
John Preston
3b3ee6fbbe Remove debugging logging. 2023-03-10 10:44:57 +04:00
John Preston
95a4bf718d Beta version 4.6.8: Fix build with GCC. 2023-03-09 23:21:51 +04:00
John Preston
214b112de0 Fix build with FFmpeg < 5.1. 2023-03-09 12:27:33 +04:00
John Preston
9c74c04738 Implement audio speed using libavfilter. 2023-03-08 16:10:36 +04:00
John Preston
0880a83c2c Improve ffmpeg audio loader interface. 2023-03-08 16:10:36 +04:00
John Preston
7a090610b9 Upgrade FFmpeg to 5.1 on macOS.
In this version videos play fine with hardware acceleration enabled.
2023-02-25 16:57:06 +04:00
Ilya Fedin
5d20d585b3 Don't use alcGetEnumValue for non-ALC enum value
This makes no effective change for openal-soft as alGetEnumValue and alcGetEnumValue do lookup in the same table, but it's more semantically right and openal-soft is not the only implementation of the API
2023-01-26 15:56:01 +04:00
23rd
2acedca6b7 Replaced some qstr with u""_q literal. 2022-11-29 14:12:50 +03:00
23rd
57c50c8655 Optimized includes of attach_prepare.h. 2022-11-22 00:26:48 +00:00
John Preston
644ec1f599 Remove base::Observable / base::Variable. 2022-11-11 11:43:24 +04:00
23rd
371ba40a50 Added volume button to media player for voices. 2022-11-06 18:55:11 +03:00
John Preston
20b5138e00 Initial implementation of ExtendedMedia. 2022-09-12 09:06:26 +04:00
Alexander Kernozhitsky
a5bd4ef6f7 Fix code style 2022-09-04 08:04:02 +04:00
Alexander Kernozhitsky
c6c2a44e9d Patch the remaining uses or FFmpeg APIs 2022-09-04 08:04:02 +04:00
Niklas Haas
6096116526 Use quasi-logarithmic volume controls
This commit significantly improves the usability of the volume controls
for controlling volume in a way that matches intuitively onto human
needs and loudness perception.

Using the third power of the volume is a good approximation of the
quasi-logarithmic psychoacoustic system, while being defined everywhere
and preserving the useful quality of 0% volume mapping onto gain 0.0.
The use of this exact mapping function is a prior art established by
e.g. PulseAudio, among many other programs.

Fixes #24488
2022-07-19 19:32:46 +04:00
23rd
1d475ee727 Slightly optimized includes in application.h. 2022-06-12 16:07:41 +03:00
23rd
176f3ea15c Removed simultaneous voice recording. 2022-06-08 11:59:30 +03:00
Ilya Fedin
caf2be13b3 Move pipewire stubs initialization to Media::Audio::Start 2022-05-04 14:34:33 +04:00
John Preston
3cdd8558db Beta version 3.7.4: Fix build with GCC. 2022-05-04 11:42:54 +04:00
23rd
c9ebec1cf0 Removed base/observer.h from main pch.
Removed unused inheritances from base::Subscriber.
2022-03-15 18:02:30 +03:00
John Preston
b9685ec711 Correctly destroy Media::Capture::Inner. 2022-03-01 14:27:42 +03:00
Nicholas Guriev
436622ad7c Fix build against FFmpeg v5.0
It has been released on January 17th. This patch keeps source compatibility
with older versions.
2022-02-28 20:22:18 +03:00
John Preston
28f2c213f7 Remove app module. Support delayed quit by Cmd+Q on macOS. 2022-01-27 15:54:20 +03:00
Ilya Fedin
4e63346877 Use AL_REMIX_UNMATCHED_SOFT enum value instead of hard-coded value
This makes the feature require version 1.21.0, previously was 1.20.1
2021-11-26 18:48:35 +04:00
Ilya Fedin
f69d0823a9 Get rid of oal-soft specific alext.h include 2021-11-26 18:48:35 +04:00
John Preston
19ce1edc16 Use base::SafeRound instead of std::round.
Previous assertion violations because of NaN from std::round were
in video streaming, see commits 27d58ba07b, 8f5830d520.

Now the crashes happened in the ConvertScale() call from a background
thread when preparing an image from clipboard for sending to a chat.
2021-09-27 12:13:57 +04:00
23rd
4550b2a315 Decreased record bitrate of voice messages.
Fixed #6708.
2021-09-01 01:23:20 +03:00
23rd
e6f0c176f7 Moved AudioMsgId to separated file. 2021-09-01 01:23:20 +03:00
John Preston
c79cd0b692 Use Images::Read instead of App::readImage. 2021-08-11 18:55:08 +03:00
Ilya Fedin
79cc797aff Fix -Wunused-variable warnings 2021-07-13 21:43:34 +03:00
Ilya Fedin
89765340c3 Fix -Wunused-function warnings 2021-07-13 21:31:22 +03:00