From 57cbc06fd8d5e383a32e5009e1ba1e5ed30684c6 Mon Sep 17 00:00:00 2001 From: John Preston Date: Thu, 4 Sep 2014 16:23:28 +0400 Subject: [PATCH] openal audio and voice messages prepared for os x --- MSVC.md | 8 +-- Telegram/SourceFiles/audio.cpp | 13 +++-- Telegram/SourceFiles/audio.h | 3 ++ Telegram/SourceFiles/history.cpp | 2 +- Telegram/SourceFiles/historywidget.cpp | 4 +- Telegram/SourceFiles/mainwidget.cpp | 2 +- Telegram/SourceFiles/stdafx.cpp | 4 +- Telegram/Telegram.xcodeproj/project.pbxproj | 26 +++++++++ Telegram/Telegram.xcodeproj/qt_preprocess.mak | 13 +++-- XCODE.md | 54 +++++++++++++++++++ 10 files changed, 109 insertions(+), 20 deletions(-) diff --git a/MSVC.md b/MSVC.md index 8610bdc08..de662a208 100644 --- a/MSVC.md +++ b/MSVC.md @@ -68,7 +68,7 @@ or download in ZIP and extract to **D:\TBuild\Libraries\**, rename **libexif-0.6 ####OpenAL Soft -Get sources by git in [Git Bash](http://git-scm.com/downloads) go to **/d/tbuild/libraries** and run +Get sources by git – in [Git Bash](http://git-scm.com/downloads) go to **/d/tbuild/libraries** and run git clone git://repo.or.cz/openal-soft.git @@ -89,7 +89,7 @@ to have **D:\TBuild\Libraries\openal-soft\CMakeLists.txt** ####libogg 1.3.2 -Get sources from http://xiph.org/downloads/ in [ZIP](http://downloads.xiph.org/releases/ogg/libogg-1.3.2.zip) and extract to **D:\TBuild\Libraries\** +Get sources from http://xiph.org/downloads/ – in [ZIP](http://downloads.xiph.org/releases/ogg/libogg-1.3.2.zip) and extract to **D:\TBuild\Libraries\** #####Building library @@ -99,12 +99,12 @@ Get sources from http://xiph.org/downloads/ in [ZIP](http://downloads.xiph.org/r ####Opus codec, opusfile -Get sources by git in [Git Bash](http://git-scm.com/downloads) go to **/d/tbuild/libraries** and run +Get sources by git – in [Git Bash](http://git-scm.com/downloads) go to **/d/tbuild/libraries** and run git clone git://git.opus-codec.org/opus.git git clone git://git.xiph.org/opusfile.git -to have **D:\TBuild\Libraries\opus\** +to have **D:\TBuild\Libraries\opus\win32** #####Building libraries diff --git a/Telegram/SourceFiles/audio.cpp b/Telegram/SourceFiles/audio.cpp index 50b63ea40..7ed03affc 100644 --- a/Telegram/SourceFiles/audio.cpp +++ b/Telegram/SourceFiles/audio.cpp @@ -20,6 +20,8 @@ Copyright (c) 2014 John Preston, https://tdesktop.com #include #include +#include +#include namespace { ALCdevice *audioDevice = 0; @@ -48,9 +50,6 @@ bool _checkALError() { return true; } -#include -#include - void audioInit() { if (audioDevice) return; @@ -90,11 +89,11 @@ void audioInit() { if (blob.size() < 44) return audioFinish(); if (*((const uint32*)(data + 0)) != 0x46464952) return audioFinish(); // ChunkID - "RIFF" - if (*((const uint32*)(data + 4)) != blob.size() - 8) return audioFinish(); // ChunkSize + if (*((const uint32*)(data + 4)) != uint32(blob.size() - 8)) return audioFinish(); // ChunkSize if (*((const uint32*)(data + 8)) != 0x45564157) return audioFinish(); // Format - "WAVE" if (*((const uint32*)(data + 12)) != 0x20746d66) return audioFinish(); // Subchunk1ID - "fmt " uint32 subchunk1Size = *((const uint32*)(data + 16)), extra = subchunk1Size - 16; - if (subchunk1Size < 16 || extra && extra < 2) return audioFinish(); + if (subchunk1Size < 16 || (extra && extra < 2)) return audioFinish(); if (*((const uint16*)(data + 20)) != 1) return audioFinish(); // AudioFormat - PCM (1) uint16 numChannels = *((const uint16*)(data + 22)); @@ -115,7 +114,7 @@ void audioInit() { if (extra) { uint16 extraSize = *((const uint16*)(data + 36)); if (extraSize + 2 != extra) return audioFinish(); - if (blob.size() < 44 + extra) return audioFinish(); + if (uint32(blob.size()) < 44 + extra) return audioFinish(); } if (*((const uint32*)(data + extra + 36)) != 0x61746164) return audioFinish(); // Subchunk2ID - "data" @@ -123,7 +122,7 @@ void audioInit() { if (subchunk2Size % (numChannels * bytesPerSample)) return audioFinish(); uint32 numSamples = subchunk2Size / (numChannels * bytesPerSample); - if (blob.size() < 44 + extra + subchunk2Size) return audioFinish(); + if (uint32(blob.size()) < 44 + extra + subchunk2Size) return audioFinish(); data += 44 + extra; ALenum format = 0; diff --git a/Telegram/SourceFiles/audio.h b/Telegram/SourceFiles/audio.h index e40e8e583..38d0f802a 100644 --- a/Telegram/SourceFiles/audio.h +++ b/Telegram/SourceFiles/audio.h @@ -34,6 +34,9 @@ enum VoiceMessageState { VoiceMessageResuming, }; +class VoiceMessagesFader; +class VoiceMessagesLoader; + class VoiceMessages : public QObject { Q_OBJECT diff --git a/Telegram/SourceFiles/history.cpp b/Telegram/SourceFiles/history.cpp index 2a80a67b8..38eaf8ff5 100644 --- a/Telegram/SourceFiles/history.cpp +++ b/Telegram/SourceFiles/history.cpp @@ -341,7 +341,7 @@ void AudioOpenLink::onClick(Qt::MouseButton button) const { QString already = data->already(true); bool play = audioVoice(); - if (!already.isEmpty() || !data->data.isEmpty() && play) { + if (!already.isEmpty() || (!data->data.isEmpty() && play)) { if (play) { AudioData *playing = 0; VoiceMessageState playingState = VoiceMessageStopped; diff --git a/Telegram/SourceFiles/historywidget.cpp b/Telegram/SourceFiles/historywidget.cpp index 042c1122b..abd248015 100644 --- a/Telegram/SourceFiles/historywidget.cpp +++ b/Telegram/SourceFiles/historywidget.cpp @@ -2696,7 +2696,7 @@ void HistoryWidget::shareContactConfirmation(const QString &phone, const QString App::wnd()->activateWindow(); confirmWithText = withText; - confirmImageId = -1; + confirmImageId = 0xFFFFFFFFFFFFFFFFL; App::wnd()->showLayer(new PhotoSendBox(phone, fname, lname)); } @@ -2742,7 +2742,7 @@ void HistoryWidget::onPhotoFailed(quint64 id) { } void HistoryWidget::confirmShareContact(const QString &phone, const QString &fname, const QString &lname) { - if (-1 == confirmImageId) { + if (0xFFFFFFFFFFFFFFFFL == confirmImageId) { if (confirmWithText) { onSend(); } diff --git a/Telegram/SourceFiles/mainwidget.cpp b/Telegram/SourceFiles/mainwidget.cpp index 01bb33556..10272aa69 100644 --- a/Telegram/SourceFiles/mainwidget.cpp +++ b/Telegram/SourceFiles/mainwidget.cpp @@ -850,7 +850,7 @@ void MainWidget::audioLoadProgress(mtpFileLoader *loader) { audio->finish(); QString already = audio->already(); bool play = audio->openOnSave > 0 && audioVoice(); - if (!already.isEmpty() && audio->openOnSave || !audio->data.isEmpty() && play) { + if ((!already.isEmpty() && audio->openOnSave) || (!audio->data.isEmpty() && play)) { if (play) { AudioData *playing = 0; VoiceMessageState state = VoiceMessageStopped; diff --git a/Telegram/SourceFiles/stdafx.cpp b/Telegram/SourceFiles/stdafx.cpp index 9a8ab5e5e..ebc434652 100644 --- a/Telegram/SourceFiles/stdafx.cpp +++ b/Telegram/SourceFiles/stdafx.cpp @@ -26,7 +26,7 @@ Q_IMPORT_PLUGIN(AccessibleFactory) Q_IMPORT_PLUGIN(AVFMediaPlayerServicePlugin) Q_IMPORT_PLUGIN(QT7ServicePlugin) Q_IMPORT_PLUGIN(AudioCaptureServicePlugin) -Q_IMPORT_PLUGIN(CoreAudioPlugin) +//Q_IMPORT_PLUGIN(CoreAudioPlugin) Q_IMPORT_PLUGIN(QM3uPlaylistPlugin) Q_IMPORT_PLUGIN(AccessibleFactory) Q_IMPORT_PLUGIN(QCoreWlanEnginePlugin) @@ -42,6 +42,6 @@ Q_IMPORT_PLUGIN(QTiffPlugin) Q_IMPORT_PLUGIN(QWbmpPlugin) Q_IMPORT_PLUGIN(QWebpPlugin) #elif defined Q_OS_LINUX -Q_IMPORT_PLUGIN(QPulseAudioPlugin) +//Q_IMPORT_PLUGIN(QPulseAudioPlugin) Q_IMPORT_PLUGIN(QComposePlatformInputContextPlugin) #endif diff --git a/Telegram/Telegram.xcodeproj/project.pbxproj b/Telegram/Telegram.xcodeproj/project.pbxproj index e1e89227b..ce6dc1e05 100644 --- a/Telegram/Telegram.xcodeproj/project.pbxproj +++ b/Telegram/Telegram.xcodeproj/project.pbxproj @@ -46,6 +46,8 @@ 07A6933519927B160099CB9F /* moc_mediaview.cpp in Compile Sources */ = {isa = PBXBuildFile; fileRef = 07A6933419927B160099CB9F /* moc_mediaview.cpp */; }; 07C4753B1967DF1C00CAAFE9 /* switcher.cpp in Compile Sources */ = {isa = PBXBuildFile; fileRef = 07C475391967DF1C00CAAFE9 /* switcher.cpp */; }; 07C4753F1967E37300CAAFE9 /* moc_switcher.cpp in Compile Sources */ = {isa = PBXBuildFile; fileRef = 07C4753E1967E37300CAAFE9 /* moc_switcher.cpp */; }; + 07D7034B19B8755A00C4EED2 /* audio.cpp in Compile Sources */ = {isa = PBXBuildFile; fileRef = 07D7034919B8755A00C4EED2 /* audio.cpp */; }; + 07D703BB19B88FB900C4EED2 /* moc_audio.cpp in Compile Sources */ = {isa = PBXBuildFile; fileRef = 07D703BA19B88FB900C4EED2 /* moc_audio.cpp */; }; 0A49F3A5DC0680FB31519670 /* phoneinput.cpp in Compile Sources */ = {isa = PBXBuildFile; fileRef = 7C8F9CA4FCE8AF8FCCCB961E /* phoneinput.cpp */; settings = {ATTRIBUTES = (); }; }; 0CB7DE9A54CC9BF86FB7B5CA /* mtp.cpp in Compile Sources */ = {isa = PBXBuildFile; fileRef = 6D50D70712776D7ED3B00E5C /* mtp.cpp */; settings = {ATTRIBUTES = (); }; }; 0F0FC25286E16E5F78962FEE /* moc_newgroupbox.cpp in Compile Sources */ = {isa = PBXBuildFile; fileRef = 69FE16874104731CE2A66E0D /* moc_newgroupbox.cpp */; settings = {ATTRIBUTES = (); }; }; @@ -254,6 +256,9 @@ 07C475391967DF1C00CAAFE9 /* switcher.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = switcher.cpp; path = SourceFiles/gui/switcher.cpp; sourceTree = SOURCE_ROOT; }; 07C4753A1967DF1C00CAAFE9 /* switcher.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = switcher.h; path = SourceFiles/gui/switcher.h; sourceTree = SOURCE_ROOT; }; 07C4753E1967E37300CAAFE9 /* moc_switcher.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = moc_switcher.cpp; path = GeneratedFiles/Debug/moc_switcher.cpp; sourceTree = SOURCE_ROOT; }; + 07D7034919B8755A00C4EED2 /* audio.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = audio.cpp; path = SourceFiles/audio.cpp; sourceTree = SOURCE_ROOT; }; + 07D7034A19B8755A00C4EED2 /* audio.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = audio.h; path = SourceFiles/audio.h; sourceTree = SOURCE_ROOT; }; + 07D703BA19B88FB900C4EED2 /* moc_audio.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = moc_audio.cpp; path = GeneratedFiles/Debug/moc_audio.cpp; sourceTree = SOURCE_ROOT; }; 08A7682548FB7E671FF03822 /* boxshadow.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = boxshadow.cpp; path = SourceFiles/gui/boxshadow.cpp; sourceTree = ""; }; 098EA7CE256AAFAE4A17EB77 /* introcode.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = introcode.h; path = SourceFiles/intro/introcode.h; sourceTree = ""; }; 09FD01F2BD652EB838A296D8 /* application.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = application.h; path = SourceFiles/application.h; sourceTree = ""; }; @@ -817,6 +822,7 @@ 5A5431331A13AA7B07414240 /* stdafx.cpp */, 06E379415713F34B83F99C35 /* app.cpp */, C20F9DD8C7B031B8E20D5653 /* application.cpp */, + 07D7034919B8755A00C4EED2 /* audio.cpp */, E466873F01ABA1E55E914489 /* dialogswidget.cpp */, 710C982FC773400941B3AFBC /* dropdown.cpp */, 9B36BB8C5B8CA7B07F3F35F0 /* fileuploader.cpp */, @@ -846,6 +852,7 @@ 6011DDB120E1B2D4803E129A /* stdafx.h */, C19DF71B273A4843553518F2 /* app.h */, 09FD01F2BD652EB838A296D8 /* application.h */, + 07D7034A19B8755A00C4EED2 /* audio.h */, 24F7D3E789E91B10E422C116 /* config.h */, 206B4F5CBD5354BCE19FF32F /* countries.h */, 55B4A93DD455EED91C899A8E /* dialogswidget.h */, @@ -1010,6 +1017,7 @@ 801973D3334D0FCA849CF485 /* Debug */ = { isa = PBXGroup; children = ( + 07D703BA19B88FB900C4EED2 /* moc_audio.cpp */, 0732E4AB199E268A00D50FE7 /* moc_overviewwidget.cpp */, 07C4753E1967E37300CAAFE9 /* moc_switcher.cpp */, E181C525E21A16F2D4396CA7 /* moc_application.cpp */, @@ -1386,6 +1394,7 @@ E9F1CE7F9B18C7C85A50E62D /* style_auto.cpp in Compile Sources */, EBE29731916DB43BF49FE7A4 /* aboutbox.cpp in Compile Sources */, 4426AF526AAD86D6F73CE36F /* addcontactbox.cpp in Compile Sources */, + 07D7034B19B8755A00C4EED2 /* audio.cpp in Compile Sources */, 07C4753B1967DF1C00CAAFE9 /* switcher.cpp in Compile Sources */, 830CB6F547B8C80A569A0271 /* addparticipantbox.cpp in Compile Sources */, A0A6B97F7DBEC81004EC9461 /* confirmbox.cpp in Compile Sources */, @@ -1394,6 +1403,7 @@ BA41D511A9BBCA09365DF88C /* downloadpathbox.cpp in Compile Sources */, 07C4753F1967E37300CAAFE9 /* moc_switcher.cpp in Compile Sources */, 3ABE4F9B2264F770D944106D /* emojibox.cpp in Compile Sources */, + 07D703BB19B88FB900C4EED2 /* moc_audio.cpp in Compile Sources */, 7422A321DF80CF9FAC7CB51B /* newgroupbox.cpp in Compile Sources */, 77B998AC22A13EF3DDEE07AC /* photocropbox.cpp in Compile Sources */, F278C423357CA99797EA30AB /* photosendbox.cpp in Compile Sources */, @@ -1543,6 +1553,10 @@ ./SourceFiles, ./GeneratedFiles, /usr/local/include, + "./../../Libraries/libogg-1.3.2/include", + ./../../Libraries/opus/include, + ./../../Libraries/opusfile/include, + "./../../Libraries/openal-soft/include", "./../../Libraries/libexif-0.6.20", "/usr/local/Qt-5.3.1/include", "/usr/local/Qt-5.3.1/include/QtMultimedia", @@ -1628,6 +1642,10 @@ "-L/usr/local/Qt-5.3.1/plugins/imageformats", "-lz", "-lm", + /usr/local/lib/libopenal.a, + /usr/local/lib/libopusfile.a, + /usr/local/lib/libopus.a, + /usr/local/lib/libogg.a, /usr/local/lib/liblzma.a, /usr/local/lib/libexif.a, ); @@ -1672,6 +1690,10 @@ ./SourceFiles, ./GeneratedFiles, /usr/local/include, + "./../../Libraries/libogg-1.3.2/include", + ./../../Libraries/opus/include, + ./../../Libraries/opusfile/include, + "./../../Libraries/openal-soft/include", "./../../Libraries/libexif-0.6.20", "/usr/local/Qt-5.3.1/include", "/usr/local/Qt-5.3.1/include/QtMultimedia", @@ -1756,6 +1778,10 @@ "-L/usr/local/Qt-5.3.1/plugins/imageformats", "-lz", "-lm", + /usr/local/lib/libopenal.a, + /usr/local/lib/libopusfile.a, + /usr/local/lib/libopus.a, + /usr/local/lib/libogg.a, /usr/local/lib/liblzma.a, /usr/local/lib/libexif.a, ); diff --git a/Telegram/Telegram.xcodeproj/qt_preprocess.mak b/Telegram/Telegram.xcodeproj/qt_preprocess.mak index eb23acdf0..03331a2f3 100644 --- a/Telegram/Telegram.xcodeproj/qt_preprocess.mak +++ b/Telegram/Telegram.xcodeproj/qt_preprocess.mak @@ -31,7 +31,7 @@ mocables: compiler_moc_header_make_all compiler_moc_source_make_all check: first -compilers: GeneratedFiles/qrc_telegram.cpp GeneratedFiles/Debug/moc_application.cpp GeneratedFiles/Debug/moc_dialogswidget.cpp GeneratedFiles/Debug/moc_dropdown.cpp\ +compilers: GeneratedFiles/qrc_telegram.cpp GeneratedFiles/Debug/moc_application.cpp GeneratedFiles/Debug/moc_audio.cpp GeneratedFiles/Debug/moc_dialogswidget.cpp GeneratedFiles/Debug/moc_dropdown.cpp\ GeneratedFiles/Debug/moc_fileuploader.cpp GeneratedFiles/Debug/moc_historywidget.cpp GeneratedFiles/Debug/moc_layerwidget.cpp\ GeneratedFiles/Debug/moc_mediaview.cpp GeneratedFiles/Debug/moc_overviewwidget.cpp GeneratedFiles/Debug/moc_profilewidget.cpp\ GeneratedFiles/Debug/moc_localimageloader.cpp GeneratedFiles/Debug/moc_mainwidget.cpp\ @@ -90,9 +90,9 @@ GeneratedFiles/qrc_telegram.cpp: SourceFiles/telegram.qrc \ SourceFiles/art/chatcolor2.png /usr/local/Qt-5.3.1/bin/rcc -name telegram SourceFiles/telegram.qrc -o GeneratedFiles/qrc_telegram.cpp -compiler_moc_header_make_all: GeneratedFiles/Debug/moc_application.cpp GeneratedFiles/Debug/moc_dialogswidget.cpp GeneratedFiles/Debug/moc_dropdown.cpp GeneratedFiles/Debug/moc_fileuploader.cpp GeneratedFiles/Debug/moc_historywidget.cpp GeneratedFiles/Debug/moc_layerwidget.cpp GeneratedFiles/Debug/moc_mediaview.cpp GeneratedFiles/Debug/moc_overviewwidget.cpp GeneratedFiles/Debug/moc_profilewidget.cpp GeneratedFiles/Debug/moc_localimageloader.cpp GeneratedFiles/Debug/moc_mainwidget.cpp GeneratedFiles/Debug/moc_settingswidget.cpp GeneratedFiles/Debug/moc_sysbuttons.cpp GeneratedFiles/Debug/moc_title.cpp GeneratedFiles/Debug/moc_window.cpp GeneratedFiles/Debug/moc_mtp.cpp GeneratedFiles/Debug/moc_mtpConnection.cpp GeneratedFiles/Debug/moc_mtpDC.cpp GeneratedFiles/Debug/moc_mtpFileLoader.cpp GeneratedFiles/Debug/moc_mtpSession.cpp GeneratedFiles/Debug/moc_animation.cpp GeneratedFiles/Debug/moc_button.cpp GeneratedFiles/Debug/moc_countrycodeinput.cpp GeneratedFiles/Debug/moc_countryinput.cpp GeneratedFiles/Debug/moc_flatbutton.cpp GeneratedFiles/Debug/moc_flatcheckbox.cpp GeneratedFiles/Debug/moc_flatinput.cpp GeneratedFiles/Debug/moc_flatlabel.cpp GeneratedFiles/Debug/moc_flattextarea.cpp GeneratedFiles/Debug/moc_switcher.cpp GeneratedFiles/Debug/moc_phoneinput.cpp GeneratedFiles/Debug/moc_scrollarea.cpp GeneratedFiles/Debug/moc_twidget.cpp GeneratedFiles/Debug/moc_aboutbox.cpp GeneratedFiles/Debug/moc_addcontactbox.cpp GeneratedFiles/Debug/moc_addparticipantbox.cpp GeneratedFiles/Debug/moc_confirmbox.cpp GeneratedFiles/Debug/moc_connectionbox.cpp GeneratedFiles/Debug/moc_contactsbox.cpp GeneratedFiles/Debug/moc_downloadpathbox.cpp GeneratedFiles/Debug/moc_emojibox.cpp GeneratedFiles/Debug/moc_newgroupbox.cpp GeneratedFiles/Debug/moc_photocropbox.cpp GeneratedFiles/Debug/moc_photosendbox.cpp GeneratedFiles/Debug/moc_intro.cpp GeneratedFiles/Debug/moc_introcode.cpp GeneratedFiles/Debug/moc_introphone.cpp GeneratedFiles/Debug/moc_introsignup.cpp GeneratedFiles/Debug/moc_pspecific_mac.cpp +compiler_moc_header_make_all: GeneratedFiles/Debug/moc_application.cpp GeneratedFiles/Debug/moc_audio.cpp GeneratedFiles/Debug/moc_dialogswidget.cpp GeneratedFiles/Debug/moc_dropdown.cpp GeneratedFiles/Debug/moc_fileuploader.cpp GeneratedFiles/Debug/moc_historywidget.cpp GeneratedFiles/Debug/moc_layerwidget.cpp GeneratedFiles/Debug/moc_mediaview.cpp GeneratedFiles/Debug/moc_overviewwidget.cpp GeneratedFiles/Debug/moc_profilewidget.cpp GeneratedFiles/Debug/moc_localimageloader.cpp GeneratedFiles/Debug/moc_mainwidget.cpp GeneratedFiles/Debug/moc_settingswidget.cpp GeneratedFiles/Debug/moc_sysbuttons.cpp GeneratedFiles/Debug/moc_title.cpp GeneratedFiles/Debug/moc_window.cpp GeneratedFiles/Debug/moc_mtp.cpp GeneratedFiles/Debug/moc_mtpConnection.cpp GeneratedFiles/Debug/moc_mtpDC.cpp GeneratedFiles/Debug/moc_mtpFileLoader.cpp GeneratedFiles/Debug/moc_mtpSession.cpp GeneratedFiles/Debug/moc_animation.cpp GeneratedFiles/Debug/moc_button.cpp GeneratedFiles/Debug/moc_countrycodeinput.cpp GeneratedFiles/Debug/moc_countryinput.cpp GeneratedFiles/Debug/moc_flatbutton.cpp GeneratedFiles/Debug/moc_flatcheckbox.cpp GeneratedFiles/Debug/moc_flatinput.cpp GeneratedFiles/Debug/moc_flatlabel.cpp GeneratedFiles/Debug/moc_flattextarea.cpp GeneratedFiles/Debug/moc_switcher.cpp GeneratedFiles/Debug/moc_phoneinput.cpp GeneratedFiles/Debug/moc_scrollarea.cpp GeneratedFiles/Debug/moc_twidget.cpp GeneratedFiles/Debug/moc_aboutbox.cpp GeneratedFiles/Debug/moc_addcontactbox.cpp GeneratedFiles/Debug/moc_addparticipantbox.cpp GeneratedFiles/Debug/moc_confirmbox.cpp GeneratedFiles/Debug/moc_connectionbox.cpp GeneratedFiles/Debug/moc_contactsbox.cpp GeneratedFiles/Debug/moc_downloadpathbox.cpp GeneratedFiles/Debug/moc_emojibox.cpp GeneratedFiles/Debug/moc_newgroupbox.cpp GeneratedFiles/Debug/moc_photocropbox.cpp GeneratedFiles/Debug/moc_photosendbox.cpp GeneratedFiles/Debug/moc_intro.cpp GeneratedFiles/Debug/moc_introcode.cpp GeneratedFiles/Debug/moc_introphone.cpp GeneratedFiles/Debug/moc_introsignup.cpp GeneratedFiles/Debug/moc_pspecific_mac.cpp compiler_moc_header_clean: - -$(DEL_FILE) GeneratedFiles/Debug/moc_application.cpp GeneratedFiles/Debug/moc_dialogswidget.cpp GeneratedFiles/Debug/moc_dropdown.cpp GeneratedFiles/Debug/moc_fileuploader.cpp GeneratedFiles/Debug/moc_historywidget.cpp GeneratedFiles/Debug/moc_layerwidget.cpp GeneratedFiles/Debug/moc_mediaview.cpp GeneratedFiles/Debug/moc_overviewwidget.cpp GeneratedFiles/Debug/moc_profilewidget.cpp GeneratedFiles/Debug/moc_localimageloader.cpp GeneratedFiles/Debug/moc_mainwidget.cpp GeneratedFiles/Debug/moc_settingswidget.cpp GeneratedFiles/Debug/moc_sysbuttons.cpp GeneratedFiles/Debug/moc_title.cpp GeneratedFiles/Debug/moc_window.cpp GeneratedFiles/Debug/moc_mtp.cpp GeneratedFiles/Debug/moc_mtpConnection.cpp GeneratedFiles/Debug/moc_mtpDC.cpp GeneratedFiles/Debug/moc_mtpFileLoader.cpp GeneratedFiles/Debug/moc_mtpSession.cpp GeneratedFiles/Debug/moc_animation.cpp GeneratedFiles/Debug/moc_button.cpp GeneratedFiles/Debug/moc_countrycodeinput.cpp GeneratedFiles/Debug/moc_countryinput.cpp GeneratedFiles/Debug/moc_flatbutton.cpp GeneratedFiles/Debug/moc_flatcheckbox.cpp GeneratedFiles/Debug/moc_flatinput.cpp GeneratedFiles/Debug/moc_flatlabel.cpp GeneratedFiles/Debug/moc_flattextarea.cpp GeneratedFiles/Debug/moc_switcher.cpp GeneratedFiles/Debug/moc_phoneinput.cpp GeneratedFiles/Debug/moc_scrollarea.cpp GeneratedFiles/Debug/moc_twidget.cpp GeneratedFiles/Debug/moc_aboutbox.cpp GeneratedFiles/Debug/moc_addcontactbox.cpp GeneratedFiles/Debug/moc_addparticipantbox.cpp GeneratedFiles/Debug/moc_confirmbox.cpp GeneratedFiles/Debug/moc_connectionbox.cpp GeneratedFiles/Debug/moc_contactsbox.cpp GeneratedFiles/Debug/moc_downloadpathbox.cpp GeneratedFiles/Debug/moc_emojibox.cpp GeneratedFiles/Debug/moc_newgroupbox.cpp GeneratedFiles/Debug/moc_photocropbox.cpp GeneratedFiles/Debug/moc_photosendbox.cpp GeneratedFiles/Debug/moc_intro.cpp GeneratedFiles/Debug/moc_introcode.cpp GeneratedFiles/Debug/moc_introphone.cpp GeneratedFiles/Debug/moc_introsignup.cpp GeneratedFiles/Debug/moc_pspecific_mac.cpp + -$(DEL_FILE) GeneratedFiles/Debug/moc_application.cpp GeneratedFiles/Debug/moc_audio.cpp GeneratedFiles/Debug/moc_dialogswidget.cpp GeneratedFiles/Debug/moc_dropdown.cpp GeneratedFiles/Debug/moc_fileuploader.cpp GeneratedFiles/Debug/moc_historywidget.cpp GeneratedFiles/Debug/moc_layerwidget.cpp GeneratedFiles/Debug/moc_mediaview.cpp GeneratedFiles/Debug/moc_overviewwidget.cpp GeneratedFiles/Debug/moc_profilewidget.cpp GeneratedFiles/Debug/moc_localimageloader.cpp GeneratedFiles/Debug/moc_mainwidget.cpp GeneratedFiles/Debug/moc_settingswidget.cpp GeneratedFiles/Debug/moc_sysbuttons.cpp GeneratedFiles/Debug/moc_title.cpp GeneratedFiles/Debug/moc_window.cpp GeneratedFiles/Debug/moc_mtp.cpp GeneratedFiles/Debug/moc_mtpConnection.cpp GeneratedFiles/Debug/moc_mtpDC.cpp GeneratedFiles/Debug/moc_mtpFileLoader.cpp GeneratedFiles/Debug/moc_mtpSession.cpp GeneratedFiles/Debug/moc_animation.cpp GeneratedFiles/Debug/moc_button.cpp GeneratedFiles/Debug/moc_countrycodeinput.cpp GeneratedFiles/Debug/moc_countryinput.cpp GeneratedFiles/Debug/moc_flatbutton.cpp GeneratedFiles/Debug/moc_flatcheckbox.cpp GeneratedFiles/Debug/moc_flatinput.cpp GeneratedFiles/Debug/moc_flatlabel.cpp GeneratedFiles/Debug/moc_flattextarea.cpp GeneratedFiles/Debug/moc_switcher.cpp GeneratedFiles/Debug/moc_phoneinput.cpp GeneratedFiles/Debug/moc_scrollarea.cpp GeneratedFiles/Debug/moc_twidget.cpp GeneratedFiles/Debug/moc_aboutbox.cpp GeneratedFiles/Debug/moc_addcontactbox.cpp GeneratedFiles/Debug/moc_addparticipantbox.cpp GeneratedFiles/Debug/moc_confirmbox.cpp GeneratedFiles/Debug/moc_connectionbox.cpp GeneratedFiles/Debug/moc_contactsbox.cpp GeneratedFiles/Debug/moc_downloadpathbox.cpp GeneratedFiles/Debug/moc_emojibox.cpp GeneratedFiles/Debug/moc_newgroupbox.cpp GeneratedFiles/Debug/moc_photocropbox.cpp GeneratedFiles/Debug/moc_photosendbox.cpp GeneratedFiles/Debug/moc_intro.cpp GeneratedFiles/Debug/moc_introcode.cpp GeneratedFiles/Debug/moc_introphone.cpp GeneratedFiles/Debug/moc_introsignup.cpp GeneratedFiles/Debug/moc_pspecific_mac.cpp GeneratedFiles/Debug/moc_application.cpp: ../../Libraries/QtStatic/qtbase/include/QtNetwork/QLocalSocket \ ../../Libraries/QtStatic/qtbase/include/QtNetwork/QLocalServer \ ../../Libraries/QtStatic/qtbase/include/QtNetwork/QNetworkReply \ @@ -116,6 +116,13 @@ GeneratedFiles/Debug/moc_application.cpp: ../../Libraries/QtStatic/qtbase/includ SourceFiles/application.h /usr/local/Qt-5.3.1/bin/moc $(DEFINES) -D__APPLE__ -D__GNUC__=4 -I/usr/local/Qt-5.3.1/mkspecs/macx-clang -I. -I/usr/local/Qt-5.3.1/include/QtGui/5.3.1/QtGui -I/usr/local/Qt-5.3.1/include/QtCore/5.3.1/QtCore -I/usr/local/Qt-5.3.1/include -I./SourceFiles -I./GeneratedFiles -I../../Libraries/lzma/C -I../../Libraries/libexif-0.6.20 -I/usr/local/Qt-5.3.1/include -I/usr/local/Qt-5.3.1/include/QtMultimedia -I/usr/local/Qt-5.3.1/include/QtWidgets -I/usr/local/Qt-5.3.1/include/QtNetwork -I/usr/local/Qt-5.3.1/include/QtGui -I/usr/local/Qt-5.3.1/include/QtCore -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include/c++/4.2.1 -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include/c++/4.2.1/backward -I/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/5.1/include -I/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include SourceFiles/application.h -o GeneratedFiles/Debug/moc_application.cpp +GeneratedFiles/Debug/moc_audio.cpp: SourceFiles/types.h \ + ../../Libraries/QtStatic/qtbase/include/QtCore/QReadWriteLock \ + SourceFiles/logs.h \ + ../../Libraries/QtStatic/qtbase/include/QtCore/QTimer \ + ../../Libraries/QtStatic/qtbase/include/QtGui/QColor + /usr/local/Qt-5.3.1/bin/moc $(DEFINES) -D__APPLE__ -D__GNUC__=4 -I/usr/local/Qt-5.3.1/mkspecs/macx-clang -I. -I/usr/local/Qt-5.3.1/include/QtGui/5.3.1/QtGui -I/usr/local/Qt-5.3.1/include/QtCore/5.3.1/QtCore -I/usr/local/Qt-5.3.1/include -I./SourceFiles -I./GeneratedFiles -I../../Libraries/lzma/C -I../../Libraries/libexif-0.6.20 -I/usr/local/Qt-5.3.1/include -I/usr/local/Qt-5.3.1/include/QtMultimedia -I/usr/local/Qt-5.3.1/include/QtWidgets -I/usr/local/Qt-5.3.1/include/QtNetwork -I/usr/local/Qt-5.3.1/include/QtGui -I/usr/local/Qt-5.3.1/include/QtCore -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include/c++/4.2.1 -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include/c++/4.2.1/backward -I/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/5.1/include -I/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include SourceFiles/audio.h -o GeneratedFiles/Debug/moc_audio.cpp + GeneratedFiles/Debug/moc_dialogswidget.cpp: SourceFiles/dialogswidget.h /usr/local/Qt-5.3.1/bin/moc $(DEFINES) -D__APPLE__ -D__GNUC__=4 -I/usr/local/Qt-5.3.1/mkspecs/macx-clang -I. -I/usr/local/Qt-5.3.1/include/QtGui/5.3.1/QtGui -I/usr/local/Qt-5.3.1/include/QtCore/5.3.1/QtCore -I/usr/local/Qt-5.3.1/include -I./SourceFiles -I./GeneratedFiles -I../../Libraries/lzma/C -I../../Libraries/libexif-0.6.20 -I/usr/local/Qt-5.3.1/include -I/usr/local/Qt-5.3.1/include/QtMultimedia -I/usr/local/Qt-5.3.1/include/QtWidgets -I/usr/local/Qt-5.3.1/include/QtNetwork -I/usr/local/Qt-5.3.1/include/QtGui -I/usr/local/Qt-5.3.1/include/QtCore -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include/c++/4.2.1 -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include/c++/4.2.1/backward -I/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/5.1/include -I/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include SourceFiles/dialogswidget.h -o GeneratedFiles/Debug/moc_dialogswidget.cpp diff --git a/XCODE.md b/XCODE.md index 989b20d06..fbbe5ec92 100644 --- a/XCODE.md +++ b/XCODE.md @@ -65,6 +65,60 @@ In Terminal go to **/Users/user/TBuild/Libraries/libexif-0.6.20** and there run make sudo make install +####OpenAL Soft + +Get sources by git – in Terminal go to **/Users/user/TBuild/Libraries** and run + + git clone git://repo.or.cz/openal-soft.git + +to have **/Users/user/TBuild/Libraries/openal-soft/CMakeLists.txt** + +#####Building library + +In Terminal go to **/Users/user/TBuild/Libraries/openal-soft/build** and there run + + cmake -D LIBTYPE:STRING=STATIC .. + make + sudo make install + +####libogg 1.3.2 + +Get sources from http://xiph.org/downloads/ – in [ZIP](http://downloads.xiph.org/releases/ogg/libogg-1.3.2.zip) and extract to **/Users/user/TBuild/Libraries** + +#####Building library + +In Terminal go to **/Users/user/TBuild/Libraries/libogg-1.3.2** and there run + + ./configure + make + sudo make install + +####Opus codec, opusfile + +Download sources [opus-1.1.tar.gz](http://downloads.xiph.org/releases/opus/opus-1.1.tar.gz) and [opusfile-0.6.tar.gz](http://downloads.xiph.org/releases/opus/opusfile-0.6.tar.gz) from http://www.opus-codec.org/downloads/, extract to **/Users/user/TBuild/Libraries** and rename to have **/Users/user/TBuild/Libraries/opus/configure** and **/Users/user/TBuild/Libraries/opusfile/configure** + +#####Building libraries + +Download [pkg-config 0.28](http://pkgconfig.freedesktop.org/releases/pkg-config-0.28.tar.gz) from http://pkg-config.freedesktop.org, extract it to **/Users/user/TBuild/Libraries** + +In Terminal go to **/Users/user/TBuild/Libraries/pkg-config-0.28** and run + + ./configure --with-internal-glib + make + sudo make install + +then go to **/Users/user/TBuild/Libraries/opus** and there run + + ./configure + make + sudo make install + +then go to **/Users/user/TBuild/Libraries/opusfile** and there run + + ./configure + make + sudo make install + ####Qt 5.3.1, slightly patched http://download.qt-project.org/official_releases/qt/5.3/5.3.1/single/qt-everywhere-opensource-src-5.3.1.tar.gz