Licai Guo
0279cd7597
Merge pull request #367 from volvet/refine-enc-plus
...
refine encode plus code
2014-02-28 14:18:06 +08:00
huili2
2dd41096d5
Merge pull request #366 from licaiguo/refine-rpl-pr
...
refine rpl
2014-02-28 14:08:41 +08:00
Licai Guo
0fd9db2878
Add ARM 32bit asm code for decoder.
2014-02-28 13:36:34 +08:00
volvet
d0d050d8e5
refine encode plus code
2014-02-28 13:06:49 +08:00
Licai Guo
e902f0fea4
refine rpl
2014-02-27 21:04:31 -08:00
Ethan Hugg
3d47b7847d
Merge pull request #358 from volvet/add_ios_encDemo
...
add encode test for iOS
2014-02-27 10:52:14 -08:00
Ethan Hugg
e5ee43173d
Merge pull request #361 from mstorsjo/get-core-count
...
Use higher level APIs for getting the number of cores if WelsCPUFeatureDetect didn't report anything
2014-02-27 10:51:17 -08:00
ruil2
9319f879e4
Merge pull request #362 from mstorsjo/encoder-default-params
...
Add a new public method for initializing SEncParamExt to default values
2014-02-27 17:38:16 +08:00
Licai Guo
573b02797b
Merge pull request #363 from huili2/remove_store_base
...
remove unused codes in reference picture management
2014-02-27 12:39:23 +08:00
Licai Guo
5303eaaeb9
remove store_ref_base_pic_flag related codes in reference picture management
2014-02-26 20:00:32 -08:00
volvet
e8ecee2616
make the makefile is indepent with the pch file
2014-02-27 09:30:35 +08:00
volvet
3544aaaaab
remove boilerplate comments
2014-02-27 09:17:24 +08:00
Martin Storsjö
c7ff8876bb
Add a new public method for initializing SEncParamExt to default values
...
This simplifies forward source compatibility when new fields are
added to SEncParamExt - when new fields are added to SEncParamExt,
this method makes sure those fields are initialized to the
default value - otherwise all API users would have to manually check
SEncParamExt every time it is updated to make sure there's no new fields
that should be set to a nonzero value by default (e.g. like
bEnableFrameSkip).
2014-02-26 22:12:11 +02:00
Martin Storsjö
6021ff3908
Refactor initializing defaults in a SEncParamExt to a separate function
2014-02-26 22:03:56 +02:00
Martin Storsjö
bb5b3978bf
Use higher level APIs for getting the number of cores if WelsCPUFeatureDetect didn't report anything
...
On processors without HTT, WelsCPUFeatureDetect can't return
a number of cores but might still return a nonzero set of
CPU feature flags. Previously the nonzero cpu feature flag
indicated that cpuid worked and the encoder wouldn't use the
higher level API for getting the number of cores, even though the
number of cores was left at 1.
2014-02-26 21:43:46 +02:00
Martin Storsjö
e239d9fddc
Fix a typo in a function pointer name
2014-02-26 21:26:54 +02:00
ruil2
cb4bc5ee28
add command line example
2014-02-26 16:58:03 +08:00
volvet
6dc1d43a5b
remove precompiled files
2014-02-26 16:26:16 +08:00
volvet
73ce4adc85
add encode test for iOS
2014-02-26 14:53:31 +08:00
ruil2
1edefc4d50
modify output help info and commands line input
2014-02-26 09:21:46 +08:00
huili2
c89a6911a0
Merge pull request #355 from licaiguo/check-sliceheader
...
add a check to parseSliceHeaderSyntaxes
2014-02-25 16:56:33 +08:00
Licai Guo
a9fd78f1e2
add a check to parseSliceHeaderSyntaxes
2014-02-25 00:47:12 -08:00
Licai Guo
fc056c7ef0
Refine structure of iOS project to fix the issue.
2014-02-25 13:46:18 +08:00
Ethan Hugg
72990e1290
Merge pull request #349 from mstorsjo/cleanup-ios-project
...
Remove unnecessary precompiled headers from the xcode projects
2014-02-24 07:44:41 -08:00
Martin Storsjö
38dbd57d36
Remove unnecessary precompiled headers
...
This reduces the huge amount of near-useless small extra files
scattered around for the sake of the platform demo projects.
This requires explicitly listing all the ncessary include paths.
2014-02-24 13:26:37 +02:00
Martin Storsjö
8c9a0bac01
Add the necessary directories to the include path within xcode
...
This is not necessary when using precompiled headers.
2014-02-24 13:24:39 +02:00
Licai Guo
3c29c92133
Merge pull request #347 from huili2/active_sps_ref_size
...
use active SPS parameters instead of other SPS.
2014-02-24 17:03:25 +08:00
huili2
ab6931496b
Merge pull request #345 from licaiguo/fix-int-conversion-warning
...
fix int conversion warning, using LD32/ST32
2014-02-24 17:02:35 +08:00
Licai Guo
2983c92e1c
use active SPS parameters instead of other SPS.
2014-02-24 00:52:17 -08:00
Licai Guo
d78f8c7ed8
fix int conversion warning, using LD32/ST32
2014-02-24 00:27:33 -08:00
Licai Guo
b7bee7af0a
refine level check
2014-02-24 00:09:40 -08:00
Licai Guo
d5e0b99372
cast to uint32_t in GET_WORD to prevent possible left shift error.
2014-02-23 22:22:13 -08:00
Licai Guo
c9a25e9494
Merge pull request #342 from volvet/rm-unsupported-para
...
remove inter spatial layer prediction in parameters
2014-02-24 13:22:16 +08:00
volvet
f4d8882d2e
remove inter spatial layer prediction in parameters
2014-02-24 11:06:09 +08:00
ruil2
470fc4288c
minor update
2014-02-24 10:55:15 +08:00
ruil2
c79e78c4fb
cleanup encoder parameters
2014-02-24 10:40:17 +08:00
huili2
abc2495f2f
Merge pull request #335 from licaiguo/decoder-syntax-checks
...
Decoder syntax checks
2014-02-24 10:35:10 +08:00
Licai Guo
265741e922
update according to review comments
2014-02-23 18:26:28 -08:00
volvet
bf0179310c
Merge pull request #340 from zhilwang/ios-support
...
Ios support
2014-02-24 09:50:10 +08:00
volvet
14acd1e663
Merge pull request #339 from mstorsjo/console-trace-param
...
Handle a -trace parameter for setting the trace level
2014-02-24 09:46:37 +08:00
Martin Storsjö
892d90175c
Handle a -trace parameter for setting the trace level
...
A similar parameter already exists in the other version of
the ParseCommandLine function.
The WelsStderrSetTraceLevel isn't one of the functions that
is exported from wels.dll (nor welsenc.dll) though, so this
doesn't work (not currently either since the function is
currently already referenced) if we would try to link to the
encoder library dynamically.
2014-02-23 00:19:56 +02:00
Martin Storsjö
b31049df89
Respect the iDLayerQp parameter in SEncParamExt
...
Previously the value set in the parameter struct was ignored
completely.
2014-02-23 00:14:39 +02:00
Martin Storsjö
08c07db3c6
Respect the loop filter disabling encoder parameter
...
Previously the loop filter was unconditionally enabled
regardless of what encoder parameter was set. If using
SEncParamBase instead, the loop filter was always disabled.
2014-02-23 00:14:39 +02:00
Martin Storsjö
8b7fb36f39
Set missed fields in ParamBaseTranscode
...
Previously, these fields kept whatever value was set by
FillDefault. The corresponding fields were set properly within
sSpatialLayers, but the fields within the main struct were left
with the default values.
This doesn't change the hashes in the unit test, since these
fields don't seem to be used in the produced bitstream at all.
2014-02-23 00:14:39 +02:00
volvet
75f8b41bcd
Merge pull request #334 from mstorsjo/cleanup-vp-interface
...
Don't use a custom calling convention for the VP library entry points
2014-02-21 17:31:34 +08:00
Licai Guo
e7ed80c428
Merge pull request #322 from volvet/PreProcessExceptionHandle
...
init the spatial last spatial picture if excption
2014-02-21 17:09:17 +08:00
Licai Guo
fee0f14732
finish syntax checks in ParseSps
2014-02-21 00:16:42 -08:00
Martin Storsjö
21e9c83746
Remove the local declarations of the VP interface functions
...
There's no need to define them manually here, the normal
declarations in IWelsVP.h work just fine even if not loading
the WelsVP library dynamically.
2014-02-21 09:32:49 +02:00
Martin Storsjö
19efc59fae
Remove the WELSAPI definition
...
There's no need to specify a custom calling convention for
these functions.
2014-02-21 09:32:46 +02:00
Licai Guo
988a192579
Modify copyright for some files
2014-02-21 14:47:01 +08:00
Licai Guo
7e57d5205e
Add decoder ios demo
2014-02-21 14:43:09 +08:00
Licai Guo
68ebf05402
Add ios build for processing
2014-02-21 14:28:22 +08:00
Licai Guo
384ce47fc0
Remove processing ios build
2014-02-21 14:26:08 +08:00
Licai Guo
3a7305c2be
Add .gitignore to iOS folder
2014-02-21 14:23:28 +08:00
Licai Guo
c66b614dd3
Initial Commit
2014-02-21 14:07:52 +08:00
Licai Guo
97947c4d01
Add ios support for common
2014-02-21 14:04:53 +08:00
Licai Guo
672a98347f
Initial Commit
2014-02-21 13:59:43 +08:00
Licai Guo
1f7f82bad4
Add ios support for encoder.
2014-02-21 13:49:49 +08:00
volvet
a783fed407
remove cgs/mgs related code, it is not supported
2014-02-21 12:57:06 +08:00
Licai Guo
5c1c1c8347
Initial Commit
2014-02-21 11:29:38 +08:00
Licai Guo
21e1e7c966
Add ios support for dec
2014-02-21 11:26:11 +08:00
Licai Guo
4e0b8d4cbf
refine checks in ParseSps
2014-02-20 19:25:11 -08:00
Licai Guo
3873b6a0f6
Initial Commit
2014-02-21 11:15:04 +08:00
volvet
25efddd745
remove quality layer configuration. It is not supported
2014-02-21 10:51:47 +08:00
volvet
2bdf6d3736
Merge pull request #325 from sijchen/writenal_refactor3
...
add encoder error code and refactor WelsWriteNal
2014-02-21 08:41:02 +08:00
Ethan Hugg
df6f92096a
Merge pull request #330 from mstorsjo/android-build-fixes
...
Android build fixes/cleanups
2014-02-20 15:39:22 -08:00
Martin Storsjö
8771e08f0f
Ignore files produced by XCode
2014-02-20 12:33:38 +02:00
Martin Storsjö
42e80cec0d
Don't use LOCAL_PATH in LOCAL_SRC_FILES
...
These files are automatically relative to the directory of the
current makefile.
2014-02-20 12:28:00 +02:00
Martin Storsjö
d9441dc793
Ignore project.properties
...
This file is autogenerated when building nowadays.
2014-02-20 09:42:52 +02:00
Licai Guo
d69b2faa9f
fix the crash issues by changing the type iMbWidth & iMbHeight.
2014-02-19 23:06:35 -08:00
sijchen
e45e859473
Squashed merge from writenal_refactor2
2014-02-20 14:50:04 +08:00
Licai Guo
42cc716395
Merge pull request #324 from volvet/add-missed-namespace-for-encoder
...
add missed namespace for encoder, remove un-used file
2014-02-20 14:46:05 +08:00
volvet
ab2e5fe207
Merge pull request #321 from licaiguo/add-android-target-option
...
Add android target option
2014-02-20 14:40:27 +08:00
volvet
e565e50d4d
add missed namespace for encoder, remove un-used file
2014-02-20 14:33:03 +08:00
Licai Guo
46b9d5d0da
Merge pull request #323 from huili2/check_bit_read
...
add safety check for bit-reading for headers
2014-02-20 14:17:07 +08:00
volvet
d6c5c138ee
init the spatial last spatial picture if excption
2014-02-20 12:50:37 +08:00
Licai Guo
538d22560f
refine android build, add TARGET option to specify target in sdk
2014-02-19 20:49:30 -08:00
Licai Guo
a921bc6589
Merge pull request #320 from huili2/mb_residual_size_check
...
remain size to prevent MB residual reading overflow
2014-02-20 11:19:57 +08:00
ruil2
3ba6a5f4da
Simplify encoder interface--remove EncoderFrame2 from interface
...
function
2014-02-20 10:33:07 +08:00
Licai Guo
65c7168d8d
Add iOS support for decoder.
2014-02-20 10:08:37 +08:00
Martin Storsjö
fe17cd5a13
Remove unnecessary commented out code in the android makefiles
...
Comments isn't a place to store code snippets that might (or
might not) be useful later.
2014-02-19 22:16:09 +02:00
Martin Storsjö
0b74eee631
Ignore files generated while building the android projects
2014-02-19 22:16:09 +02:00
Martin Storsjö
72fb054c10
Remove unused proguard config files
2014-02-19 22:16:09 +02:00
Martin Storsjö
810db4e3fd
Add a missing include directory in the android makefiles
2014-02-19 22:16:09 +02:00
Ethan Hugg
0a73155bdd
Merge pull request #306 from licaiguo/add-android-pull-clean
...
Add android Support
2014-02-19 09:59:25 -08:00
Ethan Hugg
f7758a3074
Merge pull request #312 from mstorsjo/cleanup-vp-interface
...
Avoid duplicating the IWelsVP.h header
2014-02-19 09:55:34 -08:00
Ethan Hugg
50e49f3704
Merge pull request #310 from mstorsjo/remove-unused-variables
...
Avoid declaring unused variables
2014-02-19 09:26:00 -08:00
Martin Storsjö
7acb6cd4d0
Remove the duplicated IWelsVP.h file
...
Instead have the encoder include it directly from the processing
library.
Both copies of the files were mostly identical so far.
2014-02-19 15:00:49 +02:00
Martin Storsjö
3e4e74a4d8
Remove unused include directories
2014-02-19 14:57:06 +02:00
Martin Storsjö
099595696b
Add the common processing include directories to the include path
...
This avoids using relative paths for including these files.
2014-02-19 14:42:03 +02:00
Martin Storsjö
f6a46960c9
Check a string length before doing a strncpy
2014-02-19 10:42:52 +02:00
Martin Storsjö
fd100598ab
Avoid declaring unused variables
...
Move the variable declarations within the ifdef instead.
2014-02-19 10:39:43 +02:00
Martin Storsjö
3532781556
Mark source parameters to MC functions as const
2014-02-19 10:19:56 +02:00
Martin Storsjö
ebb890e03e
Declare static functions within the file they are used/defined in
...
It does not make sense to declare but not define static functions
in a header.
2014-02-19 09:51:25 +02:00
Martin Storsjö
1a1b78e9c5
Remove unnecessary declarations of static functions
...
These functions don't need to be declared in advance at all.
2014-02-19 09:25:27 +02:00
Licai Guo
a3c38b5631
add safety check for bit-reading for headers
2014-02-18 22:55:12 -08:00
ruil2
dd93aa90b2
Merge pull request #290 from volvet/develop_b
...
Refactor CWelsPreProcess
2014-02-19 10:18:56 +08:00
volvet
bb58c5c720
correct style
2014-02-19 10:04:17 +08:00
Licai Guo
fbcf01cbbc
add missing icon files
2014-02-18 18:01:27 -08:00
Licai Guo
d058176c3b
add android support, single commit
2014-02-18 17:54:27 -08:00
ruil2
e79769fb88
Merge pull request #305 from mstorsjo/fix-encoder-param-interface
...
Don't duplicate the SEncParamExt/SEncParamBase structs for C compatibility
2014-02-19 09:12:58 +08:00
huili2
0fcd066cde
Merge pull request #298 from licaiguo/decoder-syntax-element-step1
...
add decoder syntax checks
2014-02-19 08:57:50 +08:00
Martin Storsjö
7d638f8a6b
Remove the now unused INIT_TYPE data type
2014-02-18 22:52:00 +02:00
Martin Storsjö
49f4dad1b7
Split the encoder Initialize method into two
...
This avoids the struct type casting and having to pass a parameter
that says which kind of struct it actually is.
2014-02-18 22:51:54 +02:00
Martin Storsjö
622694935b
Use SEncParamExt in ProcessEncodingSvcWithParam
...
Both FillSpecificParameters and ParseCommandLine use parameters
that don't exist in SEncParamBase.
2014-02-18 22:51:54 +02:00
Martin Storsjö
a899f05f2d
Don't have SEncParamExt inherit SEncParamBase
...
Instead just duplicate the common fields. These fields had to
be duplicated for the C interface compatibility anyway - but
this way there is no risk to accidentally introduce an ABI
break since there is no need for the layout of SEncParamBase to
actually match the start of SEncParamExt.
2014-02-18 22:51:54 +02:00
Martin Storsjö
80f5aa216a
Don't copy out the SEncParamBase, manually read the individual fields instead
2014-02-18 22:51:53 +02:00
Martin Storsjö
b6502a5406
Respect the bEnableRc field in SEncParamExt
2014-02-18 22:51:53 +02:00
Martin Storsjö
f432ddeea8
Remove a field from SWelsSvcCodingParam that already exists in SEncParamExt
2014-02-18 22:51:53 +02:00
Martin Storsjö
6d6a63a703
Mark the Initialize pointer parameter as const
...
This makes it clear to the callers that the struct will
not be modified by this call.
2014-02-18 22:51:53 +02:00
Martin Storsjö
2438b31323
Don't needlessly copy the input parameter struct
2014-02-18 22:51:53 +02:00
Martin Storsjö
bcd57f412a
Make Param*Transcode take a const reference
...
There is no need to modify the caller's struct.
2014-02-18 22:51:53 +02:00
Martin Storsjö
a1f6e158ef
Move REC_FRAME_COUNT logging into the Initialize2 method
2014-02-18 22:51:53 +02:00
Martin Storsjö
fc970418fa
Fix building with REC_FRAME_COUNT defined
2014-02-18 22:51:53 +02:00
Martin Storsjö
525ad9e7c8
Remove unnecessary checks/initialization from the Initialize method
...
Initialize2 does the same checks and initializes the same fields.
2014-02-18 22:51:53 +02:00
Martin Storsjö
1a32ae7120
Simplify the CWelsH264SVCEncoder::Initialize2 method
...
Remove the useless iInitType parameter, make the method
private within CWelsH264SVCEncoder class, give the pointer
parameter the correct type, avoiding needless casting.
2014-02-18 22:51:53 +02:00
Martin Storsjö
5cb8518306
Remove the Initialize2 function from the external API
...
This function no longer needs to be public since one can pass
SEncParamExt to the normal Initialize function.
2014-02-18 22:51:53 +02: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
Ethan Hugg
2243467c1b
Merge pull request #304 from mstorsjo/remove-unused-variables
...
Remove completely unused variables and private fields
2014-02-18 11:26:19 -08:00
Licai Guo
24359dcde1
Merge pull request #301 from ruil2/temporal_num
...
use temporal layer num and remove gop size in external configure-- review request #94
2014-02-18 21:04:21 +08:00
Martin Storsjö
3b297ec866
Remove completely unused variables and private fields
2014-02-18 13:04:13 +02:00
Martin Storsjö
1075338b9b
Use the actual struct type instead of a void pointer to the decoder Initialize method
2014-02-18 13:00:59 +02:00
Martin Storsjö
658d1e3651
Remove the unused iInitType parameter to the decoder Initialize method
2014-02-18 13:00:45 +02:00
volvet
8435dd33af
Merge pull request #297 from licaiguo/refine-mc.cpp
...
add refine mc.cpp on decoder
2014-02-18 18:56:30 +08:00
Martin Storsjö
647fff6e2b
Remove useless ifdefs
...
This is in practice always enabled on all currently supported
platforms.
2014-02-18 11:09:28 +02:00
ruil2
f5cd56ea74
use temporal layer num and remove gop size in external configure
2014-02-18 17:06:41 +08:00
Martin Storsjö
61067d488f
Fix building with MT_DEBUG enabled after the encoder interface update
...
There is no struct named SMulSliceOption any longer.
2014-02-18 10:29:48 +02:00
Licai Guo
61b64190dd
add decoder syntax checks
2014-02-17 23:57:12 -08:00
volvet
592665a21d
Merge branch 'master' of https://github.com/cisco/openh264 into develop_b
2014-02-18 15:34:06 +08:00
ruil2
8e8972b6e8
fix build fail on osx
2014-02-18 15:16:10 +08:00
Licai Guo
d0a7f9b625
add refine mc.cpp on decoder
...
1. remove unecessary init
2. add static to constant function pointer array
2014-02-17 22:36:56 -08:00
Licai Guo
278597be2f
Merge pull request #292 from huili2/level_prefix
...
fix level_prefix too large in residual decoding
2014-02-18 14:22:30 +08:00
Licai Guo
06d3ed8ddc
Merge pull request #294 from huili2/neg_left_shift
...
negative data with left shift, use cast or multiplication instead
2014-02-18 14:21:44 +08:00
Licai Guo
f5d086eba1
merge the calculate
2014-02-17 22:16:51 -08:00
volvet
5fe3b6e362
update to the last commit: interface change
2014-02-18 14:00:42 +08:00
Ethan Hugg
287f3538d4
Merge pull request #295 from huili2/dec_api_rm_tl
...
remove unused temporal ID info in decoder API
2014-02-17 20:43:58 -08:00
Licai Guo
a810408cdc
negative data with left shift, use cast or multiplication instead
2014-02-17 19:13:41 -08:00
ruil2
35fa429fb0
encoder interface update step1
2014-02-18 09:51:47 +08:00
Ethan Hugg
3ff7e3d045
Merge pull request #291 from volvet/name_process_step
...
give right name to pre-process step1 and step3
2014-02-17 11:26:20 -08:00
Licai Guo
7bace8406e
remain size to prvent MB residual reading overflow
2014-02-17 00:47:41 -08:00
Licai Guo
b1d748294c
remove unused temporal ID info in decoder API
2014-02-16 23:57:06 -08:00
volvet
bb354d7c13
name pre-process steps
2014-02-17 14:41:37 +08:00
volvet
e61578785b
Merge pull request #286 from mstorsjo/remove-hw-decode
...
Remove stub interfaces for hw decoding
2014-02-17 13:24:21 +08:00
volvet
600a79bea6
correct code style
2014-02-17 11:46:52 +08:00
volvet
475309307c
move spatial picture related variable to CWelsPreProcess
2014-02-17 11:35:52 +08:00
volvet
488482811c
add update spatial pictures method too CWeslPreProcess
2014-02-17 10:53:46 +08:00
volvet
0a5024d176
move alloc spatial picture and free spatial picture to CWelsPreProcess
2014-02-17 10:24:56 +08:00
volvet
7f59e2f8d9
use forward declaration to replace type cast
2014-02-14 16:50:13 +08:00
Licai Guo
0d1deb578e
fix level_prefix too large in residual decoding
2014-02-13 22:51:45 -08:00
Ethan Hugg
dbb894442f
Merge pull request #284 from volvet/clean_spatial_picture_code
...
Clean spatial picture alloc code
2014-02-13 15:18:02 -08:00