Commit Graph

70 Commits

Author SHA1 Message Date
Martin Storsjö
7ae3fbcfbf Share one implementation of the CReadConfig class between the decoder and encoder console apps 2014-06-30 09:04:12 +03:00
Martin Storsjö
b5407915cc Avoid warnings when building for iOS
Get rid of warnings by avoiding mixing data types unnecessarily,
and by adding casts.
2014-06-29 16:03:34 +03:00
Haibo Zhu
daf67d607f add win 64 warnings remove 2014-06-19 18:31:39 -07:00
huili2
fe0f10a063 add missing declaration of members for render 2014-06-18 02:14:29 -07:00
huili2
1b68890e1e modify render for display diff resolution 2014-06-12 22:23:40 -07:00
Martin Storsjö
dc91e0958b Integrate the lone function from logging.cpp into welsCodecTrace.cpp 2014-06-11 08:08:56 +03:00
Martin Storsjö
0628c9b190 Set the trace level in the decoder console app via a proper option 2014-06-11 08:08:29 +03:00
Martin Storsjö
1bccef940c Read the right command line arguments in h264dec.cpp
pArgV[i++] evalates to the same string as cmd (which is
pArgV[i]); we need to increment i before indexing into
pArgV again.
2014-06-11 08:08:29 +03:00
huili2
5482207823 modify dec API from void to explicit type, and some comments 2014-05-21 23:47:57 -07:00
huili2
5ed24f216b astyle all files 2014-05-05 19:30:21 -07:00
huili2
d031509474 add DPB management if frame loss happens 2014-04-20 22:59:25 -07:00
huili2
bc2c4b0db0 add EC frame/slice copy. 2014-04-16 01:44:35 -07:00
Martin Storsjö
efdb58dae5 Silence MSVC warnings about "unsafe" standard C functions in console apps
Within the libraries themselves, we use other wrapper functions to
make sure the functions are used safely, but this wrapper layer isn't
available outside of the library in the console apps. The usage of these
functions is safe here, so silence the warnings.

This gets rid of all warnings when building with MSVC in 32 bit mode,
making it much easier to spot new warnings.
2014-04-11 11:27:44 +03:00
Martin Storsjö
99c6131004 Remove some unnecessary ifdefs
These headers are standard headers that are available in MSVC as well.
There's nothing ifdeffed in the implementation of this file that would
explain why these headers only are required in these configurations.
2014-04-11 10:29:30 +03:00
Andoni Morales Alastruey
328740f294 Prefix API with the Wels namespace 2014-03-25 17:40:01 +01:00
Martin Storsjö
d024dc5cc0 Remove unused *_LIBS make variables 2014-03-25 10:13:29 +02:00
Licai Guo
a688f5278a fix most of the warnings 2014-03-19 01:16:08 -07:00
Martin Storsjö
e1b5e038d2 Use .obj as suffix for object files on MSVC
This avoids warnings when linking about "unrecognized source file
type, object file assumed".
2014-03-18 19:41:06 +02:00
Licai Guo
65c7168d8d Add iOS support for decoder. 2014-02-20 10:08:37 +08:00
Licai Guo
d058176c3b add android support, single commit 2014-02-18 17:54:27 -08:00
Ethan Hugg
413b301e9c Merge pull request #303 from mstorsjo/simplify-decoder-api
Simplify the Initialize decoder method
2014-02-18 11:27:38 -08:00
Martin Storsjö
3b297ec866 Remove completely unused variables and private fields 2014-02-18 13:04:13 +02:00
Martin Storsjö
658d1e3651 Remove the unused iInitType parameter to the decoder Initialize method 2014-02-18 13:00:45 +02:00
Martin Storsjö
55d7491f3d Remove stub interfaces for hw decoding
There is no implementation available for actually doing decoding
in HW.
2014-02-13 14:21:38 +02:00
Martin Storsjö
ce22f84a2b Regenerate target makefiles after the latest mktargets.py changes 2014-02-12 22:11:05 +02:00
Martin Storsjö
29ccdebad9 Correct the plane naming within the D3D code
Within I420 (as the decoder outputs), the first chroma plane is
U and the second is V, and similarly, in NV12, the chroma components
are written in the order U, V.

This doesn't have any practical effect, it only makes the
variable naming while it previously was misleading.
2014-02-11 12:26:36 +01:00
Martin Storsjö
83e7e7fbd9 Show the right message if no output file has been specified
H264DecodeInstance expects the pointer to be a null pointer if
no file has been specified.
2014-02-10 20:51:20 +02:00
Martin Storsjö
3e13874a77 Remove some needless casts by using the right data type 2014-02-10 20:51:20 +02:00
Martin Storsjö
7b96c6756e Use void instead of void_t
There's really no reason for adding a typedef for void.
2014-02-10 08:06:33 +02:00
Martin Storsjö
d0185ab253 Remove redundant /./ parts from pathnames in makefiles
This is mostly a cosmetic improvement for the quiet make output.
2014-02-08 18:46:52 +02:00
Martin Storsjö
8ecdcc7172 Add a make option for silencing the commands run
Add "V=No" to the make command to silence the make output.

This makes it easier to spot warnings or other unexpected messages
in the build output.
2014-01-30 13:56:19 +02:00
Ethan Hugg
6fea084a42 Merge pull request #234 from mstorsjo/merge-measure-time
Move the measure_time.h header to the common library
2014-01-27 08:57:16 -08:00
Martin Storsjö
11bdd8adad Move the measure_time.h header to the common library
Both encoder and decoder versions were functionally equivalent,
but I picked the decoder version (but added the static inline
keywords to it) since the encoder one was quite messy with a lot
of commented out code.
2014-01-27 12:58:23 +02:00
Martin Storsjö
7df69c1482 Remove an unnecessary field from generated makefiles 2014-01-24 15:02:40 +02:00
Martin Storsjö
3cacaf85f1 Include the executable suffix within make
This makes sure that e.g. "make clean" actually removes
the built exe files, and avoids relinking the exe files each
time make is run when cross compiling from linux to windows.

(Make on windows seems to have an exception that knows to skip
rebuilding the 'h264enc' target if 'h264enc' doesn't exist but
'h264enc.exe' does, but this exception doesn't work on normal
unix make.)
2014-01-23 16:15:22 +02:00
Licai Guo
fc56c7d007 1. use WELS_CLIP1 to replace table look-up;
2. fix bugs about buffer overflow
3. add more boundary checks
2014-01-23 00:07:21 -08: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
Martin Storsjö
c196fd1ef0 Remove unused typedefs 2014-01-21 15:44:05 +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ö
a8d549e343 Omit assembler source rules if no asm sources are found 2014-01-17 18:52:46 +02:00
Martin Storsjö
6e75136201 Don't load welsdec.dll at runtime in the decConsole test app on windows
Instead just link directly to it. This matches how the library is
linked/loaded in encConsole/h264enc as well.

Only the 2008 version project file is updated for now, since
the 2010 and 2012 ones are out of sync right now.
2014-01-17 12:06:21 +02:00
Martin Storsjö
b842ff30e5 Make the compiler/ar/linker file output parameters overrideable
This is in preparation for allowing building using MSVC via
makefiles.
2014-01-17 12:06:11 +02:00
Martin Storsjö
3b0844e400 Regenerate the targets makefiles
Commit f38111d76b updated these files
manually (based on older versions of them) to something not generated
by the current mktargets.py/sh, losing the compact pattern rules.
2014-01-09 11:30:40 +02:00
Licai Guo
f38111d76b file a new commit
Squashed commit of the following:

commit 26be4c66686d2d75ba1eb381ae562d30474429b2
Merge: 91bde82 8df0566
Author: Licai Guo <guolicai@gmail.com>
Date:   Wed Jan 8 16:56:49 2014 -0800

    Merge remote-tracking branch 'upstream/master' into move_to_common

    Conflicts:
    	codec/common/targets.mk
    	codec/console/dec/targets.mk
    	codec/decoder/targets.mk
    	codec/encoder/targets.mk
    	codec/processing/targets.mk

commit 91bde8209dad40eaa0b26cc75467e4ce52b4c8ae
Merge: c827054 cc2ffee
Author: Licai Guo <guolicai@gmail.com>
Date:   Tue Jan 7 20:16:11 2014 -0800

    Merge remote-tracking branch 'upstream/master' into move_to_common

commit c8270543fab8e40cb4aebf62d7646068afe19484
Author: Licai Guo <guolicai@gmail.com>
Date:   Mon Jan 6 19:12:39 2014 -0800

    enable WelsScan4x4DcAc_ssse3

commit c8d2823d54e54cab146098302441ef44a4638382
Author: Licai Guo <guolicai@gmail.com>
Date:   Mon Jan 6 18:46:06 2014 -0800

    remove trailing white spaces

commit 39866a9cf54db6120aabd6a01afd4aedbead8af0
Author: Licai Guo <guolicai@gmail.com>
Date:   Mon Jan 6 18:06:10 2014 -0800

    move common code(deblocking and cpu) to common, rename decoder's
    Intra-prediction functions prefix.
2014-01-08 17:03:00 -08:00
Ethan Hugg
f85911e331 Merge pull request #117 from mstorsjo/make-patterns
Use make patterns to avoid needing autogenerated rules for each source file
2014-01-08 09:48:31 -08:00
Ethan Hugg
4afa4fc7a8 Merge pull request #116 from mstorsjo/make-deps
Add proper dependencies for the command line binaries
2014-01-08 09:35:21 -08:00
Martin Storsjö
488fb7bb20 Add proper dependencies for the command line binaries
This makes sure that all the dependency libs are built before trying
to link them together, fixing parallel make (which occasionally
failed due to trying to link the encoder or decoder command line
binaries before the libs had been built) and also fixes building an
individual component by e.g. "make h264enc".
2014-01-08 16:36:11 +02:00
Martin Storsjö
80669ed059 Use make patterns to avoid needing autogenerated rules for each source file 2014-01-08 16:33:35 +02:00
Martin Storsjö
65fa5d2a37 Enable use of D3D9 only when targeting desktop apps
Don't try to build this when building for phone/windows store (aka
metro/winrt) apps - this API isn't available there.
2014-01-08 09:21:06 +02:00