Commit Graph

325 Commits

Author SHA1 Message Date
Licai Guo
def55c141e fix decoder win64 asm float issues 2014-01-22 19:01:51 -08:00
ruil2
9efbef67b9 Merge pull request #153 from licaiguo/fix-empty-packets
fix crash caused by empty packets and add more checks -- review request #44
2014-01-22 17:44:05 -08:00
Ethan Hugg
256cd0f610 Merge pull request #172 from volvet/win64_float_fix_for_enc_b
fix win64 float issue, enable AQ assembly
2014-01-22 17:25:03 -08:00
volvet
c795cfe18e Merge pull request #186 from ethanhugg/msvc_readme
Add readme instructions for using msvc from developer command prompt.
2014-01-22 16:39:39 -08:00
Ethan Hugg
691e8379b5 Merge pull request #184 from mstorsjo/c-interface-vtbl
Add a public C API to the library by mimicking the C++ ABI with a C struct
2014-01-22 08:11:40 -08:00
Ethan Hugg
99565beb81 Merge pull request #181 from mstorsjo/threadlib-update-macos-linux
Update the cpu core count detection functions for linux and mac os
2014-01-22 08:09:39 -08:00
volvet
c4f0159620 Merge pull request #187 from licaiguo/fix-coverage-scan
fix issues found by coverage scan -- review request #58
2014-01-22 00:07:02 -08:00
Licai Guo
ff5e6dde2a remove unnecessary return 2014-01-21 23:56:39 -08:00
Licai Guo
048dea434d remove unnecessary check, confirmed safe usage 2014-01-21 23:54:21 -08:00
Martin Storsjö
5e10951c47 Use sysctl instead of the deprecated Gestalt API for getting the number of cores on OS X
Also use the __APPLE__ predefined define instead of MACOS for enabling
these code paths.

This also avoids having to link to the CoreServices framework in
order to get the Gestalt function.
2014-01-22 09:44:49 +02:00
Martin Storsjö
af6feaa45c Use sched_getaffinity to get the number of cores on linux
This gets rid of the code that parses /proc/cpuinfo, and avoids
forking within the library.

The previous code also failed build on modern glibc versions
due to ignoring the return value of the system, read and write
system calls.
2014-01-22 09:44:48 +02:00
Ethan Hugg
ae73411f9a Merge pull request #176 from mstorsjo/remove-msvc-2010-2012-files
Remove the MSVC 2010 and 2012 project files
2014-01-21 19:29:49 -08:00
Licai Guo
a53377314a fix issues found by coverage scan 2014-01-21 19:13:46 -08:00
Ethan Hugg
2bbf5cb85f Add readme instructions for using msvc from developer command prompt. 2014-01-21 13:35:42 -08:00
Ethan Hugg
6607f43aab Merge pull request #185 from mstorsjo/macos-define
Define MACOS when building for OS X
2014-01-21 12:08:13 -08:00
Martin Storsjö
797a19e367 Define MACOS when building for OS X
The library uses this define to enable OS X specific functionality
in general, even if none of those snippets actually have been
strictly required so far.
2014-01-21 21:17:59 +02:00
Martin Storsjö
36f96cb766 Don't include the headers for dynamically loading the VP library if NO_DYNAMIC_VP is defined
bundleloader.h, which is included if MACOS is defined, defines
inline functions that reference bundle loading system functions,
which requires linking to the core foundation framework.

Avoid requiring linking to extra libraries/frameworks if
NO_DYNAMIC_VP is defined.
2014-01-21 21:15:32 +02:00
Martin Storsjö
043575ffb0 Add a public C API to the library
Add a struct that matches the C++ interface vtable.

This requires that the C++ interface methods are declared to use
the same calling convention as normal C functions, and that the
C struct exactly matches the layout and ordering of the C++
virtual table - MSVC seemed to reorder methods if there were
overloaded methods.
2014-01-21 20:54:32 +02:00
Martin Storsjö
dd0db820fc Rename public interface methods to avoid two overloaded methods with the same name
This is required to make the order in the C++ virtual table
consistent in MSVC - previously the overloaded methods were
ordered differently in the vtable compared to the interface
declaration.
2014-01-21 20:54:32 +02:00
Ethan Hugg
efaa153bb1 Merge pull request #183 from mstorsjo/remove-unused-typedef
Remove unused typedefs
2014-01-21 10:34:14 -08:00
Ethan Hugg
ae0bd3ee02 Merge pull request #182 from mstorsjo/move-threadlib
Move the WelsThreadLib files to the common directory/library
2014-01-21 10:33:50 -08:00
Ethan Hugg
b6dcd94cb0 Merge pull request #180 from mstorsjo/remove-disabled-bundle-loading
Remove disabled/broken/unused code for bundle loading in the console tools
2014-01-21 10:30:28 -08:00
Ethan Hugg
57a292b106 Merge pull request #179 from mstorsjo/fix-bundleloader-64bit
Fix building of macos bundle loading code on 64 bit
2014-01-21 09:46:40 -08:00
Ethan Hugg
c4609af29c Merge pull request #178 from mstorsjo/remove-system-header-hackery
Remove system header/define hackery in welsenc.cpp
2014-01-21 09:45:38 -08:00
Ethan Hugg
47db901f29 Merge pull request #177 from mstorsjo/remove-unused-function
Remove an unused function
2014-01-21 09:44:08 -08:00
Ethan Hugg
6d880360b0 Merge pull request #175 from mstorsjo/remove-unused-define
Remove the __NO_CTYPE define
2014-01-21 09:39:49 -08:00
Martin Storsjö
c196fd1ef0 Remove unused typedefs 2014-01-21 15:44:05 +02:00
Martin Storsjö
68f32c3c29 Move the WelsThreadLib files to the common directory/library
This simplifies building the thread library code via the
makefile based build system.
2014-01-21 15:11:07 +02:00
Martin Storsjö
249b4e3d1f Only build the thread code if multithreading is enabled
This allows including the source file in the build even if
multithreading isn't desired.
2014-01-21 15:11:07 +02:00
Martin Storsjö
867d39e01b Remove system header/define hackery in welsenc.cpp
There doesn't seem to be any actual need for this, building
on linux still works just fine.
2014-01-21 15:02:51 +02:00
Martin Storsjö
67405177d9 Remove an unused function
This function contains a lot of platform specific constants
whose use is unknown.
2014-01-21 15:01:52 +02:00
Martin Storsjö
d1a6929516 Fix building of macos bundle loading code on 64 bit 2014-01-21 15:00:56 +02:00
Martin Storsjö
35ad8cb3a5 Remove an exclude of an nonexistent file 2014-01-21 14:59:41 +02:00
Martin Storsjö
41928236e4 Remove unused files about macos bundle loading from the console tools 2014-01-21 14:59:41 +02:00
Martin Storsjö
b903aa8273 Remove/disable broken code for loading the encoder library from a macos bundle
This refers to a file "bundlewelsenc.h" which doesn't even
exist in the project at the moment.

The corresponding bundle loading code is not called at all
in the decoder console tool.
2014-01-21 14:59:41 +02:00
Martin Storsjö
ccca04453a Remove the MSVC 2010 and 2012 project files
Only the 2008 version is kept up to date at the moment.

The newer versions of MSVC can open and upgrade the 2008 version
files anyway, so by removing the unmaintained ones we reduce the
confusion and maintainance burden.

Additionally, the preferred way of building with MSVC is with the
makefile build system, according to the readme.
2014-01-21 13:51:41 +02:00
Martin Storsjö
5cb3fc93e0 Remove the __NO_CTYPE define
Nothing within the project uses it, and it's not necessary to
build the project either, tested on both linux and mingw.
2014-01-21 12:48:33 +02:00
volvet
f8b84b642d Merge pull request #173 from mstorsjo/readme-rc-issue
Mention the issues about the rate control if frame skipping is disabled
2014-01-21 00:36:47 -08:00
Licai Guo
56767f8154 add parenthses 2014-01-21 00:23:41 -08:00
Martin Storsjö
1f688a8731 Mention the issues about the rate control if frame skipping is disabled
As requested by Volvet in the review of the frame skipping option.
2014-01-21 10:20:29 +02:00
volvet
5c9f447c0e fix win64 float issue, enable AQ assembly 2014-01-21 11:16:48 +08:00
Ethan Hugg
ae027b83d8 Merge pull request #159 from mstorsjo/frameskip-option
Add a runtime option for controlling frame skipping
2014-01-20 16:56:32 -08:00
Ethan Hugg
a8f16f3bb1 Merge pull request #170 from varunbpatil/unused_headers
Removed unused headers in test/
2014-01-20 11:11:21 -08:00
Ethan Hugg
a22313acc8 Merge pull request #169 from varunbpatil/mktargets_sh
Don't execute mktargets.py if cannot cd into correct directory
2014-01-20 10:59:31 -08:00
Varun B Patil
d1d444b622 Removed unused headers in test/ 2014-01-20 22:11:47 +05:30
Varun B Patil
2d83e4561a Don't execute mktargets.py if cannot cd into correct directory 2014-01-20 21:52:36 +05:30
Ethan Hugg
7d6035d5d4 Merge pull request #164 from varunbpatil/mktargets_cleanup
Cleanup mktargets.py
2014-01-19 09:14:52 -08:00
Ethan Hugg
a8a2c36fbd Merge pull request #163 from varunbpatil/makefile_cleanup
Cleanup include dir list in Makefile
2014-01-19 09:14:11 -08:00
Varun B Patil
d78906aa21 Cleanup mktargets.py
1.Remove semicolons
2.close file
2014-01-19 21:39:20 +05:30
Varun B Patil
32b3b72e9f Cleanup include dir list in Makefile 2014-01-19 20:30:31 +05:30