Files
QtAV/examples/common/libcommon.pri
T
wang-bin b562ab9820 version 1.9.0
Changelog:
- No audio thread if audio stream < 0. null AudioOutput now still create
audio thread.
- VideoOutput: fix lock error
- Filter: add X11 text rendering for X11Renderer/XVRenderer.
- LibAVFilter supports HW frames(not recommended)
- VideoFrame copy and init issue, bpp compute error
- Avoid using some stl APIs that breaks ABI
- Add x11 renderer
- XV: support NV12 and packed yuv formats
- Fix factory initialization for static build(iOS for example)
- Fix ffmpeg log level
- Remove AVPicture which is deprecated
- SWS 16 alignment, output to user defined buffer
- Always define the registered id so we can use everywhere
- Better iOS support: build, run, deploy(prl)
- use libuchardet now, use system one if possible
- Fix android build on windows
- XAudio2: fix crash. `double` sample format is not supported
- Fix clock value if speed changed
- VideoRenderer.updateUi
- VideoCapture: fix HW frame save
- New logo ![](http://qtav.org/blog/images/QtAV1.9.0-logo.png "Logo")
- Android: support protocol 'content'. Now can play from Gallery.
- MediaIO is not writable by default
- WinRT (Windows Store) support:
 * Link to XAudio2
 * File open and protocol
- VA-API:
 * Add hevc, vp9. Not tested
 * Support more profiles
 * Improve nvidia support
 * Interop with egl support(dma, tfp). libva 0.38 and Qt>=5.5 are
required.
 * Check resolution support before open
 * Add thread count option (new ffmpeg >2.8 does not support)
 * Prefer /dev/dri/renderD128 for drm
 * Correctly release X11/drm resource
- OpenGL:
 * OpenGL ES3 optimization
 * use new OpenGL and GLSL APIs if possible
- CI:
 * Add windows. Build with latest Qt release. Using msbuild, nmake and
mingw32-make
- API:
 * AVPlayer.stepForward(), stepBackword(). playNextFrame() is deprecated
 * AVPlayer.state
 * AVPlayer.videoDecoderPriority with name list
 * VideoRenderer.frameSize (C++), VideoOutput.frameSize
 * XXXDecoder/Encoder::supportedCodecs, AV(De)Muxer.supportedFormats/
Extensions
 * QML: more metaData keys: startTime, sampleFormat, channelLayout,
pixelFormat, videoFrames
- QMLPlayer/Player:
 * fix OpenGLWidgetRenderer crash
 * Handle Home/Back button for mobile
 * Preview item is movable
 * ppa: rename /usr/bin/player to /usr/bin/Player
2015-12-21 02:24:08 +08:00

164 lines
5.2 KiB
Plaintext

# qmake library building template pri file
# Copyright (C) 2011-2015 Wang Bin <wbsecg1@gmail.com>
# Shanghai, China.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
# You should have received a copy of the GNU General Public License along
# with this program; if not, write to the Free Software Foundation, Inc.,
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
#
############################## HOW TO ##################################
# Suppose the library name is XX
# Usually what you need to change are: staticlink, LIB_VERSION, NAME and DLLDESTDIR.
# And rename xx-buildlib and LIBXX_PRI_INCLUDED
# the contents of libXX.pro is:
# TEMPLATE = lib
# QT -= gui
# CONFIG *= xx-buildlib
# STATICLINK = 1 #optional. default is 0, i.e. dynamically link
# PROJECTROOT = $$PWD/..
# include(libXX.pri)
# preparePaths($$OUT_PWD/../out)
# HEADERS = ...
# SOURCES = ...
# ...
# the content of other pro using this library is:
# TEMPLATE = app
# PROJECTROOT = $$PWD/..
# STATICLINK = 1 #or 0
# include(dir_of_XX/libXX.pri)
# preparePaths($$OUT_PWD/../out)
# HEADERS = ...
# SOURCES = ...
#
NAME = common
!isEmpty(LIB$$upper($$NAME)_PRI_INCLUDED): {
error("lib$${NAME}.pri already included")
unset(NAME)
}
eval(LIB$$upper($$NAME)_PRI_INCLUDED = 1)
LIB_VERSION = $$QTAV_VERSION #0.x.y may be wrong for dll
# If user haven't supplied STATICLINK, then auto-detect
isEmpty(STATICLINK) {
contains(CONFIG, staticlib) {
STATICLINK = 1
} else {
STATICLINK = 0
}
# Override for ios. Dynamic link is only supported
# in iOS 8.1.
ios:STATICLINK = 1
}
TEMPLATE += fakelib
PROJECT_TARGETNAME = $$qtLibraryTarget($$NAME)
TEMPLATE -= fakelib
isEmpty(PROJECTROOT): PROJECTROOT = $$PWD/..
include($${PROJECTROOT}/common.pri)
preparePaths($$OUT_PWD/../out)
CONFIG += depend_includepath #?
PROJECT_SRCPATH = $$PWD
PROJECT_LIBDIR = $$qtLongName($$BUILD_DIR/lib)
INCLUDEPATH *= $$PROJECT_SRCPATH $$PROJECT_SRCPATH/.. $$PROJECT_SRCPATH/$$NAME
DEPENDPATH *= $$PROJECT_SRCPATH
#QMAKE_LFLAGS_RPATH += #will append to rpath dir
#eval() ?
!contains(CONFIG, $$lower($$NAME)-buildlib) {
#The following may not need to change
CONFIG *= link_prl
#mac_framework {
# LIBS += -F$$PROJECT_LIBDIR -framework $$PROJECT_TARGETNAME
#} else {
LIBS *= -L$$PROJECT_LIBDIR -l$${PROJECT_TARGETNAME}
isEqual(STATICLINK, 1) {
PRE_TARGETDEPS += $$PROJECT_LIBDIR/$$qtStaticLib($$NAME)
} else {
win32 {
PRE_TARGETDEPS *= $$PROJECT_LIBDIR/$$qtSharedLib($$NAME, $$LIB_VERSION)
} else {
PRE_TARGETDEPS *= $$PROJECT_LIBDIR/lib$${PROJECT_TARGETNAME}.$${QMAKE_EXTENSION_SHLIB}
}
}
#}
} else {
#Add your additional configuration first. e.g.
# win32: LIBS += -lUser32
# The following may not need to change
!CONFIG(plugin) {
#TEMPLATE = lib
VERSION = $$LIB_VERSION
DESTDIR= $$PROJECT_LIBDIR
}
TARGET = $$PROJECT_TARGETNAME ##I commented out this before, why?
CONFIG *= create_prl #
DEFINES += BUILD_$$upper($$NAME)_LIB #win32-msvc*
isEqual(STATICLINK, 1) {
CONFIG -= shared dll ##otherwise the following shared is true, why?
CONFIG *= staticlib
} else {
CONFIG *= shared #shared includes dll
}
shared {
!CONFIG(plugin) {
!isEqual(DESTDIR, $$BUILD_DIR/bin): DLLDESTDIR = $$BUILD_DIR/bin #copy shared lib there
}
CONFIG(release, debug|release): !isEmpty(QMAKE_STRIP): QMAKE_POST_LINK = -$$QMAKE_STRIP $$PROJECT_LIBDIR/$$qtSharedLib($$NAME)
#copy from the pro creator creates.
symbian {
MMP_RULES += EXPORTUNFROZEN
TARGET.UID3 = 0xE4CC8061
TARGET.CAPABILITY =
TARGET.EPOCALLOWDLLDATA = 1
addFiles.sources = $$qtSharedLib($$NAME, $$LIB_VERSION)
addFiles.path = !:/sys/bin
DEPLOYMENT += addFiles
}
}
unix:!symbian {
maemo5 {
target.path = /opt/usr/lib
} else {
target.path = /usr/lib
}
INSTALLS += target
}
}
!no_rpath:!cross_compile:set_rpath($$PROJECT_LIBDIR)
unset(LIB_VERSION)
unset(PROJECT_SRCPATH)
unset(PROJECT_LIBDIR)
unset(PROJECT_TARGETNAME)
QMAKE_INFO_PLIST = $$PWD/Info.plist
defineTest(genRC) {
RC_ICONS = $$PROJECTROOT/src/QtAV.ico
QMAKE_TARGET_COMPANY = "Shanghai University->S3 Graphics->Deepin | wbsecg1@gmail.com"
QMAKE_TARGET_DESCRIPTION = "QtAV Multimedia framework. http://qtav.org"
QMAKE_TARGET_COPYRIGHT = "Copyright (C) 2012-2015 WangBin, wbsecg1@gmail.com"
QMAKE_TARGET_PRODUCT = "QtAV $$1"
export(RC_ICONS)
export(QMAKE_TARGET_COMPANY)
export(QMAKE_TARGET_DESCRIPTION)
export(QMAKE_TARGET_COPYRIGHT)
export(QMAKE_TARGET_PRODUCT)
return(true)
}