Commit Graph

113 Commits (6262abc2c81772ca2bbb4763e2d0bb8fc9d39284)

Author SHA1 Message Date
jp9000 7f0ae838d7 Add system font lookup for mac/windows
This changes the font plugin from using a font file to using a specific
installed system font, which is searched for on each specific system and
associated with the font file.  It now uses a font property instead of a
path property, and font size has been removed because the font property
now handles that.

When the module is first loaded, it will build up a list of system fonts
in order to be usable by Freetype.  It was quite painful to program this
because font files can contain multiple localized versions of their face
names, and then there was the issue where windows likes to mangle
custom style types to the font name.  Regardless, it all seems to have
worked out pretty well.

Minor issues:
- Truetype/Opentype fonts sometimes do not automatically have
  italic and/or bold styles available, it seems that the system applies
  transformations manually in those cases.  We don't do this yet,
  however, so right now a user might select a font with italic/bold
  only to discover that italic/bold doesn't always work.  Not entirely
  sure what to do about this yet.  There's probably a freetype function
  to do something like that somehow,

This also requires that iconv be used for non-windows systems to be able
to look up localized font names within font files.  Windows will use
the win32 API and code page IDs to translate font names.
2014-08-19 02:11:37 -07:00
paibox e1611b431c Merge Freetype text plugin 2014-08-18 00:14:02 -07:00
Jim 254b50f31f Merge pull request #217 from BtbN/cmake_changes
CMake changes for new real ffmpeg in debian experimental
2014-07-29 11:40:49 -07:00
Jim eecc9ab937 Merge pull request #202 from fryshorts/v4l2-input
Add libv4l2 as dependency for the v4l2 plugin
2014-07-29 11:39:43 -07:00
BtbN 60ef547285 Improve/fix cmake find modules 2014-07-29 01:46:30 +02:00
BtbN 28ded1f6b6 Update ffmpeg find modules for recent changes to debian 2014-07-29 01:38:55 +02:00
fryshorts d6f65be966 Add libv4l2 as requirement for the v4l2 plugin.
In order to convert formats not natively supported by obs the
v4l2 userspace library is required. This patch adds a cmake
script to find the library.
2014-07-26 19:29:08 +02:00
BtbN 8380d10805 Export plugin destination and relative prefix to obsconfig.h 2014-07-26 14:27:39 +02:00
BtbN 3442654259 Remove lib prefix from plugins 2014-07-26 14:09:34 +02:00
BtbN 0b7ef499c5 Add relative plugin dest obsconfig.h define 2014-07-26 14:07:14 +02:00
BtbN cac6ad1822 Move config values from the commandline to obsconfig.h 2014-07-26 14:07:14 +02:00
jp9000 7303009ff2 Set minimum version on mac to 10.8.5 2014-07-23 17:52:41 -07:00
jp9000 f2d2b58ae2 Add support for 32/64bit environment variables
This can make it a bit easier to set up 32bit/64bit environments
separately on windows.  This simply allows you to additionally set
FFmpegPath32, FFmpegPath64, x264Path32, x264Path64, etc.
2014-07-18 22:41:23 -07:00
jp9000 85701b0925 Allow copying of all dependencies (windows only)
If the cmake user variable COPY_DEPENDENCIES is set, this script will
make it so that a windows build will automatically copy all required
dependencies (FFmpeg, x264, and Qt5) to the respective
additional_install_files\exec(32|64) directory.  This makes it much
easier to set up a development environment on windows, and much easier
to make usable test builds.

It will also copy the appropriate Direct3D compiler DLL, along with
dependencies of dependencies (the icu*.dll and EGL/GLES files for Qt)
2014-07-18 22:41:22 -07:00
jp9000 5c597102f2 Improve additional_install_files for debug/release
This improves dependency copying and adds separated debug/release
install files.
2014-07-18 22:41:11 -07:00
jp9000 fbf4d18399 Remove obsolete FindDirectX.cmake script
There's no need to find DirectX because with VS2013 and mingw it's
already available by default.  Older visual studio versions that didn't
come with DirectX by default are no longer supported anyway.

(Also mingw doesn't currently work at all due to lack of proper headers,
but once they do it'll be available in the same way.  I think.)
2014-07-19 01:38:43 +02:00
BtbN 415a698bac Add support for build time dependency copying 2014-07-19 01:38:42 +02:00
BtbN 4b5b7534aa Copy and install PDB files on msvc builds 2014-07-19 01:38:41 +02:00
jp9000 fa70b40587 Rename cpack description summary (also fix typo) 2014-07-15 17:00:03 -07:00
jp9000 a32139709f Fix cmake app package issue
Currently the Info.plist file names the app package as OBS.app and cmake
is trying to use 'OBS Studio.app'.  I renamed it to OBS for the time
being just because we don't currently have actual studio interface yet.
2014-07-15 16:38:25 -07:00
jp9000 9cc1b43820 Change mac package name to just 'OBS' 2014-07-14 11:46:57 -07:00
BtbN 5c89e2c548 Also use lightweight tags for git describe 2014-07-13 21:59:03 +02:00
BtbN 6d8146f6f0 Honor QUIET argument in FindJansson 2014-06-18 06:24:21 +02:00
BtbN 602b048089 Unset cached variables on failure in Jansson find module 2014-05-25 16:37:49 +02:00
BtbN 2cc24dccab Add support for external jansson 2014-05-24 15:47:03 +02:00
BtbN 5f96d478c5 Fix fdk-aac library search names 2014-05-23 05:12:55 +02:00
BtbN 9daaacd76a Add Libfdk find module 2014-05-22 13:03:47 +02:00
BtbN e2c2e50f4c Fix ffmpeg/x264 find modules according to cmake find module naming conventions 2014-05-22 13:03:47 +02:00
BtbN 6a63e4fecc Fix cpack problem 2014-05-08 14:43:16 +02:00
BtbN 34923f1f83 Also export a plugin destination, so external plugins know where to install stuff 2014-05-08 14:43:16 +02:00
BtbN 7abf95be27 Use relative path in installed cmake file 2014-05-08 14:43:16 +02:00
BtbN 4959db83d4 Fix absolute path detection 2014-05-08 14:43:16 +02:00
BtbN 38594fff9e Export libobs cmake target, so external plugins can be built without ugly hacks 2014-05-08 14:43:16 +02:00
BtbN 075820028f Improve bundle fixup 2014-04-13 11:05:46 -07:00
BtbN 044680f0b8 Add config.h generation and wrapper header, currently only for OBS_VERSION 2014-04-01 22:11:44 +02:00
BtbN 221a69298b Add a new install function to install targets into the datadir structure
This is mainly intended to be used for preloaded/injected DLLs, which
don't belong into the libdir or plugindir.
2014-04-01 21:33:07 +02:00
jp9000 590a486343 Updated cmake files for ffmpeg plugin
Also, fixed an enum name issue.  No clue why visual
studio actually compiled that without warnings/errors
2014-02-10 07:14:51 -08:00
BtbN e9c22c3b8d Move CPack win32 generator from NSIS to WIX 2014-02-02 22:38:21 +01:00
BtbN a79124e413 Add guessed paths for Win8 and Win81 SDK to DirectX search paths 2014-01-29 14:56:40 +01:00
BtbN 8c80941530 Add support for "git describe" based version numbers.
Also, move cpack related code into its own module, to clean up the main CMakeLists.txt
2014-01-29 14:56:06 +01:00
Jim 6c2242dea8 Merge pull request #33 from andy-kliman/master
I rebuilt obs.icns. Now it corresponds to Table 5-1:
2014-01-28 14:34:25 -08:00
BtbN b4d31f4e56 Change library search order to match include search order 2014-01-28 23:07:49 +01:00
BtbN 074f9627b7 Fixup OSX Rpath for imported external libraries on install 2014-01-28 23:07:49 +01:00
Anry 842b8c8591 obs.icns now corresponds to Table 5-1:
icon_512x512@2x	-	1024 x 1024
icon_512x512	-	512 x 512
icon_256x256@2x	-	512 x 512
icon_256x256	-	256 x 256
icon_128x128@2x	-	256 x 256
icon_128x128	-	128 x 128
icon_32x32@2x	-	64 x 64
icon_32x32	-	32 x 32
icon_16x16@2x	-	32 x 32
icon_16x16	-	16 x 16
2014-01-26 18:28:28 +04:00
BtbN cfc3609a4e Fix/Workaround a cmake path seperator escaping bug on Windows 2014-01-26 02:04:36 +01:00
Palana c1599a069a Remove unnecessary distinction between 32bit and 64bit on osx 2014-01-25 20:39:09 +01:00
Palana 8cd49b705f Update osx bundle info
OBS should not run as agent app
2014-01-25 20:37:53 +01:00
jp9000 93d15ef254 Fix some formatting issues and fix cmake file 2014-01-25 12:34:37 -07:00
Jim 584e47e467 Merge pull request #30 from andy-kliman/master
add new icon for os x bundle
2014-01-25 10:49:23 -08:00
BtbN 6a9dda87bd Restructure installation and package generation 2014-01-25 19:13:33 +01:00
Anry 99bf4bca85 added retina icon 2014-01-25 17:59:25 +04:00
Palana f2d0c98ffe Fix copy&paste error in AppKit cmake module
Only consider AppKit_LIBRARIES
2014-01-24 23:58:21 +01:00
Palana b9330d48f2 Update osx bundle files
The bundle icon now includes all recommended image resolutions and OBS
is now started as high resoltion application for high dpi displays,
still need to add high resolution images for icons used inside OBS
2014-01-24 23:22:34 +01:00
Palana b6c5a26f97 Add explicit AppKit dependency for obs/platform-osx 2014-01-24 23:22:34 +01:00
BtbN 45ec80fb7d Full rewrite of all CMakeLists
CMake now works on all platforms
2014-01-24 18:56:32 +01:00
BtbN 8fa309c96e Clean old cmake files 2014-01-24 01:46:36 +01:00
Palana 5ee0f0edd7 fix typo in obs_helper.cmake 2014-01-09 03:53:34 +01:00
Palana 351c4bfe1d add cmake plugin helpers 2014-01-09 02:37:43 +01:00
Palana 683585938c add infrastructure for app bundle target and unmark as advanced 2013-12-30 20:52:44 +01:00
Palana c536d70379 add support for static system GLEW to cmake 2013-12-30 05:45:19 +01:00
Palana 22c617dd89 fix advanced variables in ffmpeg cmake files 2013-12-30 05:45:19 +01:00
Palana c093f04c58 add static linking options for ffmpeg and wxwidgets to cmake 2013-12-30 03:02:11 +01:00
Palana ec411fe046 added cmake build files 2013-11-14 18:36:46 +01:00