John Preston
846499a4fb
Fix volume saving to settings.
2019-03-12 09:09:53 +04:00
John Preston
c063d94aa5
Remove DocumentData::actionOnLoad. Fix GIF open.
2019-03-11 19:07:35 +04:00
John Preston
261720c941
Fix radial animations on macOS.
...
QOpenGLWidget doesn't draw antialiased ellipses and arcs,
so we use a software rasterizer and then draw the resulting image.
2019-03-11 13:51:15 +04:00
John Preston
a886c598c1
Fix non-streamable videos layout.
2019-03-11 12:08:20 +04:00
John Preston
2ce4abfdfe
Fix crash in media caching.
2019-03-11 12:08:20 +04:00
John Preston
18c42954ae
Fix sparse frame painting on macOS.
2019-03-11 12:08:20 +04:00
John Preston
b57b4fa0f8
Fix reading first slice for good header cache.
2019-03-11 12:08:20 +04:00
John Preston
3706be77ea
Fix macOS media viewer controls hiding.
2019-03-11 12:08:19 +04:00
John Preston
f481f1e142
Make videos larger, fix playback animation.
2019-03-11 12:08:19 +04:00
John Preston
84b09795f3
Store first slice in the header cache key.
2019-03-11 12:08:19 +04:00
John Preston
a56a12a1ef
Optimized video frame pushing.
2019-03-11 12:08:18 +04:00
John Preston
5c4b459f57
Use new animations in video viewer.
2019-03-11 12:08:18 +04:00
John Preston
92332b45ea
Don't reset zoom on video seek.
2019-03-11 12:08:17 +04:00
John Preston
b742c95516
Support streamed video rotation.
2019-03-11 12:08:16 +04:00
John Preston
a59c3da3d0
Cache small files in one value.
2019-03-11 12:08:16 +04:00
John Preston
8399f4189f
Don't show receivedTill for local loaders.
2019-03-11 12:08:16 +04:00
John Preston
67b9fe846b
Improve video frame position checks.
2019-03-11 12:08:16 +04:00
John Preston
0f4ccce0e1
Update ffmpeg.
2019-03-11 12:08:15 +04:00
John Preston
01d763eed1
Use DocumentData::getDuration for all types.
2019-03-11 12:08:15 +04:00
John Preston
41c60419f1
Enable voice messages streaming.
2019-03-11 12:08:15 +04:00
John Preston
518d1da736
Fail streaming if no codec for a stream.
2019-03-11 12:08:14 +04:00
John Preston
22356eb01c
Fix initial video duration display.
2019-03-11 12:08:14 +04:00
John Preston
b5eb88a32f
Closed alpha version 1.5.15.2.
2019-03-11 12:08:13 +04:00
John Preston
6887993f92
Report streaming failed.
2019-03-11 12:08:13 +04:00
John Preston
71b733a018
Display receivedTill in video player controls.
2019-03-11 12:08:13 +04:00
John Preston
e2eb9cea00
Apply sample_aspect_ratio in streaming.
2019-03-11 12:08:12 +04:00
John Preston
99e96a5b13
Allow looping video without audio in streaming.
2019-03-11 12:08:12 +04:00
John Preston
c27456277e
Support streaming of local files.
2019-03-11 12:08:11 +04:00
John Preston
dafa286b18
Show option to download on streaming error.
2019-03-11 12:08:11 +04:00
John Preston
f0963a332a
Fix crash on failed streaming.
2019-03-11 12:08:10 +04:00
John Preston
8171828c2a
Fix build on GCC.
2019-03-11 12:08:09 +04:00
John Preston
a8aa66d191
Check frame format before sws_getCachedContext.
2019-03-11 12:08:09 +04:00
John Preston
c574119718
Implement file reference update in streaming.
2019-03-11 12:08:08 +04:00
John Preston
648cd44ddd
Display correct video / music state.
2019-03-11 12:08:08 +04:00
John Preston
fde8dd9607
Play streaming audio in player.
2019-03-11 12:08:08 +04:00
John Preston
f1e0cd6c1d
Play streaming video in mediaview.
2019-03-11 11:52:11 +04:00
John Preston
44df10d6cb
Improve working with cache in streaming.
2019-03-11 11:49:54 +04:00
John Preston
b6a757842a
Pause loading if loaded for 1 minute.
2019-03-11 11:49:54 +04:00
John Preston
4636c74586
Remove from memory old file slices.
2019-03-11 11:49:54 +04:00
John Preston
2208621050
First version of caching in media streaming.
2019-03-11 11:49:54 +04:00
John Preston
ccd04b98b9
Fix sync video to audio.
2019-03-11 11:49:54 +04:00
John Preston
d37b65e624
If stuck wait for three seconds of packets.
2019-03-11 11:49:54 +04:00
John Preston
3e9b811875
Implement precise seek in streaming.
2019-03-11 11:49:54 +04:00
John Preston
44c562d8ba
Fix streaming seek, display progress.
2019-03-11 11:49:53 +04:00
John Preston
93c548c013
Support streaming speed changing.
2019-03-11 11:49:53 +04:00
John Preston
a7d9281768
Implement pause / resume in streaming.
2019-03-11 11:49:53 +04:00
John Preston
3b369fc98e
Buffer audio when waiting data in streaming.
2019-03-11 11:49:53 +04:00
John Preston
e5cd7e6d40
Fix streaming from the middle of the file.
2019-03-11 11:49:53 +04:00
John Preston
99d05ba967
Sync video stream to audio stream.
2019-03-11 11:49:53 +04:00
John Preston
ec9512899e
Support streaming playback speed 0.5 - 2.
2019-03-11 11:49:22 +04:00
John Preston
26ea6c4e63
Provide receivedTill for streamed tracks.
2019-03-11 11:49:22 +04:00
John Preston
8e44a7f5c4
Basic code for video streaming + testing on video.
2019-03-11 11:49:22 +04:00
John Preston
a093cb6274
Move some logic to Media::Streaming::Player.
2019-03-11 11:49:21 +04:00
John Preston
64f2f330f6
Render first frame when starting streaming.
2019-03-11 11:49:21 +04:00
John Preston
473e30e594
Basic code for media streaming + testing on music.
2019-03-11 11:49:21 +04:00
23rd
f48d8538c0
Added ability to see attached stickers on photos.
2019-03-10 22:10:36 +04:00
23rd
78d00bcf22
Refactored counting idle time.
...
- psIdleTime() was replaced with Platform::LastUserInputTime().
- _lastTimeVideoPlayedAt was moved to Application as _lastNonIdleTime.
- Call of updateNonIdle() was added while voice is recording.
- Fixed #5695 .
- Thanks Preston. =)
2019-03-10 22:02:58 +04:00
John Preston
e174025a92
Fix travis build.
2019-03-09 15:27:36 +04:00
23rd
4ed1835d32
Fixed Ctrl + F shortcut for full screen toggle in media view.
2019-02-20 11:43:50 +04:00
John Preston
fe618bd652
Use crl::time/now instead of TimeMs/getms.
2019-02-19 11:06:33 +04:00
John Preston
7c1704e68b
Fix crash in EditCaptionBox.
2019-02-17 13:51:53 +04:00
John Preston
98cb85df66
Polymorphic classes without virtual dtor warning.
2019-02-15 15:55:34 +04:00
John Preston
032694ad9e
Move files to media/audio and media/clip.
2019-02-13 15:41:33 +03:00
John Preston
5437215677
Use premultiplied format for GIF frames.
2019-02-13 15:19:05 +03:00
John Preston
ae6c152988
Version 1.5.15: Fix macOS media viewer overlay.
...
Regression was introduced in c1a0dad2b7
.
2019-02-12 19:55:35 +03:00
John Preston
c1a0dad2b7
Use QOpenGLWidget for macOS media viewer overlay.
...
Also move mediaview to media/view/media_view_overlay_widget.
2019-02-12 14:00:47 +03:00
John Preston
b28e374e06
Fix Media::Audio::Instance destruction.
2019-02-01 10:09:55 +03:00
John Preston
a1baa23a52
Use both thumbnails in photos and documents.
...
Fixes #5602 .
2019-01-28 13:10:45 +03:00
John Preston
a70e72f75d
Application->Sandbox, Messenger->Application.
2019-01-23 12:51:58 +04:00
John Preston
c5a41e1f55
Divide data/data_peer and remove from PCH.
2019-01-17 12:21:29 +04:00
John Preston
0d6a36e187
Fix volume widget position.
...
Fixes #5467 .
2019-01-17 12:20:50 +04:00
John Preston
6d08394adc
Divide history_media_types to several modules.
2018-12-21 17:09:31 +04:00
John Preston
3bd0efa91e
Use 1.7x instead of 2x in voice messages.
2018-12-03 19:33:34 +04:00
John Preston
b3ffbeb63e
Improve code for Shortcuts handling.
2018-11-20 19:38:40 +04:00
John Preston
e3b6e1325e
Use AL_DIRECT_CHANNELS_SOFT for audio playback.
...
See https://github.com/telegramdesktop/tdesktop/issues/2580 .
2018-11-16 20:17:58 +04:00
John Preston
2d05281ba9
Add configuration for OpenAL effects usage.
2018-11-09 16:28:15 +04:00
John Preston
9a1069c1ae
Fix resuming audio on call end.
2018-11-09 11:27:12 +04:00
John Preston
346cb4e203
Fix some bugs in double playback speed.
...
- Apply double speed for all voice tracks, not only for the current.
- Use dedicated atomic in Mixer for the voice speed (fix race).
- Store the playback speed in user settings, not in global settings.
- Use float64 for setting (just consistency, no float-s right now).
2018-11-08 17:06:22 +04:00
Magnus Groß
de8518a112
Implement double playback speed
...
This adds double playback speed for both voice messages and round video
messages.
The 2x playback speed setting is global and is saved in local storage.
Fixes #4907
2018-11-08 17:05:34 +04:00
John Preston
ef38572d5a
Detect and send supports_streaming bit for videos.
2018-11-07 18:10:00 +04:00
John Preston
ef64d9c188
Show round videos in Info layer.
2018-11-05 17:18:54 +04:00
John Preston
466444e17d
Extract float player controller.
2018-11-05 15:16:09 +04:00
John Preston
b420f5b41b
Fix crash in round video playback.
2018-11-05 14:00:53 +04:00
John Preston
5192049194
Resume audio when call ends.
2018-11-04 15:51:39 +04:00
John Preston
da358615e0
Generate high quality video thumbnail when loaded.
2018-11-04 15:51:38 +04:00
John Preston
bf31722931
Show collage/slideshow as an album in MediaView.
2018-11-04 15:51:38 +04:00
John Preston
595134cab5
Move image-related modules to ui/image/.
2018-11-04 15:51:37 +04:00
John Preston
113f665295
Move Image and derived to ui/image.
2018-11-04 15:51:36 +04:00
John Preston
2812d2911f
Remove media_volume icon, use volume slider.
2018-10-15 11:06:27 +03:00
John Preston
2e5a0e056c
Move to std::optional.
2018-09-21 19:28:46 +03:00
John Preston
1ffbec0215
Finish animations disabling.
...
Replace some infinite animations with static layouts.
2018-09-20 21:26:10 +03:00
John Preston
0c8709ca5f
Replace App::self() with Auth().user().
...
Always have self Auth().user() when AuthSession exists.
2018-09-19 19:22:13 +03:00
John Preston
069232ec1b
Allow changing limits for cache in Settings.
2018-09-01 18:56:08 +03:00
John Preston
9147c12687
Add basic implementation of Storage::Cache DB.
2018-09-01 18:56:08 +03:00
John Preston
839885910c
Pass FileOrigin in all file downloads.
2018-08-20 17:26:28 +03:00
John Preston
fddc3d6ad9
Workaround MSVC 15.8 regressions.
2018-08-17 14:01:16 +03:00
John Preston
777bf7d8d9
Fix video seeking.
...
Regression was introduced in d0e854e9d8
.
Each time you hide() a widget its mousePress state is reset and
mouseMoveEvent() / mouseReleaseEvent() handlers are never called.
So you can't toggle (hide + show) widgets that are mouse-pressed.
Fixes #4802 .
2018-06-06 11:58:07 +03:00
John Preston
a42fb1f7b7
Fix microphone sandbox access request.
...
Fixes #4783 .
2018-06-04 18:39:20 +03:00
John Preston
dd81f5d59f
Replace base::lambda with shorter term.
...
base::lambda -> Fn (type alias for std::function).
base::lambda_once -> FnMut (type alias for base::unique_function).
base::lambda_guarded -> crl::guard.
base::lambda_call_type_t -> crl::deduced_call_type.
2018-06-04 18:38:27 +03:00
John Preston
d0e854e9d8
Allow showing boxes in passport panel.
2018-06-03 23:16:35 +03:00
John Preston
1392e05ab1
Move all gsl::byte helpers to base/bytes module.
2018-06-03 23:16:34 +03:00
John Preston
5e7642b42a
Support markdown and replaces in media captions.
2018-05-24 16:03:21 +03:00
John Preston
87d6081408
Version 1.2.16: Fix build in Xcode 9.3.
2018-04-07 12:47:08 +04:00
John Preston
eb00641dfa
Mark autoplayed voice/video messages as read.
2018-03-10 00:55:58 +03:00
John Preston
8bacc74d8b
Request dialog list entries when needed.
...
Also save the original server-side int32 date in HistoryItems.
2018-02-08 12:20:54 +03:00
John Preston
a47981054f
Feed info profile placeholder.
2018-02-08 12:20:51 +03:00
John Preston
89941a8e83
Fix layout update notifications in Info::Media.
2018-02-08 12:20:50 +03:00
John Preston
861ab85ca1
Fix voice/video messages in chats/feed.
2018-02-08 12:20:50 +03:00
John Preston
91f369a0b3
Handle view resize/repaint requests for mainView.
2018-02-08 12:20:49 +03:00
John Preston
04c8c95634
Use notify* instead of mark* in Data::Session.
2018-02-08 12:20:49 +03:00
John Preston
8a56ede187
Move all (item/view/media) maps to Data::Session.
2018-02-08 12:20:49 +03:00
John Preston
7425e80f05
Use HistoryMedia as view, add Data::Media.
2018-02-08 12:20:48 +03:00
John Preston
97a9089ebf
Move draw / getState code to HistoryView::Message.
...
Item dimensions broken for now.
Also remove history.h from pch.
2018-02-08 12:20:48 +03:00
John Preston
bee474f6e9
Remove history_item and layout from pch.
...
Also move some code to separate modules.
Also create history item views by Window::Controller.
2018-02-08 12:20:47 +03:00
John Preston
794e31505b
First version of feed section view.
2018-02-08 12:20:46 +03:00
John Preston
6a9556d42c
Move non-settings session data to Data::Session.
...
Rename AuthSessionData to AuthSessionSettings, move data away.
2018-02-08 12:20:46 +03:00
John Preston
ea7441ae77
Use single LEGAL file with license and copyright.
2018-01-03 13:23:14 +03:00
John Preston
e89350d4b7
Reuse resample code from FFMpegLoader for video.
...
AbstractAudioFFMpegLoader used in FFMpegLoader and ChildFFMpegLoader.
2018-01-02 20:22:13 +03:00
John Preston
95399bef2b
Improve swresample library usage.
...
It looks like different AVFrame-s can have different audio encoding
parameters, so now we setup/re-setup swr context using parameters
from current audio frame. Hopefully it will fix some audio crashes.
2018-01-02 19:18:53 +03:00
John Preston
af552fb4c0
Replace base/task_queue with crl.
2017-12-31 00:28:38 +03:00
John Preston
ea51f976f2
Alpha version 1.2.5: Workaround GCC 7.2 ICE.
2017-12-29 21:47:49 +03:00
John Preston
2a409e3734
Add files from clipboard to composed album.
...
Fixes #4243 .
2017-12-29 20:02:23 +03:00
John Preston
0171a4e874
Handle click on group thumb item in MediaView.
2017-12-29 17:58:53 +03:00
John Preston
2bcbb5a5be
Display group / userpic thumbnails in MediaView.
2017-12-29 16:44:36 +03:00
John Preston
5b4694a4eb
Move text options constant to a separate module.
...
Also start MediaView group thumbs code.
2017-12-28 16:06:06 +03:00
John Preston
2569df9e5a
Rename some Ui methods.
...
myEnsureResized -> Ui::SendPendingMoveResizeEvents.
myGrab -> Ui::GrabWidget.
myGrabImage -> Ui::GrabWidgetToImage.
2017-12-26 19:20:08 +03:00
John Preston
8e45b09083
Use different indentation for rpl operators.
...
It works better with Visual Studio IDE.
2017-12-26 19:20:07 +03:00
John Preston
3b3a705a67
First working code for sending albums.
2017-12-26 19:20:06 +03:00
John Preston
e023092744
Use RectPart(s) instead of ImageRoundCorner(s).
2017-12-18 21:54:11 +04:00
John Preston
574f4a73cb
Add some checks to video sound stream decoding.
2017-12-12 18:56:37 +04:00
John Preston
97c15865a5
Move some code around.
...
Move logs:SignalHandlers to core/crash_reports:CrashReports.
Move all pre-launch windows to core/crash_report_window module.
Move some global code to core/launcher:Launcher.
It should replace settings / platform_specific module in some way.
2017-12-12 16:47:32 +04:00
John Preston
8b69e6ab99
Rename some methods in DocumentData.
...
Also fix voice message mark as read when autoplaying after previous.
Also show play icon and don't show playlist for audio files that do
not have shared music files attributes but have audio file mime type.
2017-12-10 14:28:04 +04:00
John Preston
4ef3de5287
Always specify seek position in TimeMs.
...
This way it won't rely on the sample rate of the audio file.
Fixes #4139 .
2017-12-10 12:52:38 +04:00
John Preston
5a7d8bcffb
Add audio playlist using Info::Media::ListWidget.
2017-12-09 19:13:06 +04:00
John Preston
4e2c8bbc26
Use SharedMediaMergedViewer() for audio player.
...
That way audio files and voice/video messages will play in context
(one after another with ability to go to next or previous in player)
almost always, no matter at what part of message history we are.
2017-12-09 14:02:51 +04:00
John Preston
9bbcbd4bb3
Remove all legacy media overview code.
2017-12-08 22:34:26 +04:00
John Preston
e273695cc9
Fix planar audio playback (for example .flac).
...
Also add some more crash information logging.
Fixes #4120 .
2017-12-08 12:57:43 +04:00
John Preston
a495de7cf8
Ask OpenAL to use kDefaultFrequency (48 kHz).
2017-12-02 13:27:32 +04:00
John Preston
2161858088
Fail resampling audio with inconsistent frames.
2017-12-02 12:58:52 +04:00
John Preston
13ab055fe0
Add debug information about crash in ffmpeg.
2017-11-30 15:41:15 +04:00
John Preston
f1f955b7ac
Pass already-members when adding members to channel.
2017-11-19 18:41:52 +04:00
John Preston
aec496d520
Remove RTL Override symbols from filenames.
2017-11-16 07:59:09 +04:00
John Preston
54cc3e6315
Shared media multiple items selection.
2017-11-16 07:59:07 +04:00
John Preston
65cc4d3fbc
Support item repaint in Info media overview.
2017-11-16 07:59:06 +04:00
John Preston
d1687ab963
Improve info wrapping in section / layer.
...
Also move layerwidget to window/layer_widget.
Also replace ui/effects/widget_fade_wrap with ui/wrap/fade_wrap.
2017-11-16 07:59:05 +04:00
John Preston
ffc20e4492
Divide structs into several data/ modules.
2017-11-16 07:59:04 +04:00
John Preston
c302219f9e
Use rpl in some widgets and effects.
2017-11-16 07:59:02 +04:00
John Preston
1c8db1e2e9
Fix travis build for the latest ffmpeg code.
2017-11-13 13:55:11 +04:00
John Preston
48e2a5472e
Return not_null<History*> in App::history().
2017-09-03 15:45:43 +03:00
John Preston
25ffaaaa2d
Replace t_assert() with Assert().
...
Also use this assertions for Expects(), Ensures() and Unexpected().
2017-08-30 19:15:42 +03:00
John Preston
b3da99c302
Replace gsl::not_null<T*> with just not_null<T*>.
2017-08-30 19:15:41 +03:00
John Preston
f2801d4775
Fix possible crash in file download after error.
...
Regression was introduced in 2fa2fa41c5
.
In file download failed handler we suggest to try to load the file
once again to the same location. After some changes we started to
forget filename before failed handler. That resulted in large files
loading to memory instead of hard drive.
Add a precondition in FileLoader to prevent such bugs in the future.
2017-08-30 19:15:34 +03:00
John Preston
012d59ab42
Use nullptr instead of std::unique_ptr<Type>().
2017-08-30 19:15:25 +03:00
John Preston
e209737b1a
Display and follow unread mentions in history.
2017-08-30 19:15:13 +03:00
John Preston
ab35829358
Remove App::app(), App::uploader(), App::api().
...
Also use Auth() instead of AuthSession::Current*().
2017-08-25 14:39:18 +03:00
John Preston
96a2af842f
Remove glitch with video messages floating player.
2017-08-01 21:14:44 +03:00
John Preston
0402b4f5f4
Add X / V vector icon to checkbox Toggle view.
...
Also use them in the admin rights / restrictions boxes.
2017-07-09 18:06:27 +03:00
John Preston
da0d78135d
Some refactoring in working with text entities.
...
Also move this code to TextUtilities namespace.
2017-07-06 14:37:42 +03:00
John Preston
3b864d63b9
Fix crash in audio player destructor.
2017-06-30 09:21:44 +03:00
John Preston
cedf8a65e7
Better channel log entry layout inside messages.
...
Also move HistoryService class to a separate module.
2017-06-30 09:21:42 +03:00
John Preston
e39b95175b
Handle channel event log mouse events.
2017-06-30 09:21:42 +03:00
John Preston
110e7c8074
Finalize rename / move.
2017-06-29 11:39:38 +03:00
John Preston
66662e02a6
Fix crash in video player seeking.
...
Regression was introduced in 87ff770020
.
Seek handler may destroy controller so first the playback is updated.
2017-05-31 11:58:43 +03:00
John Preston
6148b78745
Read after AVERROR_INVALIDDATA in video sound.
...
Partially reverse c1c3e4af5b
that stopped on error in such cases.
2017-05-26 17:18:58 +03:00
John Preston
10e34aa996
Fix a crash in round videos with a message text.
2017-05-26 15:20:11 +03:00
John Preston
e0978f86d1
Alpha 1.1.3: Fix some render in macOS.
2017-05-24 17:36:58 +03:00
John Preston
25587d7e8e
Replace different side enums with RectPart.
...
Including Ui::Shadow::Side, App::RectPart and ImportantTooltip::Side.
2017-05-24 16:25:20 +03:00
John Preston
c91e29d15d
Improve floating player show / hide animations.
...
Also replace Window::Corner with a generic RectPart enumeration.
2017-05-24 16:25:20 +03:00
John Preston
ee6d80673a
Snap floating player to column and corner.
2017-05-24 16:25:17 +03:00
John Preston
8f290451b6
Handle mouse clicks in floating player widget.
2017-05-24 16:25:16 +03:00
John Preston
c58a48276f
Hide floating player if video message is visible.
2017-05-24 16:25:15 +03:00
John Preston
b7550f63c9
Add a floating player for round video messages.
2017-05-24 16:25:15 +03:00
John Preston
0bfff65306
Add an animated scroll to current media message.
2017-05-24 16:25:14 +03:00
John Preston
9332032839
Click on media player goes to voice/video message.
2017-05-24 16:25:12 +03:00
John Preston
7873cb4373
Using media player for voice / video messages.
...
Media::Player::Widget displays the current voice / video message
if it is played and the current song otherwise.
It is created when a voice / video message starts and is destroyed
when all the voice / video messages in the playlist are finished.
2017-05-24 16:25:12 +03:00
John Preston
611a3e2f8a
Handle voice playlist in Media::Player::Instance.
...
This allows video and voice messages to autoplay one after another.
2017-05-24 16:25:09 +03:00
John Preston
b9119e5ef6
Play video messages as Type::Voice.
...
Use AudioMsgId instead of videoPlayId.
Any audio track now can be a child loader track of some video clip.
Use Type::Voice instead of Type::Video for round video messages.
Video messages play / pause / resume the same way as voice messages.
2017-05-24 16:25:09 +03:00
John Preston
5915f3f928
Display radial playback progress in round videos.
2017-05-24 16:25:07 +03:00
John Preston
87ff770020
Make Media::Clip::Playback independent of slider.
...
Now animation of the playback progress is processed inside the
Media::Clip::Playback and the sliders just hold plain float64 value.
2017-05-24 16:25:06 +03:00
John Preston
565b56fb5f
Pause all media if a call is created.
...
Pause video, voice messages, songs and stop video messages.
2017-05-12 20:44:18 +03:00
John Preston
23874a0a26
Animate call answer button with an outer ripple.
2017-05-09 23:46:39 +03:00
John Preston
96a0fcb28f
Closed beta 1000035001.
2017-05-09 23:46:32 +03:00
John Preston
2e816f2a67
Play notification sound using Media::Audio::Track.
2017-05-09 23:46:30 +03:00
John Preston
6f89d01452
Add new Media::Audio::Instance for audio tracks.
...
Move some audio-related code from Media::Player to Media::Audio.
2017-05-09 23:46:29 +03:00
John Preston
e8a3535c74
Support audio documents playback inside app.
...
Also add some more decoders in ffmpeg configuration (wav).
Also stop audio device restart on PKEY_AudioEndpoint changes.
Also deduce channel layout from channel count in ffmpeg loaders.
2017-04-30 14:34:23 +03:00
John Preston
7312114b75
Use full volume for video messages.
...
Set video volume to VideoVolume in MediaView and to 1 in HistoryGif.
2017-04-15 22:51:53 +03:00
John Preston
4e5c4a462b
Fix crash in videoplayer audio stream loader.
...
Regression was introduced in 835b1801bc
.
2017-04-15 20:32:14 +03:00
John Preston
835b1801bc
Remove Q_OBJECT dependency from ApiWrap.
...
Also remove it from SingleDelayedCall -> SingleQueuedInvocation.
2017-04-07 18:13:19 +03:00
John Preston
5666f14829
Allow audio and video files with duration < 1s.
2017-03-27 15:50:40 +03:00
John Preston
a1b53c660e
Show video thumbnail in SendFileBox.
...
Read media information (image / song / video) in SendFileBox in the
same way it is read in FileLoadTask::process() and reuse it in
FileLoadTask if it was loaded already for the box.
2017-03-10 17:14:10 +03:00
John Preston
9ed8cbe2d1
Send mp4 and quicktime files as videos.
2017-03-10 17:12:51 +03:00
John Preston
31009b19c6
Removed obsolete storage_file_type fields.
2017-03-04 14:28:21 +03:00
John Preston
08167a6a91
Removed #include "stdafx.h" from all files.
...
Currently the build without implicitly included precompiled header
is not supported anyway (because Qt MOC source files do not include
stdafx.h, they include plain headers).
So when we decide to support building without implicitly included
precompiled headers we'll have to fix all the headers anyway.
2017-03-04 12:27:52 +03:00
John Preston
5f5770dd46
Support special seek whence for ffmpeg.
...
AVSEEK_SIZE is passed as a whence when ffmpeg needs just data size.
2017-03-01 10:31:36 +03:00
John Preston
c207743338
Made base::lambda a copyable value type.
...
Now base::lambda can be copied and can wrap any immutable lambda.
For mutable lambdas there is base::lambda_once (which you're
supposed to call only once to pass data through lambda captures,
for example by using std::unique_ptr). Generally base::lambda is
passed by value and base::lambda_once is passed by rvalue reference.
2017-02-26 21:01:23 +03:00
John Preston
ffc557a0f9
Using standard library instead of std_ namespace.
...
Currently tested only in VS2015.
2017-02-21 16:45:56 +03:00
John Preston
25583fa813
Replace T_WIDGET macro with a template base class.
2017-02-11 14:24:37 +03:00
John Preston
61b55706ae
Alpha 1.0.9: crash fix in video playback.
...
Media::Player::Instance started to notify about all sound
playback updates, even for video files (which do not have
DocumentData filled in), while Media::Player widgets were
relying on the existance of DocumentData in each update.
2017-02-11 11:00:21 +03:00
John Preston
e922e5be39
Alpha 1.0.8: seek in voice messages (by waveform).
2017-02-11 01:37:37 +03:00
John Preston
b842761ea3
Closed beta 1000006001: Built in theme and color palette editor.
2017-02-07 17:56:33 +03:00