AudioDecode.pro 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137
  1. #-------------------------------------------------
  2. #
  3. # Project created by QtCreator 2019-11-14T10:38:31
  4. #
  5. #-------------------------------------------------
  6. QT += core gui charts
  7. greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
  8. TARGET = AudioDecode
  9. TEMPLATE = app
  10. # The following define makes your compiler emit warnings if you use
  11. # any feature of Qt which has been marked as deprecated (the exact warnings
  12. # depend on your compiler). Please consult the documentation of the
  13. # deprecated API in order to know how to port your code away from it.
  14. DEFINES += QT_DEPRECATED_WARNINGS
  15. # You can also make your code fail to compile if you use deprecated APIs.
  16. # In order to do so, uncomment the following line.
  17. # You can also select to disable deprecated APIs only up to a certain version of Qt.
  18. #DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000 # disables all the APIs deprecated before Qt 6.0.0
  19. # Default rules for deployment.
  20. qnx: target.path = /tmp/$${TARGET}/bin
  21. else: unix:!android: target.path = /opt/$${TARGET}/bin
  22. !isEmpty(target.path): INSTALLS += target
  23. CONFIG += c++11
  24. UI_DIR = obj/Gui
  25. MOC_DIR = obj/Moc
  26. OBJECTS_DIR = obj/Obj
  27. #将输出文件直接放到源码目录下的bin目录下,将dll都放在了次目录中,用以解决运行后找不到dll的问
  28. #DESTDIR=$$PWD/bin/
  29. contains(QT_ARCH, i386) {
  30. message("32-bit")
  31. DESTDIR = $${PWD}/bin/bin32
  32. } else {
  33. message("64-bit")
  34. DESTDIR = $${PWD}/bin/bin64
  35. }
  36. SOURCES += \
  37. src/AppConfig.cpp \
  38. src/AudioDecoder/AudioDecoder.cpp \
  39. src/AudioFrame/AACFrame.cpp \
  40. src/AudioFrame/PCMFrame.cpp \
  41. src/AudioPlayer/AudioPlayer.cpp \
  42. src/AudioPlayer/AudioPlayer_RtAudio.cpp \
  43. src/AudioPlayer/AudioPlayer_SDL.cpp \
  44. src/AudioReader/AAC/AACReader.cpp \
  45. src/AudioReader/ReadAudioFileThread.cpp \
  46. src/Base/FunctionTransfer.cpp \
  47. src/EventHandle/AudioPlayerEventHandle.cpp \
  48. src/Mutex/Cond.cpp \
  49. src/Mutex/Mutex.cpp \
  50. src/main.cpp \
  51. src/MainWindow.cpp
  52. HEADERS += \
  53. src/AppConfig.h \
  54. src/AudioDecoder/AudioDecoder.h \
  55. src/AudioFrame/AACFrame.h \
  56. src/AudioFrame/PCMFrame.h \
  57. src/AudioPlayer/AudioPlayer.h \
  58. src/AudioPlayer/AudioPlayer_RtAudio.h \
  59. src/AudioPlayer/AudioPlayer_SDL.h \
  60. src/AudioReader/AAC/AACReader.h \
  61. src/AudioReader/ReadAudioFileThread.h \
  62. src/Base/FunctionTransfer.h \
  63. src/EventHandle/AudioPlayerEventHandle.h \
  64. src/MainWindow.h \
  65. src/Mutex/Cond.h \
  66. src/Mutex/Mutex.h
  67. FORMS += \
  68. src/MainWindow.ui
  69. include($$PWD/lib/RtAudio/RtAudio.pri)
  70. win32{
  71. QMAKE_CFLAGS_DEBUG += -MT
  72. QMAKE_CXXFLAGS_DEBUG += -MT
  73. QMAKE_CFLAGS_RELEASE += -MT
  74. QMAKE_CXXFLAGS_RELEASE += -MT
  75. DEFINES += NDEBUG WIN32 _CONSOLE __WINDOWS_ASIO__ __WINDOWS_DS__ __WINDOWS_WASAPI__
  76. contains(QT_ARCH, i386) {
  77. message("32-bit")
  78. INCLUDEPATH += $$PWD/lib/win32/ffmpeg/include \
  79. $$PWD/lib/win32/SDL2/include \
  80. $$PWD/src
  81. LIBS += -L$$PWD/lib/win32/ffmpeg/lib -lavcodec -lavdevice -lavfilter -lavformat -lavutil -lpostproc -lswresample -lswscale
  82. LIBS += -L$$PWD/lib/win32/SDL2/lib -lSDL2
  83. } else {
  84. message("64-bit")
  85. INCLUDEPATH += $$PWD/lib/win64/ffmpeg/include \
  86. $$PWD/lib/win64/SDL2/include \
  87. $$PWD/src
  88. LIBS += -L$$PWD/lib/win64/ffmpeg/lib -lavcodec -lavdevice -lavfilter -lavformat -lavutil -lpostproc -lswresample -lswscale
  89. LIBS += -L$$PWD/lib/win64/SDL2/lib -lSDL2
  90. }
  91. }
  92. unix{
  93. contains(QT_ARCH, i386) {
  94. message("32-bit, 请自行编译32位库!")
  95. } else {
  96. message("64-bit")
  97. INCLUDEPATH += $$PWD/lib/linux/ffmpeg/include \
  98. $$PWD/lib/linux/sdl2/include \
  99. $$PWD/src
  100. LIBS += -L$$PWD/lib/linux/ffmpeg/lib -lavformat -lavcodec -lavdevice -lavfilter -lavutil -lswresample -lswscale
  101. LIBS += -lpthread -ldl
  102. }
  103. #QMAKE_POST_LINK 表示编译后执行内容
  104. #QMAKE_PRE_LINK 表示编译前执行内容
  105. #解压库文件
  106. #QMAKE_PRE_LINK += "cd $$PWD/lib/linux && tar xvzf ffmpeg.tar.gz "
  107. system("cd $$PWD/lib/linux && tar xvzf ffmpeg.tar.gz")
  108. }