Compare commits
592 Commits
openh264v1
...
v1.1
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
6a54f9896b | ||
|
|
5861de98f5 | ||
|
|
70165d6843 | ||
|
|
adb0fa498f | ||
|
|
0dbdbfb53b | ||
|
|
581f8fdf79 | ||
|
|
5f8822644f | ||
|
|
c2dd7df0f2 | ||
|
|
6897398175 | ||
|
|
7b9ae15482 | ||
|
|
228ea1a668 | ||
|
|
ce740ee19e | ||
|
|
1ae709dde0 | ||
|
|
1a58488aeb | ||
|
|
cc8a2bd07e | ||
|
|
ce43674703 | ||
|
|
6ff2b84736 | ||
|
|
e5abbdcdab | ||
|
|
ca61e286b4 | ||
|
|
7fc869cf0f | ||
|
|
03d9f07671 | ||
|
|
86b3a999d5 | ||
|
|
3a1cc63649 | ||
|
|
0fda3d9235 | ||
|
|
c228c51423 | ||
|
|
8bdf6abe59 | ||
|
|
0a6819c0b7 | ||
|
|
d98cefecec | ||
|
|
09b95ad0bd | ||
|
|
249b8a0aa6 | ||
|
|
fba362d1de | ||
|
|
c1a24d52f5 | ||
|
|
4d9c8de5a5 | ||
|
|
01835134ee | ||
|
|
eace9b7b00 | ||
|
|
95ac333f3b | ||
|
|
6489e7b38a | ||
|
|
9b753c9c39 | ||
|
|
1ec213d5a7 | ||
|
|
e66cf5369e | ||
|
|
9a68572240 | ||
|
|
589e40aa67 | ||
|
|
fb6379eeb1 | ||
|
|
76b488a60d | ||
|
|
b52aff7225 | ||
|
|
f22a9e890f | ||
|
|
d88b83df44 | ||
|
|
5cb66bd8a7 | ||
|
|
60314ff570 | ||
|
|
5a60d0fef4 | ||
|
|
863852259d | ||
|
|
f638546d81 | ||
|
|
9015bd4049 | ||
|
|
21e3e81536 | ||
|
|
7cfce53f53 | ||
|
|
0ad30516c5 | ||
|
|
f1a0a81226 | ||
|
|
ab41e69a5e | ||
|
|
821ff96c70 | ||
|
|
c2cde65ac9 | ||
|
|
3c584cd2c4 | ||
|
|
8e400f19d2 | ||
|
|
ee425ec785 | ||
|
|
c05e1ad797 | ||
|
|
aa1786254a | ||
|
|
24cd5afa33 | ||
|
|
31e3884a68 | ||
|
|
0fa845ed27 | ||
|
|
ef0c3e2b91 | ||
|
|
5dbd3f01ea | ||
|
|
10804f316e | ||
|
|
9506f71b43 | ||
|
|
fb4c907ecb | ||
|
|
2bb23a79ed | ||
|
|
3f5f0d6a57 | ||
|
|
da75e15b4a | ||
|
|
35b739c754 | ||
|
|
d9f12135d4 | ||
|
|
58576712fa | ||
|
|
f1710e6efb | ||
|
|
ab866bef09 | ||
|
|
b9de87ea5d | ||
|
|
292d78db5c | ||
|
|
21deaddc48 | ||
|
|
e0ba5cd9f3 | ||
|
|
ba7dca89d5 | ||
|
|
56edea9bcd | ||
|
|
0ef26d6a3f | ||
|
|
6e40991cc7 | ||
|
|
2c250179dc | ||
|
|
f245dc34ff | ||
|
|
01559a684e | ||
|
|
49fb042f21 | ||
|
|
782e94b05c | ||
|
|
8e03f0351d | ||
|
|
601105471f | ||
|
|
323dc793da | ||
|
|
dd05a655c2 | ||
|
|
239050d73c | ||
|
|
44faa1c9a7 | ||
|
|
10eeea52fe | ||
|
|
1c1468210f | ||
|
|
96307dfd2e | ||
|
|
0a3db78bb9 | ||
|
|
4d494cb0f1 | ||
|
|
3ef97dc0c9 | ||
|
|
bdf9f6b4ff | ||
|
|
dce9541199 | ||
|
|
a964ae8cfa | ||
|
|
19273b1ae5 | ||
|
|
2eb65d7d72 | ||
|
|
9caf082b4a | ||
|
|
e4a2fad99b | ||
|
|
05cd0e8ada | ||
|
|
e5609bc0fe | ||
|
|
130c682c29 | ||
|
|
586d0ba3dc | ||
|
|
00f28cc185 | ||
|
|
1888fba336 | ||
|
|
d84d739ec8 | ||
|
|
9ef09861cf | ||
|
|
d2afebd2d7 | ||
|
|
76bd633d91 | ||
|
|
3a6f51781d | ||
|
|
5b004048ed | ||
|
|
4486e328d4 | ||
|
|
4f594deff9 | ||
|
|
325c63d0ca | ||
|
|
32ce337eb0 | ||
|
|
ffb38322d0 | ||
|
|
806e59fcb1 | ||
|
|
08f66e52a0 | ||
|
|
1fa1d2f1c1 | ||
|
|
aa2cfef310 | ||
|
|
8662eca2c3 | ||
|
|
ce5268076c | ||
|
|
04c6c95577 | ||
|
|
7ae3fbcfbf | ||
|
|
b4b1d1df8c | ||
|
|
4af37a7d21 | ||
|
|
44ebe7dea4 | ||
|
|
578060373a | ||
|
|
eb7cdf2bda | ||
|
|
4aa22da812 | ||
|
|
2b038fa73b | ||
|
|
e9b8d927ca | ||
|
|
17f3dd5ae6 | ||
|
|
1780a81a1d | ||
|
|
bfd8f97578 | ||
|
|
eb221eb3d1 | ||
|
|
58349156b1 | ||
|
|
fd132aba0f | ||
|
|
0549fb99eb | ||
|
|
704cad26f5 | ||
|
|
68b4b09ae6 | ||
|
|
a01d6812ed | ||
|
|
f6302ea414 | ||
|
|
b5407915cc | ||
|
|
83d7c3547c | ||
|
|
3a43c6bad4 | ||
|
|
157935e9a0 | ||
|
|
7fba7a08bc | ||
|
|
6e815e708d | ||
|
|
263833b3bf | ||
|
|
f300476468 | ||
|
|
12b6244129 | ||
|
|
d8e78fee09 | ||
|
|
c8b4ef2257 | ||
|
|
66deed24b8 | ||
|
|
cf6ae23413 | ||
|
|
b406f4471a | ||
|
|
a474e00d15 | ||
|
|
894f073e4b | ||
|
|
e16487d416 | ||
|
|
19e593059a | ||
|
|
06a67b72a8 | ||
|
|
863ec74f0d | ||
|
|
7fb59d033a | ||
|
|
40e74e43d6 | ||
|
|
f8ca91f317 | ||
|
|
300bbfb67b | ||
|
|
e389cf4348 | ||
|
|
b55f1bdfe2 | ||
|
|
775b507941 | ||
|
|
f71cf37818 | ||
|
|
1ffcd36c70 | ||
|
|
fa138e866a | ||
|
|
0f4499121a | ||
|
|
2626ed2181 | ||
|
|
e138ee5297 | ||
|
|
275d7efbc9 | ||
|
|
b3141edcbd | ||
|
|
f7ba0e4d1c | ||
|
|
bfd3a1dd47 | ||
|
|
12e456cc84 | ||
|
|
1f88cbf49e | ||
|
|
78109f36ad | ||
|
|
16a4066e7f | ||
|
|
32d5c22a9a | ||
|
|
04d7e63a58 | ||
|
|
4f403ac015 | ||
|
|
3a0777201c | ||
|
|
14f2fe214f | ||
|
|
8b1b0b6582 | ||
|
|
e1152f9483 | ||
|
|
dc3fae4477 | ||
|
|
101265388b | ||
|
|
708f793933 | ||
|
|
f9abd70eeb | ||
|
|
be94bf9ffa | ||
|
|
7b461e109e | ||
|
|
efc5bbd9fb | ||
|
|
f9654726cf | ||
|
|
057e38663f | ||
|
|
f066df412c | ||
|
|
542f8fc053 | ||
|
|
de3990479e | ||
|
|
56222afe07 | ||
|
|
8cdf6aac15 | ||
|
|
e4220b7b55 | ||
|
|
1ba24912c7 | ||
|
|
70f93d8816 | ||
|
|
b76714719e | ||
|
|
0f1f158d8b | ||
|
|
5e9492cb6e | ||
|
|
a24b781e54 | ||
|
|
99cfac6aa0 | ||
|
|
b3f7896a51 | ||
|
|
f0ec323e2c | ||
|
|
0a1b61508b | ||
|
|
606d748e5b | ||
|
|
3f333b01fd | ||
|
|
7c0b92e3f6 | ||
|
|
51d8682139 | ||
|
|
6e8fceb0c7 | ||
|
|
bcdb91183f | ||
|
|
43b56d9981 | ||
|
|
f40b964526 | ||
|
|
3fefb08b34 | ||
|
|
82a4bee00b | ||
|
|
ac1630f435 | ||
|
|
f0728ed365 | ||
|
|
b0d6cf7b9b | ||
|
|
cd76469613 | ||
|
|
d117624657 | ||
|
|
b3dedb3f37 | ||
|
|
a20c503d14 | ||
|
|
699ed2e2a2 | ||
|
|
9500d549ec | ||
|
|
dc56892d72 | ||
|
|
2d345fa912 | ||
|
|
30058e091f | ||
|
|
fa0eee2470 | ||
|
|
777a3951aa | ||
|
|
e95d1f16f4 | ||
|
|
f9152e6f40 | ||
|
|
95012b0af6 | ||
|
|
dd5b9b89f6 | ||
|
|
f49fa81d42 | ||
|
|
497b8dea84 | ||
|
|
2f012f6e07 | ||
|
|
b750a3b974 | ||
|
|
998d012ea7 | ||
|
|
dbe226b7cc | ||
|
|
34fda74674 | ||
|
|
f8ab6b3aa0 | ||
|
|
443609286e | ||
|
|
daf67d607f | ||
|
|
0dcb7584b5 | ||
|
|
68987b0ab8 | ||
|
|
64c3f63aab | ||
|
|
22342648af | ||
|
|
b1efc8f723 | ||
|
|
6613de7595 | ||
|
|
15e225ab35 | ||
|
|
66447349f6 | ||
|
|
2242214368 | ||
|
|
a6f44f5f79 | ||
|
|
45c78f438e | ||
|
|
d1437f2304 | ||
|
|
37b64fc9d6 | ||
|
|
fe0f10a063 | ||
|
|
51af10a25b | ||
|
|
b4112bc886 | ||
|
|
b5e1746b87 | ||
|
|
cf4026a948 | ||
|
|
778275ee1b | ||
|
|
4cc4f364d6 | ||
|
|
0bc0b71ef3 | ||
|
|
887b2727f0 | ||
|
|
6d0c89663d | ||
|
|
5263eeb973 | ||
|
|
aaa5bcc157 | ||
|
|
971ccccab4 | ||
|
|
720f8dcc52 | ||
|
|
127749c454 | ||
|
|
b9477cdb94 | ||
|
|
062937ac5a | ||
|
|
d15534ecb8 | ||
|
|
c635ce442f | ||
|
|
8662a55bc3 | ||
|
|
ce870bf20e | ||
|
|
61017a2d4d | ||
|
|
1111757977 | ||
|
|
7acf0e5b02 | ||
|
|
67afd91888 | ||
|
|
cfc2b95f59 | ||
|
|
947e3c64fe | ||
|
|
1b68890e1e | ||
|
|
91cd93e5d0 | ||
|
|
53f77ee7b5 | ||
|
|
f6ce43f83b | ||
|
|
0c09847ec9 | ||
|
|
1d37889ee1 | ||
|
|
79ef0e19b2 | ||
|
|
17d47533ed | ||
|
|
492627977e | ||
|
|
1e43075b25 | ||
|
|
c38126b094 | ||
|
|
0bb23924f0 | ||
|
|
44b048edd6 | ||
|
|
24553c2e4a | ||
|
|
84c1f3a4ee | ||
|
|
7574e5c1db | ||
|
|
090229f8a1 | ||
|
|
dc91e0958b | ||
|
|
6e5f31214a | ||
|
|
ce8065fe68 | ||
|
|
cb5ee6c239 | ||
|
|
b2cf56c618 | ||
|
|
9583ac4d52 | ||
|
|
8bac9315e6 | ||
|
|
4e428ab020 | ||
|
|
c8b81b4239 | ||
|
|
20e889fadb | ||
|
|
5e22d5366e | ||
|
|
cfc9367610 | ||
|
|
90be3d8215 | ||
|
|
0628c9b190 | ||
|
|
573dad7d04 | ||
|
|
77c3594e08 | ||
|
|
c4a59690da | ||
|
|
1bccef940c | ||
|
|
4f1ea1c4f8 | ||
|
|
a79c54cde7 | ||
|
|
587a8b20f4 | ||
|
|
6f0cdd14f8 | ||
|
|
fa137a93e9 | ||
|
|
e388bfc371 | ||
|
|
5f65de0ef4 | ||
|
|
1d679a8357 | ||
|
|
314f732333 | ||
|
|
65616c2c53 | ||
|
|
e6ba730c59 | ||
|
|
1ea50e209a | ||
|
|
1b3dca6b7d | ||
|
|
5cad8a60c9 | ||
|
|
f9b7746ea1 | ||
|
|
19ea4244f5 | ||
|
|
cc65a1d76c | ||
|
|
17fc6bd66e | ||
|
|
d93488448e | ||
|
|
968d87045d | ||
|
|
40af75c19d | ||
|
|
ba1de16ac2 | ||
|
|
ab4fe3fdf4 | ||
|
|
0e0c8b5569 | ||
|
|
eb889c95e0 | ||
|
|
a6ebecd707 | ||
|
|
ee4341892c | ||
|
|
5aa7cdedb8 | ||
|
|
4c12f8970c | ||
|
|
eceb4e51ad | ||
|
|
88e7637a33 | ||
|
|
cf9e21febd | ||
|
|
41f3e2e0cf | ||
|
|
9f822f1391 | ||
|
|
01322d11ff | ||
|
|
cc66c999b0 | ||
|
|
d516a1aa57 | ||
|
|
eb115ad42a | ||
|
|
d1a00d8173 | ||
|
|
7bc3e944ad | ||
|
|
1d79a1ac80 | ||
|
|
5cbe4a40d3 | ||
|
|
b6ed8cc767 | ||
|
|
7818c4f30b | ||
|
|
2adc22cae3 | ||
|
|
647182d67c | ||
|
|
ac285dd521 | ||
|
|
cb1c0f9b5a | ||
|
|
e1f28cea96 | ||
|
|
7773506b00 | ||
|
|
74df3e9553 | ||
|
|
42d06a1276 | ||
|
|
08377f37f3 | ||
|
|
a46b1aa86e | ||
|
|
3d031ee8f8 | ||
|
|
c6e7814b57 | ||
|
|
2d61c97bc7 | ||
|
|
ece06b37da | ||
|
|
6fbda11d02 | ||
|
|
5d7e18de54 | ||
|
|
837a582510 | ||
|
|
310137d045 | ||
|
|
0c5350c58d | ||
|
|
40a2186093 | ||
|
|
d6ac7f4a60 | ||
|
|
51b2ff84fc | ||
|
|
6bf7ad4e2b | ||
|
|
eb31cf1d4b | ||
|
|
977d7cd0b3 | ||
|
|
17d5422c8c | ||
|
|
030492de19 | ||
|
|
f408fdf5f0 | ||
|
|
ba1716d846 | ||
|
|
d4d0b5959a | ||
|
|
fbacfbdb69 | ||
|
|
b4c8f6b778 | ||
|
|
c2c355b623 | ||
|
|
d999833517 | ||
|
|
9b6df8a267 | ||
|
|
57f6bcc4b0 | ||
|
|
faaf62afad | ||
|
|
ac03b8b503 | ||
|
|
1884c06652 | ||
|
|
4b0dbd7bd1 | ||
|
|
932a38abc0 | ||
|
|
ba2329a9c0 | ||
|
|
f449033ea8 | ||
|
|
102dc5f0f0 | ||
|
|
af2666fde3 | ||
|
|
322ce39e98 | ||
|
|
f0240ef3bb | ||
|
|
388a93fe25 | ||
|
|
a294cad5c8 | ||
|
|
a0c9f8c9a0 | ||
|
|
70c81e27e8 | ||
|
|
1bb73e017e | ||
|
|
4a0afc0347 | ||
|
|
7790ec4a17 | ||
|
|
e276ae3c2f | ||
|
|
d463541082 | ||
|
|
2a65a32de1 | ||
|
|
f2948dce67 | ||
|
|
14e5d740cd | ||
|
|
78eed44d15 | ||
|
|
80fdf09b26 | ||
|
|
bed18c26c3 | ||
|
|
7de6eb2bad | ||
|
|
0adb3e1b9c | ||
|
|
153fa10dc5 | ||
|
|
85e5108452 | ||
|
|
c1620f3868 | ||
|
|
43f7c3c748 | ||
|
|
044af8f674 | ||
|
|
c8299d7d8f | ||
|
|
36c7b556e3 | ||
|
|
db11ba7a34 | ||
|
|
3c3d4ef64b | ||
|
|
ce0d371c98 | ||
|
|
31120dd88c | ||
|
|
1113afbfad | ||
|
|
bfa16ba848 | ||
|
|
e57e19fee6 | ||
|
|
fc2638de9c | ||
|
|
1e4f367a1d | ||
|
|
32545aefde | ||
|
|
2e6f180e95 | ||
|
|
3b78290cd3 | ||
|
|
5482207823 | ||
|
|
075d9a257e | ||
|
|
a9731d6dd5 | ||
|
|
032d199961 | ||
|
|
bcce5fa8e6 | ||
|
|
00a2a9feef | ||
|
|
e0b92bb633 | ||
|
|
d3436555f8 | ||
|
|
618729bf5a | ||
|
|
ff46fc7d93 | ||
|
|
20295c68fd | ||
|
|
95d32473a1 | ||
|
|
def2ae50ee | ||
|
|
a7b2797514 | ||
|
|
42bd0f4729 | ||
|
|
1fd5e6e210 | ||
|
|
5d1d47c01b | ||
|
|
63b6f6f55e | ||
|
|
7447980e2b | ||
|
|
158b6945fd | ||
|
|
9a33512564 | ||
|
|
7413032185 | ||
|
|
cc81020875 | ||
|
|
2e5700d32d | ||
|
|
7c6debbef6 | ||
|
|
3c2d9f7532 | ||
|
|
e751502412 | ||
|
|
901f8ba19a | ||
|
|
69f2d768b1 | ||
|
|
47430de294 | ||
|
|
a9ca4db07b | ||
|
|
be17261a92 | ||
|
|
e15742b404 | ||
|
|
7048fe5377 | ||
|
|
3e258ea74e | ||
|
|
7f3f397706 | ||
|
|
1e3b015a6f | ||
|
|
3f982a4de4 | ||
|
|
f946b24e63 | ||
|
|
78f3b5c5f6 | ||
|
|
749bc4ea7e | ||
|
|
0c326fa302 | ||
|
|
53c8af4566 | ||
|
|
dee5400485 | ||
|
|
e9e4d0a073 | ||
|
|
b63332de80 | ||
|
|
fe57aa46df | ||
|
|
bd7c04f738 | ||
|
|
8c10cd220f | ||
|
|
3d5990500b | ||
|
|
e6c9eb9824 | ||
|
|
c08c0f85eb | ||
|
|
3c4d151e03 | ||
|
|
c06fcb2491 | ||
|
|
6a6d1d6186 | ||
|
|
a6ad04cfdf | ||
|
|
3cc01c6239 | ||
|
|
52069dac40 | ||
|
|
31a4d2aa3e | ||
|
|
172d5e7988 | ||
|
|
a6ca8bb904 | ||
|
|
52bc3a41c8 | ||
|
|
80ae4cb7d8 | ||
|
|
cc7535ee52 | ||
|
|
eb1276013b | ||
|
|
41ddc536d6 | ||
|
|
7ef2e9553c | ||
|
|
cdada926d8 | ||
|
|
5b38a94c9a | ||
|
|
0acb780715 | ||
|
|
6b9167199f | ||
|
|
a4e1639529 | ||
|
|
758e89208e | ||
|
|
bff52694c4 | ||
|
|
4bd6a3a6e8 | ||
|
|
aafa6e3e53 | ||
|
|
4354371b4e | ||
|
|
6a295d5e8e | ||
|
|
eb357b51f2 | ||
|
|
dae4dbf377 | ||
|
|
0c24fd66cd | ||
|
|
a1a22205c6 | ||
|
|
4dc0f07828 | ||
|
|
67327dfb2e | ||
|
|
61ab32e6f5 | ||
|
|
416bb224e0 | ||
|
|
3923d11dc6 | ||
|
|
5842e1b2aa | ||
|
|
7676c5b65b | ||
|
|
1446f8b599 | ||
|
|
324205df88 | ||
|
|
2f8f2880ff | ||
|
|
e8e2cbcc28 | ||
|
|
4635232d93 | ||
|
|
d63458f8e0 | ||
|
|
094aa24bf6 | ||
|
|
0d8f7ab0e1 | ||
|
|
e2ec07ae87 | ||
|
|
8d23201a05 | ||
|
|
c215e576e6 | ||
|
|
51c918f212 | ||
|
|
1b501bb509 | ||
|
|
5de9f41f5a | ||
|
|
f6293153c8 | ||
|
|
88a25713a5 | ||
|
|
5713363c89 | ||
|
|
322a3cca50 | ||
|
|
054530fdb4 | ||
|
|
ff33fdeb8e | ||
|
|
3ea96df63c | ||
|
|
26edfd1f92 | ||
|
|
66f0f6ccbe | ||
|
|
820cfb40ca | ||
|
|
f8ae7fcc5f | ||
|
|
60f1ea8088 | ||
|
|
6e715ddc10 | ||
|
|
d69d9c4622 | ||
|
|
b5cc7c2fe1 | ||
|
|
e61a6017f9 | ||
|
|
5e73cc4298 | ||
|
|
f954763635 | ||
|
|
09025dc8ef |
9
.gitignore
vendored
9
.gitignore
vendored
@@ -1,6 +1,7 @@
|
|||||||
# Object files
|
# Object files
|
||||||
*.o
|
*.o
|
||||||
*.obj
|
*.obj
|
||||||
|
codec/obj
|
||||||
|
|
||||||
# Dependency files
|
# Dependency files
|
||||||
*.d
|
*.d
|
||||||
@@ -26,8 +27,16 @@ h264dec
|
|||||||
h264enc
|
h264enc
|
||||||
codec_unittest
|
codec_unittest
|
||||||
|
|
||||||
|
# Other files generated by the MSVC compiler
|
||||||
|
*.exp
|
||||||
|
*.pdb
|
||||||
|
|
||||||
|
# Executables built by the MSVC project files
|
||||||
|
bin
|
||||||
|
|
||||||
# External source
|
# External source
|
||||||
gtest
|
gtest
|
||||||
|
gmp-api
|
||||||
|
|
||||||
# Output files from example commands
|
# Output files from example commands
|
||||||
testbin/test_vd_1d.264
|
testbin/test_vd_1d.264
|
||||||
|
|||||||
10
.travis.yml
10
.travis.yml
@@ -5,5 +5,11 @@ compiler:
|
|||||||
before_install:
|
before_install:
|
||||||
- sudo apt-get update -qq
|
- sudo apt-get update -qq
|
||||||
- sudo apt-get install -qq nasm g++-4.6-multilib gcc-multilib libc6-dev-i386
|
- sudo apt-get install -qq nasm g++-4.6-multilib gcc-multilib libc6-dev-i386
|
||||||
install: make gtest-bootstrap
|
install:
|
||||||
script: make -B ENABLE64BIT=Yes && make test && make -B ENABLE64BIT=Yes BUILDTYPE=Debug && make test && make -B ENABLE64BIT=No && make test && make -B ENABLE64BIT=No BUILDTYPE=Debug && make test
|
- make gmp-bootstrap
|
||||||
|
- make gtest-bootstrap
|
||||||
|
script:
|
||||||
|
- make -B ENABLE64BIT=Yes BUILDTYPE=Release all plugin test
|
||||||
|
- make -B ENABLE64BIT=Yes BUILDTYPE=Debug all plugin test
|
||||||
|
- make -B ENABLE64BIT=No BUILDTYPE=Release all plugin test
|
||||||
|
- make -B ENABLE64BIT=No BUILDTYPE=Debug all plugin test
|
||||||
|
|||||||
113
Makefile
113
Makefile
@@ -6,6 +6,7 @@ CCAS=$(CC)
|
|||||||
CXX_O=-o $@
|
CXX_O=-o $@
|
||||||
CXX_LINK_O=-o $@
|
CXX_LINK_O=-o $@
|
||||||
AR_OPTS=cr $@
|
AR_OPTS=cr $@
|
||||||
|
LINK_LOCAL_DIR=-L.
|
||||||
LINK_LIB=-l$(1)
|
LINK_LIB=-l$(1)
|
||||||
CFLAGS_OPT=-O3
|
CFLAGS_OPT=-O3
|
||||||
CFLAGS_DEBUG=-g
|
CFLAGS_DEBUG=-g
|
||||||
@@ -15,6 +16,14 @@ PREFIX=/usr/local
|
|||||||
SHARED=-shared
|
SHARED=-shared
|
||||||
OBJ=o
|
OBJ=o
|
||||||
PROJECT_NAME=openh264
|
PROJECT_NAME=openh264
|
||||||
|
MODULE_NAME=gmpopenh264
|
||||||
|
CCASFLAGS=$(CFLAGS)
|
||||||
|
|
||||||
|
ifeq (,$(wildcard ./gmp-api))
|
||||||
|
HAVE_GMP_API=No
|
||||||
|
else
|
||||||
|
HAVE_GMP_API=Yes
|
||||||
|
endif
|
||||||
|
|
||||||
ifeq (,$(wildcard ./gtest))
|
ifeq (,$(wildcard ./gtest))
|
||||||
HAVE_GTEST=No
|
HAVE_GTEST=No
|
||||||
@@ -58,18 +67,18 @@ ifneq ($(V),Yes)
|
|||||||
endif
|
endif
|
||||||
|
|
||||||
|
|
||||||
INCLUDES = -Icodec/api/svc -Icodec/common/inc
|
INCLUDES += -Icodec/api/svc -Icodec/common/inc
|
||||||
|
|
||||||
DECODER_INCLUDES = \
|
DECODER_INCLUDES += \
|
||||||
-Icodec/decoder/core/inc \
|
-Icodec/decoder/core/inc \
|
||||||
-Icodec/decoder/plus/inc
|
-Icodec/decoder/plus/inc
|
||||||
|
|
||||||
ENCODER_INCLUDES = \
|
ENCODER_INCLUDES += \
|
||||||
-Icodec/encoder/core/inc \
|
-Icodec/encoder/core/inc \
|
||||||
-Icodec/encoder/plus/inc \
|
-Icodec/encoder/plus/inc \
|
||||||
-Icodec/processing/interface
|
-Icodec/processing/interface
|
||||||
|
|
||||||
PROCESSING_INCLUDES = \
|
PROCESSING_INCLUDES += \
|
||||||
-Icodec/processing/interface \
|
-Icodec/processing/interface \
|
||||||
-Icodec/processing/src/common \
|
-Icodec/processing/src/common \
|
||||||
-Icodec/processing/src/scrolldetection
|
-Icodec/processing/src/scrolldetection
|
||||||
@@ -82,33 +91,51 @@ CODEC_UNITTEST_INCLUDES += \
|
|||||||
-Igtest/include \
|
-Igtest/include \
|
||||||
-Icodec/common/inc \
|
-Icodec/common/inc \
|
||||||
|
|
||||||
H264DEC_INCLUDES = $(DECODER_INCLUDES) -Icodec/console/dec/inc
|
CONSOLE_COMMON_INCLUDES += \
|
||||||
H264DEC_LDFLAGS = -L. $(call LINK_LIB,decoder) $(call LINK_LIB,common)
|
-Icodec/console/common/inc
|
||||||
H264DEC_DEPS = $(LIBPREFIX)decoder.$(LIBSUFFIX) $(LIBPREFIX)common.$(LIBSUFFIX)
|
|
||||||
|
|
||||||
H264ENC_INCLUDES = $(ENCODER_INCLUDES) -Icodec/console/enc/inc
|
H264DEC_INCLUDES += $(DECODER_INCLUDES) $(CONSOLE_COMMON_INCLUDES) -Icodec/console/dec/inc
|
||||||
H264ENC_LDFLAGS = -L. $(call LINK_LIB,encoder) $(call LINK_LIB,processing) $(call LINK_LIB,common)
|
H264DEC_LDFLAGS = $(LINK_LOCAL_DIR) $(call LINK_LIB,decoder) $(call LINK_LIB,common) $(call LINK_LIB,console_common)
|
||||||
H264ENC_DEPS = $(LIBPREFIX)encoder.$(LIBSUFFIX) $(LIBPREFIX)processing.$(LIBSUFFIX) $(LIBPREFIX)common.$(LIBSUFFIX)
|
H264DEC_DEPS = $(LIBPREFIX)decoder.$(LIBSUFFIX) $(LIBPREFIX)common.$(LIBSUFFIX) $(LIBPREFIX)console_common.$(LIBSUFFIX)
|
||||||
|
|
||||||
CODEC_UNITTEST_LDFLAGS = -L. $(call LINK_LIB,gtest) $(call LINK_LIB,decoder) $(call LINK_LIB,encoder) $(call LINK_LIB,processing) $(call LINK_LIB,common) $(CODEC_UNITTEST_LDFLAGS_SUFFIX)
|
H264ENC_INCLUDES += $(ENCODER_INCLUDES) $(CONSOLE_COMMON_INCLUDES) -Icodec/console/enc/inc
|
||||||
|
H264ENC_LDFLAGS = $(LINK_LOCAL_DIR) $(call LINK_LIB,encoder) $(call LINK_LIB,processing) $(call LINK_LIB,common) $(call LINK_LIB,console_common)
|
||||||
|
H264ENC_DEPS = $(LIBPREFIX)encoder.$(LIBSUFFIX) $(LIBPREFIX)processing.$(LIBSUFFIX) $(LIBPREFIX)common.$(LIBSUFFIX) $(LIBPREFIX)console_common.$(LIBSUFFIX)
|
||||||
|
|
||||||
|
CODEC_UNITTEST_LDFLAGS = $(LINK_LOCAL_DIR) $(call LINK_LIB,gtest) $(call LINK_LIB,decoder) $(call LINK_LIB,encoder) $(call LINK_LIB,processing) $(call LINK_LIB,common) $(CODEC_UNITTEST_LDFLAGS_SUFFIX)
|
||||||
CODEC_UNITTEST_DEPS = $(LIBPREFIX)gtest.$(LIBSUFFIX) $(LIBPREFIX)decoder.$(LIBSUFFIX) $(LIBPREFIX)encoder.$(LIBSUFFIX) $(LIBPREFIX)processing.$(LIBSUFFIX) $(LIBPREFIX)common.$(LIBSUFFIX)
|
CODEC_UNITTEST_DEPS = $(LIBPREFIX)gtest.$(LIBSUFFIX) $(LIBPREFIX)decoder.$(LIBSUFFIX) $(LIBPREFIX)encoder.$(LIBSUFFIX) $(LIBPREFIX)processing.$(LIBSUFFIX) $(LIBPREFIX)common.$(LIBSUFFIX)
|
||||||
DECODER_UNITTEST_INCLUDES = $(CODEC_UNITTEST_INCLUDES) $(DECODER_INCLUDES) -Itest -Itest/decoder
|
DECODER_UNITTEST_INCLUDES += $(CODEC_UNITTEST_INCLUDES) $(DECODER_INCLUDES) -Itest -Itest/decoder
|
||||||
ENCODER_UNITTEST_INCLUDES = $(CODEC_UNITTEST_INCLUDES) $(ENCODER_INCLUDES) -Itest -Itest/encoder
|
ENCODER_UNITTEST_INCLUDES += $(CODEC_UNITTEST_INCLUDES) $(ENCODER_INCLUDES) -Itest -Itest/encoder
|
||||||
PROCESSING_UNITTEST_INCLUDES = $(CODEC_UNITTEST_INCLUDES) $(PROCESSING_INCLUDES) -Itest -Itest/processing
|
PROCESSING_UNITTEST_INCLUDES += $(CODEC_UNITTEST_INCLUDES) $(PROCESSING_INCLUDES) -Itest -Itest/processing
|
||||||
API_TEST_INCLUDES = $(CODEC_UNITTEST_INCLUDES) -Itest -Itest/api
|
API_TEST_INCLUDES += $(CODEC_UNITTEST_INCLUDES) -Itest -Itest/api
|
||||||
|
COMMON_UNITTEST_INCLUDES += $(CODEC_UNITTEST_INCLUDES) $(DECODER_INCLUDES) -Itest -Itest/common
|
||||||
|
MODULE_INCLUDES += -Igmp-api
|
||||||
|
|
||||||
.PHONY: test gtest-bootstrap clean
|
.PHONY: test gtest-bootstrap clean
|
||||||
|
|
||||||
all: libraries binaries
|
all: libraries binaries
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
|
ifeq (android,$(OS))
|
||||||
|
clean: clean_Android
|
||||||
|
endif
|
||||||
$(QUIET)rm -f $(OBJS) $(OBJS:.$(OBJ)=.d) $(LIBRARIES) $(BINARIES)
|
$(QUIET)rm -f $(OBJS) $(OBJS:.$(OBJ)=.d) $(LIBRARIES) $(BINARIES)
|
||||||
|
|
||||||
|
gmp-bootstrap:
|
||||||
|
git clone https://github.com/mozilla/gmp-api gmp-api
|
||||||
|
|
||||||
gtest-bootstrap:
|
gtest-bootstrap:
|
||||||
svn co https://googletest.googlecode.com/svn/trunk/ gtest
|
svn co https://googletest.googlecode.com/svn/trunk/ gtest
|
||||||
|
|
||||||
ifeq ($(HAVE_GTEST),Yes)
|
ifeq ($(HAVE_GTEST),Yes)
|
||||||
|
|
||||||
test: codec_unittest$(EXEEXT)
|
test: codec_unittest$(EXEEXT)
|
||||||
|
ifneq (android,$(OS))
|
||||||
|
ifneq (ios,$(OS))
|
||||||
./codec_unittest
|
./codec_unittest
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
else
|
else
|
||||||
test:
|
test:
|
||||||
@echo "./gtest : No such file or directory."
|
@echo "./gtest : No such file or directory."
|
||||||
@@ -120,14 +147,24 @@ include codec/decoder/targets.mk
|
|||||||
include codec/encoder/targets.mk
|
include codec/encoder/targets.mk
|
||||||
include codec/processing/targets.mk
|
include codec/processing/targets.mk
|
||||||
|
|
||||||
|
ifeq ($(HAVE_GMP_API),Yes)
|
||||||
|
include module/targets.mk
|
||||||
|
endif
|
||||||
|
|
||||||
ifneq (android, $(OS))
|
ifneq (android, $(OS))
|
||||||
ifneq (ios, $(OS))
|
ifneq (ios, $(OS))
|
||||||
include codec/console/dec/targets.mk
|
include codec/console/dec/targets.mk
|
||||||
include codec/console/enc/targets.mk
|
include codec/console/enc/targets.mk
|
||||||
|
include codec/console/common/targets.mk
|
||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
ifneq (ios, $(OS))
|
||||||
libraries: $(LIBPREFIX)$(PROJECT_NAME).$(LIBSUFFIX) $(LIBPREFIX)$(PROJECT_NAME).$(SHAREDLIBSUFFIX)
|
libraries: $(LIBPREFIX)$(PROJECT_NAME).$(LIBSUFFIX) $(LIBPREFIX)$(PROJECT_NAME).$(SHAREDLIBSUFFIX)
|
||||||
|
else
|
||||||
|
libraries: $(LIBPREFIX)$(PROJECT_NAME).$(LIBSUFFIX)
|
||||||
|
endif
|
||||||
|
|
||||||
LIBRARIES += $(LIBPREFIX)$(PROJECT_NAME).$(LIBSUFFIX) $(LIBPREFIX)$(PROJECT_NAME).$(SHAREDLIBSUFFIX)
|
LIBRARIES += $(LIBPREFIX)$(PROJECT_NAME).$(LIBSUFFIX) $(LIBPREFIX)$(PROJECT_NAME).$(SHAREDLIBSUFFIX)
|
||||||
|
|
||||||
$(LIBPREFIX)$(PROJECT_NAME).$(LIBSUFFIX): $(ENCODER_OBJS) $(DECODER_OBJS) $(PROCESSING_OBJS) $(COMMON_OBJS)
|
$(LIBPREFIX)$(PROJECT_NAME).$(LIBSUFFIX): $(ENCODER_OBJS) $(DECODER_OBJS) $(PROCESSING_OBJS) $(COMMON_OBJS)
|
||||||
@@ -138,6 +175,19 @@ $(LIBPREFIX)$(PROJECT_NAME).$(SHAREDLIBSUFFIX): $(ENCODER_OBJS) $(DECODER_OBJS)
|
|||||||
$(QUIET)rm -f $@
|
$(QUIET)rm -f $@
|
||||||
$(QUIET_CXX)$(CXX) $(SHARED) $(LDFLAGS) $(CXX_LINK_O) $+ $(SHLDFLAGS)
|
$(QUIET_CXX)$(CXX) $(SHARED) $(LDFLAGS) $(CXX_LINK_O) $+ $(SHLDFLAGS)
|
||||||
|
|
||||||
|
ifeq ($(HAVE_GMP_API),Yes)
|
||||||
|
plugin: $(LIBPREFIX)$(MODULE_NAME).$(SHAREDLIBSUFFIX)
|
||||||
|
LIBRARIES += $(LIBPREFIX)$(MODULE_NAME).$(SHAREDLIBSUFFIX)
|
||||||
|
else
|
||||||
|
plugin:
|
||||||
|
@echo "./gmp-api : No such file or directory."
|
||||||
|
@echo "You do not have gmp-api. Run make gmp-bootstrap to get the gmp-api headers."
|
||||||
|
endif
|
||||||
|
|
||||||
|
$(LIBPREFIX)$(MODULE_NAME).$(SHAREDLIBSUFFIX): $(MODULE_OBJS) $(ENCODER_OBJS) $(DECODER_OBJS) $(PROCESSING_OBJS) $(COMMON_OBJS)
|
||||||
|
$(QUIET)rm -f $@
|
||||||
|
$(QUIET_CXX)$(CXX) $(SHARED) $(LDFLAGS) $(CXX_LINK_O) $+ $(SHLDFLAGS) $(MODULE_LDFLAGS)
|
||||||
|
|
||||||
install-headers:
|
install-headers:
|
||||||
mkdir -p $(PREFIX)/include/wels
|
mkdir -p $(PREFIX)/include/wels
|
||||||
install -m 644 codec/api/svc/codec*.h $(PREFIX)/include/wels
|
install -m 644 codec/api/svc/codec*.h $(PREFIX)/include/wels
|
||||||
@@ -162,11 +212,42 @@ include test/api/targets.mk
|
|||||||
include test/decoder/targets.mk
|
include test/decoder/targets.mk
|
||||||
include test/encoder/targets.mk
|
include test/encoder/targets.mk
|
||||||
include test/processing/targets.mk
|
include test/processing/targets.mk
|
||||||
|
include test/common/targets.mk
|
||||||
|
|
||||||
|
LIBRARIES += $(LIBPREFIX)ut.$(LIBSUFFIX)
|
||||||
|
$(LIBPREFIX)ut.$(LIBSUFFIX): $(DECODER_UNITTEST_OBJS) $(ENCODER_UNITTEST_OBJS) $(PROCESSING_UNITTEST_OBJS) $(COMMON_UNITTEST_OBJS) $(API_TEST_OBJS)
|
||||||
|
$(QUIET)rm -f $@
|
||||||
|
$(QUIET_AR)$(AR) $(AR_OPTS) $+
|
||||||
|
|
||||||
|
|
||||||
|
LIBRARIES +=$(LIBPREFIX)ut.$(SHAREDLIBSUFFIX)
|
||||||
|
$(LIBPREFIX)ut.$(SHAREDLIBSUFFIX): $(DECODER_UNITTEST_OBJS) $(ENCODER_UNITTEST_OBJS) $(PROCESSING_UNITTEST_OBJS) $(API_TEST_OBJS) $(COMMON_UNITTEST_OBJS) $(CODEC_UNITTEST_DEPS)
|
||||||
|
$(QUIET)rm -f $@
|
||||||
|
$(QUIET_CXX)$(CXX) $(SHARED) $(LDFLAGS) $(CXX_LINK_O) $+ $(CODEC_UNITTEST_LDFLAGS)
|
||||||
|
|
||||||
binaries: codec_unittest$(EXEEXT)
|
binaries: codec_unittest$(EXEEXT)
|
||||||
BINARIES += codec_unittest$(EXEEXT)
|
BINARIES += codec_unittest$(EXEEXT)
|
||||||
codec_unittest$(EXEEXT): $(DECODER_UNITTEST_OBJS) $(ENCODER_UNITTEST_OBJS) $(PROCESSING_UNITTEST_OBJS) $(API_TEST_OBJS) $(CODEC_UNITTEST_DEPS)
|
|
||||||
|
ifeq (ios,$(OS))
|
||||||
|
codec_unittest$(EXEEXT): $(LIBPREFIX)ut.$(LIBSUFFIX) $(LIBPREFIX)gtest.$(LIBSUFFIX) $(LIBPREFIX)$(PROJECT_NAME).$(LIBSUFFIX)
|
||||||
|
|
||||||
|
else
|
||||||
|
ifeq (android,$(OS))
|
||||||
|
codec_unittest$(EXEEXT): $(LIBPREFIX)ut.$(SHAREDLIBSUFFIX)
|
||||||
|
cd ./test/build/android && $(NDKROOT)/ndk-build -B APP_ABI=$(APP_ABI) && android update project -t $(TARGET) -p . && ant debug
|
||||||
|
|
||||||
|
clean_Android: clean_Android_ut
|
||||||
|
clean_Android_ut:
|
||||||
|
-cd ./test/build/android && $(NDKROOT)/ndk-build APP_ABI=$(APP_ABI) clean && ant clean
|
||||||
|
|
||||||
|
else
|
||||||
|
codec_unittest$(EXEEXT): $(DECODER_UNITTEST_OBJS) $(ENCODER_UNITTEST_OBJS) $(PROCESSING_UNITTEST_OBJS) $(API_TEST_OBJS) $(COMMON_UNITTEST_OBJS) $(CODEC_UNITTEST_DEPS)
|
||||||
$(QUIET)rm -f $@
|
$(QUIET)rm -f $@
|
||||||
$(QUIET_CXX)$(CXX) $(CXX_LINK_O) $+ $(CODEC_UNITTEST_LDFLAGS) $(LDFLAGS)
|
$(QUIET_CXX)$(CXX) $(CXX_LINK_O) $+ $(CODEC_UNITTEST_LDFLAGS) $(LDFLAGS)
|
||||||
|
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
else
|
else
|
||||||
binaries:
|
binaries:
|
||||||
@:
|
@:
|
||||||
|
|||||||
19
RELEASES
Normal file
19
RELEASES
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
|
||||||
|
Releases
|
||||||
|
|
||||||
|
These binary releases are distributed under this license:
|
||||||
|
http://www.openh264.org/BINARY_LICENSE.txt
|
||||||
|
|
||||||
|
v1.0.0
|
||||||
|
------
|
||||||
|
|
||||||
|
http://ciscobinary.openh264.org/download/libopenh264-1.0.0-android19.so.bz2
|
||||||
|
http://ciscobinary.openh264.org/download/libopenh264-1.0.0-linux32.so.bz2
|
||||||
|
http://ciscobinary.openh264.org/download/libopenh264-1.0.0-linux64.so.bz2
|
||||||
|
http://ciscobinary.openh264.org/download/libopenh264-1.0.0-osx64.dylib.bz2
|
||||||
|
http://ciscobinary.openh264.org/download/openh264-1.0.0-win32msvc.dll.bz2
|
||||||
|
http://ciscobinary.openh264.org/download/openh264-1.0.0-win64msvc.dll.bz2
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@@ -20,9 +20,6 @@ INCLUDE=[]
|
|||||||
OUTFILE="targets.mk"
|
OUTFILE="targets.mk"
|
||||||
CPP_SUFFIX=".cpp"
|
CPP_SUFFIX=".cpp"
|
||||||
|
|
||||||
def make_o(x):
|
|
||||||
return os.path.splitext(x)[0] + ".$(OBJ)"
|
|
||||||
|
|
||||||
def write_cpp_rule_pattern(f):
|
def write_cpp_rule_pattern(f):
|
||||||
src = "$(%s_SRCDIR)/%%%s"%(PREFIX, CPP_SUFFIX)
|
src = "$(%s_SRCDIR)/%%%s"%(PREFIX, CPP_SUFFIX)
|
||||||
dst = "$(%s_SRCDIR)/%%.$(OBJ)"%(PREFIX)
|
dst = "$(%s_SRCDIR)/%%.$(OBJ)"%(PREFIX)
|
||||||
@@ -52,7 +49,7 @@ def write_asm_s_rule_pattern(f):
|
|||||||
dst = "$(%s_SRCDIR)/%%.$(OBJ)"%(PREFIX)
|
dst = "$(%s_SRCDIR)/%%.$(OBJ)"%(PREFIX)
|
||||||
|
|
||||||
f.write("%s: %s\n"%(dst, src))
|
f.write("%s: %s\n"%(dst, src))
|
||||||
f.write('\t$(QUIET_CCAS)$(CCAS) $(CFLAGS) $(ASMFLAGS) $(INCLUDES) $(' + PREFIX + '_CFLAGS) $(' + PREFIX + '_INCLUDES) -c -o $@ $<\n')
|
f.write('\t$(QUIET_CCAS)$(CCAS) $(CCASFLAGS) $(ASMFLAGS) $(INCLUDES) $(' + PREFIX + '_CFLAGS) $(' + PREFIX + '_INCLUDES) -c -o $@ $<\n')
|
||||||
f.write("\n")
|
f.write("\n")
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -7,8 +7,11 @@ python build/mktargets.py --directory codec/processing --library processing
|
|||||||
|
|
||||||
python build/mktargets.py --directory codec/console/dec --binary h264dec
|
python build/mktargets.py --directory codec/console/dec --binary h264dec
|
||||||
python build/mktargets.py --directory codec/console/enc --binary h264enc
|
python build/mktargets.py --directory codec/console/enc --binary h264enc
|
||||||
|
python build/mktargets.py --directory codec/console/common --library console_common
|
||||||
python build/mktargets.py --directory test/encoder --prefix encoder_unittest
|
python build/mktargets.py --directory test/encoder --prefix encoder_unittest
|
||||||
python build/mktargets.py --directory test/decoder --prefix decoder_unittest
|
python build/mktargets.py --directory test/decoder --prefix decoder_unittest
|
||||||
python build/mktargets.py --directory test/processing --prefix processing_unittest
|
python build/mktargets.py --directory test/processing --prefix processing_unittest
|
||||||
python build/mktargets.py --directory test/api --prefix api_test
|
python build/mktargets.py --directory test/api --prefix api_test
|
||||||
|
python build/mktargets.py --directory test/common --prefix common_unittest
|
||||||
|
python build/mktargets.py --directory module --prefix module
|
||||||
python build/mktargets.py --directory gtest --library gtest --out build/gtest-targets.mk --cpp-suffix .cc --include gtest-all.cc
|
python build/mktargets.py --directory gtest --library gtest --out build/gtest-targets.mk --cpp-suffix .cc --include gtest-all.cc
|
||||||
|
|||||||
@@ -35,18 +35,21 @@ SYSROOT = $(NDKROOT)/platforms/android-$(NDKLEVEL)/arch-$(ARCH)
|
|||||||
CXX = $(TOOLCHAINPREFIX)g++
|
CXX = $(TOOLCHAINPREFIX)g++
|
||||||
CC = $(TOOLCHAINPREFIX)gcc
|
CC = $(TOOLCHAINPREFIX)gcc
|
||||||
AR = $(TOOLCHAINPREFIX)ar
|
AR = $(TOOLCHAINPREFIX)ar
|
||||||
CFLAGS += -DLINUX -DANDROID_NDK -fpic --sysroot=$(SYSROOT)
|
CFLAGS += -DANDROID_NDK -fpic --sysroot=$(SYSROOT) -MMD -MP
|
||||||
CXXFLAGS += -fno-rtti -fno-exceptions
|
CXXFLAGS += -fno-rtti -fno-exceptions
|
||||||
LDFLAGS += --sysroot=$(SYSROOT)
|
LDFLAGS += --sysroot=$(SYSROOT)
|
||||||
SHLDFLAGS = -Wl,--no-undefined -Wl,-z,noexecstack -Wl,-z,relro -Wl,-z,now -Wl,-soname,lib$(PROJECT_NAME).so
|
SHLDFLAGS = -Wl,--no-undefined -Wl,-z,noexecstack -Wl,-z,relro -Wl,-z,now -Wl,-soname,lib$(PROJECT_NAME).so
|
||||||
|
|
||||||
STL_INCLUDES = \
|
STL_INCLUDES = \
|
||||||
-I$(NDKROOT)/sources/cxx-stl/stlport/stlport
|
-I$(NDKROOT)/sources/cxx-stl/stlport/stlport
|
||||||
|
STL_LIB = \
|
||||||
|
$(NDKROOT)/sources/cxx-stl/stlport/libs/$(APP_ABI)/libstlport_static.a
|
||||||
|
|
||||||
GTEST_INCLUDES = $(STL_INCLUDES)
|
GTEST_INCLUDES = $(STL_INCLUDES)
|
||||||
CODEC_UNITTEST_INCLUDES = $(STL_INCLUDES)
|
CODEC_UNITTEST_INCLUDES = $(STL_INCLUDES)
|
||||||
CODEC_UNITTEST_LDFLAGS_SUFFIX = \
|
CODEC_UNITTEST_LDFLAGS_SUFFIX = $(STL_LIB)
|
||||||
$(NDKROOT)/sources/cxx-stl/stlport/libs/$(APP_ABI)/libstlport_static.a
|
MODULE_INCLUDES = $(STL_INCLUDES)
|
||||||
|
MODULE_LDFLAGS = $(STL_LIB)
|
||||||
|
|
||||||
binaries : decdemo encdemo
|
binaries : decdemo encdemo
|
||||||
|
|
||||||
@@ -56,13 +59,20 @@ decdemo: libraries
|
|||||||
encdemo: libraries
|
encdemo: libraries
|
||||||
cd ./codec/build/android/enc && $(NDKROOT)/ndk-build -B APP_ABI=$(APP_ABI) && android update project -t $(TARGET) -p . && ant debug
|
cd ./codec/build/android/enc && $(NDKROOT)/ndk-build -B APP_ABI=$(APP_ABI) && android update project -t $(TARGET) -p . && ant debug
|
||||||
|
|
||||||
|
clean_Android: clean_Android_dec clean_Android_enc
|
||||||
|
|
||||||
|
clean_Android_dec:
|
||||||
|
-cd ./codec/build/android/dec && $(NDKROOT)/ndk-build APP_ABI=$(APP_ABI) clean && ant clean
|
||||||
|
clean_Android_enc:
|
||||||
|
-cd ./codec/build/android/enc && $(NDKROOT)/ndk-build APP_ABI=$(APP_ABI) clean && ant clean
|
||||||
|
|
||||||
COMMON_INCLUDES += -I$(NDKROOT)/sources/android/cpufeatures
|
COMMON_INCLUDES += -I$(NDKROOT)/sources/android/cpufeatures
|
||||||
COMMON_OBJS += $(COMMON_SRCDIR)/cpu-features.$(OBJ)
|
COMMON_OBJS += $(COMMON_SRCDIR)/src/cpu-features.$(OBJ)
|
||||||
|
|
||||||
COMMON_CFLAGS += \
|
COMMON_CFLAGS += \
|
||||||
-Dandroid_getCpuIdArm=wels_getCpuIdArm -Dandroid_setCpuArm=wels_setCpuArm \
|
-Dandroid_getCpuIdArm=wels_getCpuIdArm -Dandroid_setCpuArm=wels_setCpuArm \
|
||||||
-Dandroid_getCpuCount=wels_getCpuCount -Dandroid_getCpuFamily=wels_getCpuFamily \
|
-Dandroid_getCpuCount=wels_getCpuCount -Dandroid_getCpuFamily=wels_getCpuFamily \
|
||||||
-Dandroid_getCpuFeatures=wels_getCpuFeatures -Dandroid_setCpu=wels_setCpu \
|
-Dandroid_getCpuFeatures=wels_getCpuFeatures -Dandroid_setCpu=wels_setCpu \
|
||||||
|
|
||||||
codec/common/cpu-features.$(OBJ): $(NDKROOT)/sources/android/cpufeatures/cpu-features.c
|
codec/common/src/cpu-features.$(OBJ): $(NDKROOT)/sources/android/cpufeatures/cpu-features.c
|
||||||
$(QUIET_CC)$(CC) $(CFLAGS) $(INCLUDES) $(COMMON_CFLAGS) $(COMMON_INCLUDES) -c $(CXX_O) $<
|
$(QUIET_CC)$(CC) $(CFLAGS) $(INCLUDES) $(COMMON_CFLAGS) $(COMMON_INCLUDES) -c $(CXX_O) $<
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
include build/platform-arch.mk
|
include build/platform-arch.mk
|
||||||
SHAREDLIBSUFFIX = dylib
|
SHAREDLIBSUFFIX = dylib
|
||||||
SHARED = -dynamiclib
|
SHARED = -dynamiclib
|
||||||
CFLAGS += -Wall -fPIC -DMACOS -MMD -MP
|
CFLAGS += -Wall -fPIC -MMD -MP
|
||||||
LDFLAGS += -lpthread
|
LDFLAGS += -lpthread
|
||||||
ifeq ($(ASM_ARCH), x86)
|
ifeq ($(ASM_ARCH), x86)
|
||||||
ASMFLAGS += -DPREFIX
|
ASMFLAGS += -DPREFIX
|
||||||
|
|||||||
@@ -10,7 +10,8 @@ endif
|
|||||||
SDK = $(shell xcrun --sdk $(shell echo $(SDKTYPE) | tr A-Z a-z) --show-sdk-version)
|
SDK = $(shell xcrun --sdk $(shell echo $(SDKTYPE) | tr A-Z a-z) --show-sdk-version)
|
||||||
SDK_MIN = 5.1
|
SDK_MIN = 5.1
|
||||||
|
|
||||||
SDKROOT = /Applications/Xcode.app/Contents/Developer/Platforms/$(SDKTYPE).platform/Developer/SDKs/$(SDKTYPE)$(SDK).sdk
|
XCODE=$(shell xcode-select -p)
|
||||||
|
SDKROOT = $(XCODE)/Platforms/$(SDKTYPE).platform/Developer/SDKs/$(SDKTYPE)$(SDK).sdk
|
||||||
CFLAGS += -arch $(ARCH) -isysroot $(SDKROOT) -miphoneos-version-min=$(SDK_MIN) -DAPPLE_IOS
|
CFLAGS += -arch $(ARCH) -isysroot $(SDKROOT) -miphoneos-version-min=$(SDK_MIN) -DAPPLE_IOS
|
||||||
LDFLAGS += -arch $(ARCH) -isysroot $(SDKROOT) -miphoneos-version-min=$(SDK_MIN)
|
LDFLAGS += -arch $(ARCH) -isysroot $(SDKROOT) -miphoneos-version-min=$(SDK_MIN)
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
include build/platform-arch.mk
|
include build/platform-arch.mk
|
||||||
SHAREDLIBSUFFIX = so
|
SHAREDLIBSUFFIX = so
|
||||||
CFLAGS += -Wall -fno-strict-aliasing -fPIC -DLINUX -MMD -MP
|
CFLAGS += -Wall -fno-strict-aliasing -fPIC -MMD -MP
|
||||||
LDFLAGS += -lpthread
|
LDFLAGS += -lpthread
|
||||||
ifeq ($(ASM_ARCH), x86)
|
ifeq ($(ASM_ARCH), x86)
|
||||||
ifeq ($(ENABLE64BIT), Yes)
|
ifeq ($(ENABLE64BIT), Yes)
|
||||||
|
|||||||
@@ -5,13 +5,11 @@ LDFLAGS +=
|
|||||||
ifeq ($(ENABLE64BIT), Yes)
|
ifeq ($(ENABLE64BIT), Yes)
|
||||||
ASMFLAGS += -f win64
|
ASMFLAGS += -f win64
|
||||||
ASMFLAGS_PLATFORM = -DWIN64
|
ASMFLAGS_PLATFORM = -DWIN64
|
||||||
CFLAGS += -DWIN64
|
|
||||||
CC = x86_64-w64-mingw32-gcc
|
CC = x86_64-w64-mingw32-gcc
|
||||||
CXX = x86_64-w64-mingw32-g++
|
CXX = x86_64-w64-mingw32-g++
|
||||||
AR = x86_64-w64-mingw32-ar
|
AR = x86_64-w64-mingw32-ar
|
||||||
else
|
else
|
||||||
ASMFLAGS += -f win32 -DPREFIX
|
ASMFLAGS += -f win32 -DPREFIX
|
||||||
CFLAGS += -DWIN32
|
|
||||||
endif
|
endif
|
||||||
EXEEXT = .exe
|
EXEEXT = .exe
|
||||||
|
|
||||||
|
|||||||
@@ -3,25 +3,25 @@ ifeq ($(ASM_ARCH), x86)
|
|||||||
ifeq ($(ENABLE64BIT), Yes)
|
ifeq ($(ENABLE64BIT), Yes)
|
||||||
ASMFLAGS += -f win64
|
ASMFLAGS += -f win64
|
||||||
ASMFLAGS_PLATFORM = -DWIN64
|
ASMFLAGS_PLATFORM = -DWIN64
|
||||||
CFLAGS += -DWIN64
|
|
||||||
else
|
else
|
||||||
ASMFLAGS += -f win32 -DPREFIX
|
ASMFLAGS += -f win32 -DPREFIX
|
||||||
CFLAGS += -DWIN32
|
|
||||||
endif
|
endif
|
||||||
else
|
else
|
||||||
CFLAGS += -DWIN32
|
|
||||||
endif
|
endif
|
||||||
ifeq ($(ASM_ARCH), arm)
|
ifeq ($(ASM_ARCH), arm)
|
||||||
CCAS = gas-preprocessor.pl -as-type armasm -force-thumb -- armasm
|
CCAS = gas-preprocessor.pl -as-type armasm -force-thumb -- armasm
|
||||||
|
CCASFLAGS = -nologo -DHAVE_NEON
|
||||||
endif
|
endif
|
||||||
|
|
||||||
CC=cl
|
CC=cl
|
||||||
CXX=cl
|
CXX=cl
|
||||||
AR=lib
|
AR=lib
|
||||||
CXX_O=-Fo$@
|
CXX_O=-Fo$@
|
||||||
# -DGTEST_HAS_TR1_TUPLE=0 is temporarily broken in gtest,
|
# -D_VARIADIC_MAX=10 is required to fix building gtest on MSVC 2012, but
|
||||||
# using _VARIADIC_MAX=10 to fix building on MSVC 2012 meanwhile.
|
# since we don't (easily) know which version of MSVC we use here, we add
|
||||||
# Once gtest works with the former again, it should be preferred.
|
# it unconditionally. The same issue can also be worked around by adding
|
||||||
|
# -DGTEST_HAS_TR1_TUPLE=0 instead, but we prefer this version since it
|
||||||
|
# matches what gtest itself does.
|
||||||
CFLAGS += -nologo -W3 -EHsc -fp:precise -Zc:wchar_t -Zc:forScope -D_VARIADIC_MAX=10
|
CFLAGS += -nologo -W3 -EHsc -fp:precise -Zc:wchar_t -Zc:forScope -D_VARIADIC_MAX=10
|
||||||
CXX_LINK_O=-nologo -Fe$@
|
CXX_LINK_O=-nologo -Fe$@
|
||||||
AR_OPTS=-nologo -out:$@
|
AR_OPTS=-nologo -out:$@
|
||||||
@@ -29,6 +29,7 @@ CFLAGS_OPT=-O2 -Ob1 -Oy- -Zi -GF -Gm- -GS -Gy -DNDEBUG
|
|||||||
CFLAGS_DEBUG=-Od -Oy- -ZI -RTC1 -D_DEBUG
|
CFLAGS_DEBUG=-Od -Oy- -ZI -RTC1 -D_DEBUG
|
||||||
CFLAGS_M32=
|
CFLAGS_M32=
|
||||||
CFLAGS_M64=
|
CFLAGS_M64=
|
||||||
|
LINK_LOCAL_DIR=
|
||||||
LINK_LIB=$(1).lib
|
LINK_LIB=$(1).lib
|
||||||
LIBSUFFIX=lib
|
LIBSUFFIX=lib
|
||||||
LIBPREFIX=
|
LIBPREFIX=
|
||||||
|
|||||||
@@ -109,7 +109,7 @@ class ISVCDecoder {
|
|||||||
*/
|
*/
|
||||||
virtual DECODING_STATE EXTAPI DecodeFrame2 (const unsigned char* pSrc,
|
virtual DECODING_STATE EXTAPI DecodeFrame2 (const unsigned char* pSrc,
|
||||||
const int iSrcLen,
|
const int iSrcLen,
|
||||||
void** ppDst,
|
unsigned char** ppDst,
|
||||||
SBufferInfo* pDstInfo) = 0;
|
SBufferInfo* pDstInfo) = 0;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@@ -174,7 +174,7 @@ DECODING_STATE (*DecodeFrame) (ISVCDecoder*, const unsigned char* pSrc,
|
|||||||
|
|
||||||
DECODING_STATE (*DecodeFrame2) (ISVCDecoder*, const unsigned char* pSrc,
|
DECODING_STATE (*DecodeFrame2) (ISVCDecoder*, const unsigned char* pSrc,
|
||||||
const int iSrcLen,
|
const int iSrcLen,
|
||||||
void** ppDst,
|
unsigned char** ppDst,
|
||||||
SBufferInfo* pDstInfo);
|
SBufferInfo* pDstInfo);
|
||||||
|
|
||||||
DECODING_STATE (*DecodeFrameEx) (ISVCDecoder*, const unsigned char* pSrc,
|
DECODING_STATE (*DecodeFrameEx) (ISVCDecoder*, const unsigned char* pSrc,
|
||||||
@@ -191,6 +191,7 @@ long (*GetOption) (ISVCDecoder*, DECODER_OPTION eOptionId, void* pOption);
|
|||||||
};
|
};
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
typedef void (*WelsTraceCallback) (void* ctx, int level, const char* string);
|
||||||
|
|
||||||
int WelsCreateSVCEncoder (ISVCEncoder** ppEncoder);
|
int WelsCreateSVCEncoder (ISVCEncoder** ppEncoder);
|
||||||
void WelsDestroySVCEncoder (ISVCEncoder* pEncoder);
|
void WelsDestroySVCEncoder (ISVCEncoder* pEncoder);
|
||||||
|
|||||||
@@ -32,9 +32,8 @@
|
|||||||
|
|
||||||
#ifndef WELS_VIDEO_CODEC_APPLICATION_DEFINITION_H__
|
#ifndef WELS_VIDEO_CODEC_APPLICATION_DEFINITION_H__
|
||||||
#define WELS_VIDEO_CODEC_APPLICATION_DEFINITION_H__
|
#define WELS_VIDEO_CODEC_APPLICATION_DEFINITION_H__
|
||||||
|
|
||||||
////////////////Data and /or structures introduced in Cisco OpenH264 application////////////////
|
////////////////Data and /or structures introduced in Cisco OpenH264 application////////////////
|
||||||
|
#include "codec_def.h"
|
||||||
/* Constants */
|
/* Constants */
|
||||||
#define MAX_TEMPORAL_LAYER_NUM 4
|
#define MAX_TEMPORAL_LAYER_NUM 4
|
||||||
#define MAX_SPATIAL_LAYER_NUM 4
|
#define MAX_SPATIAL_LAYER_NUM 4
|
||||||
@@ -59,6 +58,7 @@ typedef enum {
|
|||||||
dsBitstreamError = 0x04, /* Error bitstreams(maybe broken internal frame) the decoder cared */
|
dsBitstreamError = 0x04, /* Error bitstreams(maybe broken internal frame) the decoder cared */
|
||||||
dsDepLayerLost = 0x08, /* Dependented layer is ever lost */
|
dsDepLayerLost = 0x08, /* Dependented layer is ever lost */
|
||||||
dsNoParamSets = 0x10, /* No parameter set NALs involved */
|
dsNoParamSets = 0x10, /* No parameter set NALs involved */
|
||||||
|
dsDataErrorConcealed = 0x20, /* current data Error concealed specified */
|
||||||
|
|
||||||
/* Errors derived from logic level */
|
/* Errors derived from logic level */
|
||||||
dsInvalidArgument = 0x1000, /* Invalid argument specified */
|
dsInvalidArgument = 0x1000, /* Invalid argument specified */
|
||||||
@@ -82,18 +82,25 @@ typedef enum {
|
|||||||
ENCODER_OPTION_RC_MODE,
|
ENCODER_OPTION_RC_MODE,
|
||||||
ENCODER_PADDING_PADDING,
|
ENCODER_PADDING_PADDING,
|
||||||
|
|
||||||
|
ENCODER_OPTION_PROFILE,
|
||||||
|
ENCODER_OPTION_LEVEL,
|
||||||
|
ENCODER_OPTION_NUMBER_REF,
|
||||||
|
ENCODER_OPTION_DELIVERY_STATUS,
|
||||||
|
|
||||||
ENCODER_LTR_RECOVERY_REQUEST,
|
ENCODER_LTR_RECOVERY_REQUEST,
|
||||||
ENCODER_LTR_MARKING_FEEDBACK,
|
ENCODER_LTR_MARKING_FEEDBACK,
|
||||||
ENCOCER_LTR_MARKING_PERIOD,
|
ENCOCER_LTR_MARKING_PERIOD,
|
||||||
ENCODER_OPTION_LTR,
|
ENCODER_OPTION_LTR,
|
||||||
|
|
||||||
ENCODER_OPTION_ENABLE_SSEI, //disable SSEI: true--disable ssei; false--enable ssei
|
ENCODER_OPTION_ENABLE_SSEI, //enable SSEI: true--enable ssei; false--disable ssei
|
||||||
ENCODER_OPTION_ENABLE_PREFIX_NAL_ADDING, //enable prefix: true--enable prefix; false--disable prefix
|
ENCODER_OPTION_ENABLE_PREFIX_NAL_ADDING, //enable prefix: true--enable prefix; false--disable prefix
|
||||||
ENCODER_OPTION_ENABLE_SPS_PPS_ID_ADDITION, //disable pSps/pPps id addition: true--disable pSps/pPps id; false--enable pSps/pPps id addistion
|
ENCODER_OPTION_ENABLE_SPS_PPS_ID_ADDITION, //enable pSps/pPps id addition: true--enable pSps/pPps id; false--disable pSps/pPps id addistion
|
||||||
|
|
||||||
ENCODER_OPTION_CURRENT_PATH,
|
ENCODER_OPTION_CURRENT_PATH,
|
||||||
ENCODER_OPTION_DUMP_FILE,
|
ENCODER_OPTION_DUMP_FILE,
|
||||||
ENCODER_OPTION_TRACE_LEVEL
|
ENCODER_OPTION_TRACE_LEVEL,
|
||||||
|
ENCODER_OPTION_TRACE_CALLBACK, // a void (*)(void* context, int level, const char* message) function which receives log messages
|
||||||
|
ENCODER_OPTION_TRACE_CALLBACK_CONTEXT,
|
||||||
} ENCODER_OPTION;
|
} ENCODER_OPTION;
|
||||||
|
|
||||||
/* Option types introduced in decoder application */
|
/* Option types introduced in decoder application */
|
||||||
@@ -107,6 +114,9 @@ typedef enum {
|
|||||||
DECODER_OPTION_LTR_MARKING_FLAG, // feedback wether current frame mark a LTR
|
DECODER_OPTION_LTR_MARKING_FLAG, // feedback wether current frame mark a LTR
|
||||||
DECODER_OPTION_LTR_MARKED_FRAME_NUM, // feedback frame num marked by current Frame
|
DECODER_OPTION_LTR_MARKED_FRAME_NUM, // feedback frame num marked by current Frame
|
||||||
DECODER_OPTION_ERROR_CON_IDC, //not finished yet, indicate decoder error concealment status, in progress
|
DECODER_OPTION_ERROR_CON_IDC, //not finished yet, indicate decoder error concealment status, in progress
|
||||||
|
DECODER_OPTION_TRACE_LEVEL,
|
||||||
|
DECODER_OPTION_TRACE_CALLBACK, // a void (*)(void* context, int level, const char* message) function which receives log messages
|
||||||
|
DECODER_OPTION_TRACE_CALLBACK_CONTEXT,
|
||||||
|
|
||||||
} DECODER_OPTION;
|
} DECODER_OPTION;
|
||||||
|
|
||||||
@@ -226,6 +236,19 @@ typedef enum {
|
|||||||
LEVEL_5_2
|
LEVEL_5_2
|
||||||
} ELevelIdc;
|
} ELevelIdc;
|
||||||
|
|
||||||
|
|
||||||
|
enum {
|
||||||
|
WELS_LOG_QUIET = 0x00, // Quiet mode
|
||||||
|
WELS_LOG_ERROR = 1 << 0, // Error log iLevel
|
||||||
|
WELS_LOG_WARNING = 1 << 1, // Warning log iLevel
|
||||||
|
WELS_LOG_INFO = 1 << 2, // Information log iLevel
|
||||||
|
WELS_LOG_DEBUG = 1 << 3, // Debug log, critical algo log
|
||||||
|
WELS_LOG_DETAIL = 1 << 4, // per packet/frame log
|
||||||
|
WELS_LOG_RESV = 1 << 5, // Resversed log iLevel
|
||||||
|
WELS_LOG_LEVEL_COUNT = 6,
|
||||||
|
WELS_LOG_DEFAULT = WELS_LOG_DEBUG // Default log iLevel in Wels codec
|
||||||
|
};
|
||||||
|
|
||||||
typedef struct {
|
typedef struct {
|
||||||
SliceModeEnum uiSliceMode; //by default, uiSliceMode will be SM_SINGLE_SLICE
|
SliceModeEnum uiSliceMode; //by default, uiSliceMode will be SM_SINGLE_SLICE
|
||||||
SSliceArgument sSliceArgument;
|
SSliceArgument sSliceArgument;
|
||||||
@@ -342,24 +365,24 @@ typedef struct {
|
|||||||
unsigned char uiSpatialId;
|
unsigned char uiSpatialId;
|
||||||
unsigned char uiQualityId;
|
unsigned char uiQualityId;
|
||||||
|
|
||||||
unsigned char uiPriorityId; //ignore it currently
|
|
||||||
|
|
||||||
unsigned char uiLayerType;
|
unsigned char uiLayerType;
|
||||||
|
|
||||||
int iNalCount; // Count number of NAL coded already
|
int iNalCount; // Count number of NAL coded already
|
||||||
int iNalLengthInByte[MAX_NAL_UNITS_IN_LAYER]; // Length of NAL size in byte from 0 to iNalCount-1
|
int* pNalLengthInByte; // Length of NAL size in byte from 0 to iNalCount-1
|
||||||
unsigned char* pBsBuf; // Buffer of bitstream contained
|
unsigned char* pBsBuf; // Buffer of bitstream contained
|
||||||
} SLayerBSInfo, *PLayerBSInfo;
|
} SLayerBSInfo, *PLayerBSInfo;
|
||||||
|
|
||||||
|
|
||||||
typedef struct {
|
typedef struct {
|
||||||
int iTemporalId; // Temporal ID
|
int iTemporalId; // Temporal ID
|
||||||
unsigned char uiFrameType;
|
//The sub sequence layers are ordered hierarchically based on their dependency on each other so that any picture in a layer shall not be
|
||||||
|
//predicted from any picture on any higher layer.
|
||||||
|
int iSubSeqId; //refer to D.2.11 Sub-sequence information SEI message semantics
|
||||||
|
|
||||||
int iLayerNum;
|
int iLayerNum;
|
||||||
SLayerBSInfo sLayerInfo[MAX_LAYER_NUM_OF_FRAME];
|
SLayerBSInfo sLayerInfo[MAX_LAYER_NUM_OF_FRAME];
|
||||||
|
|
||||||
int eOutputFrameType;
|
EVideoFrameType eFrameType;
|
||||||
long long uiTimeStamp;
|
long long uiTimeStamp;
|
||||||
} SFrameBSInfo, *PFrameBSInfo;
|
} SFrameBSInfo, *PFrameBSInfo;
|
||||||
|
|
||||||
@@ -372,13 +395,29 @@ typedef struct Source_Picture_s {
|
|||||||
long long uiTimeStamp;
|
long long uiTimeStamp;
|
||||||
} SSourcePicture;
|
} SSourcePicture;
|
||||||
|
|
||||||
typedef struct Bitrate_Info_s {
|
typedef struct TagBitrateInfo {
|
||||||
LAYER_NUM iLayer;
|
LAYER_NUM iLayer;
|
||||||
int iBitrate; //the maximum bitrate
|
int iBitrate; //the maximum bitrate
|
||||||
} SBitrateInfo;
|
} SBitrateInfo;
|
||||||
|
|
||||||
typedef struct Dump_Layer_s {
|
typedef struct TagDumpLayer {
|
||||||
int iLayer;
|
int iLayer;
|
||||||
char* pFileName;
|
char* pFileName;
|
||||||
} SDumpLayer;
|
} SDumpLayer;
|
||||||
|
|
||||||
|
typedef struct TagProfileInfo {
|
||||||
|
int iLayer;
|
||||||
|
EProfileIdc uiProfileIdc; //the profile info
|
||||||
|
} SProfileInfo;
|
||||||
|
|
||||||
|
typedef struct TagLevelInfo {
|
||||||
|
int iLayer;
|
||||||
|
ELevelIdc uiLevelIdc; //the level info
|
||||||
|
} SLevelInfo;
|
||||||
|
|
||||||
|
typedef struct TagDeliveryStatus {
|
||||||
|
int iDropNum; //the number of video frames that are dropped continuously before delivery to encoder, which is used by screen content.
|
||||||
|
int iDropFrameType; // the frame type that is dropped
|
||||||
|
int iDropFrameSize; // the frame size that is dropped
|
||||||
|
} SDeliveryStatus;
|
||||||
#endif//WELS_VIDEO_CODEC_APPLICATION_DEFINITION_H__
|
#endif//WELS_VIDEO_CODEC_APPLICATION_DEFINITION_H__
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
android:versionName="1.0">
|
android:versionName="1.0">
|
||||||
<uses-sdk android:minSdkVersion="12"/>
|
<uses-sdk android:minSdkVersion="12"/>
|
||||||
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"></uses-permission>
|
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"></uses-permission>
|
||||||
<application android:icon="@drawable/icon" android:label="@string/app_name">
|
<application android:label="@string/app_name">
|
||||||
<activity android:name=".WelsDecTest"
|
<activity android:name=".WelsDecTest"
|
||||||
android:label="@string/app_name">
|
android:label="@string/app_name">
|
||||||
<intent-filter>
|
<intent-filter>
|
||||||
|
|||||||
@@ -1,20 +1,2 @@
|
|||||||
# debug/release, default is release
|
|
||||||
ifeq ($(OPTIM_debug),true)
|
|
||||||
APP_OPTIM := debug
|
|
||||||
else
|
|
||||||
APP_OPTIM := release
|
|
||||||
endif
|
|
||||||
|
|
||||||
# x86/armeabi-v7a/armeabi, default is armeabi-v7a
|
|
||||||
ifeq ($(ABI_x86),true)
|
|
||||||
APP_ABI := x86
|
|
||||||
else
|
|
||||||
ifeq ($(ABI_armeabi),true)
|
|
||||||
APP_ABI := armeabi
|
|
||||||
else
|
|
||||||
APP_ABI := armeabi-v7a
|
|
||||||
endif
|
|
||||||
endif
|
|
||||||
|
|
||||||
APP_STL := stlport_shared
|
APP_STL := stlport_shared
|
||||||
APP_PLATFORM := android-12
|
APP_PLATFORM := android-12
|
||||||
|
|||||||
@@ -4,7 +4,9 @@ LOCAL_PATH := $(call my-dir)
|
|||||||
include $(CLEAR_VARS)
|
include $(CLEAR_VARS)
|
||||||
LOCAL_MODULE := wels
|
LOCAL_MODULE := wels
|
||||||
LOCAL_SRC_FILES := ../../../../../libopenh264.so
|
LOCAL_SRC_FILES := ../../../../../libopenh264.so
|
||||||
|
ifneq (,$(wildcard $(LOCAL_PATH)/$(LOCAL_SRC_FILES)))
|
||||||
include $(PREBUILT_SHARED_LIBRARY)
|
include $(PREBUILT_SHARED_LIBRARY)
|
||||||
|
endif
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@@ -20,11 +22,11 @@ LOCAL_MODULE := welsdecdemo
|
|||||||
#
|
#
|
||||||
CODEC_PATH := ../../../../
|
CODEC_PATH := ../../../../
|
||||||
CONSOLE_DEC_PATH := ../../../../console/dec
|
CONSOLE_DEC_PATH := ../../../../console/dec
|
||||||
|
CONSOLE_COMMON_PATH := ../../../../console/common
|
||||||
LOCAL_SRC_FILES := \
|
LOCAL_SRC_FILES := \
|
||||||
$(CONSOLE_DEC_PATH)/src/h264dec.cpp \
|
$(CONSOLE_DEC_PATH)/src/h264dec.cpp \
|
||||||
$(CONSOLE_DEC_PATH)/src/read_config.cpp \
|
$(CONSOLE_COMMON_PATH)/src/read_config.cpp \
|
||||||
$(CONSOLE_DEC_PATH)/src/d3d9_utils.cpp \
|
$(CONSOLE_DEC_PATH)/src/d3d9_utils.cpp \
|
||||||
$(CODEC_PATH)/common/src/logging.cpp \
|
|
||||||
myjni.cpp
|
myjni.cpp
|
||||||
#
|
#
|
||||||
# Header Includes
|
# Header Includes
|
||||||
@@ -32,15 +34,12 @@ LOCAL_SRC_FILES := \
|
|||||||
LOCAL_C_INCLUDES := \
|
LOCAL_C_INCLUDES := \
|
||||||
$(LOCAL_PATH)/../../../../api/svc \
|
$(LOCAL_PATH)/../../../../api/svc \
|
||||||
$(LOCAL_PATH)/../../../../console/dec/inc \
|
$(LOCAL_PATH)/../../../../console/dec/inc \
|
||||||
|
$(LOCAL_PATH)/../../../../console/common/inc \
|
||||||
$(LOCAL_PATH)/../../../../common/inc
|
$(LOCAL_PATH)/../../../../common/inc
|
||||||
#
|
#
|
||||||
# Compile Flags and Link Libraries
|
# Compile Flags and Link Libraries
|
||||||
#
|
#
|
||||||
LOCAL_CFLAGS := -O3 -DANDROID_NDK
|
LOCAL_CFLAGS := -DANDROID_NDK
|
||||||
|
|
||||||
ifeq ($(TARGET_ARCH_ABI),armeabi-v7a)
|
|
||||||
LOCAL_ARM_MODE := arm
|
|
||||||
endif
|
|
||||||
|
|
||||||
LOCAL_LDLIBS := -llog
|
LOCAL_LDLIBS := -llog
|
||||||
LOCAL_SHARED_LIBRARIES := wels
|
LOCAL_SHARED_LIBRARIES := wels
|
||||||
|
|||||||
Binary file not shown.
|
Before Width: | Height: | Size: 4.0 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 1.7 KiB |
@@ -6,7 +6,7 @@
|
|||||||
<LinearLayout
|
<LinearLayout
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:orientation="horizontal">"
|
android:orientation="horizontal">
|
||||||
<Button
|
<Button
|
||||||
android:id="@+id/cfg"
|
android:id="@+id/cfg"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
android:versionName="1.0">
|
android:versionName="1.0">
|
||||||
<uses-sdk android:minSdkVersion="12"/>
|
<uses-sdk android:minSdkVersion="12"/>
|
||||||
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"></uses-permission>
|
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"></uses-permission>
|
||||||
<application android:icon="@drawable/icon" android:label="@string/app_name">
|
<application android:label="@string/app_name">
|
||||||
<activity android:name=".WelsEncTest"
|
<activity android:name=".WelsEncTest"
|
||||||
android:label="@string/app_name">
|
android:label="@string/app_name">
|
||||||
<intent-filter>
|
<intent-filter>
|
||||||
|
|||||||
@@ -1,20 +1,2 @@
|
|||||||
# debug/release, default is release
|
|
||||||
ifeq ($(OPTIM_debug),true)
|
|
||||||
APP_OPTIM := debug
|
|
||||||
else
|
|
||||||
APP_OPTIM := release
|
|
||||||
endif
|
|
||||||
|
|
||||||
# x86/armeabi-v7a/armeabi, default is armeabi-v7a
|
|
||||||
ifeq ($(ABI_x86),true)
|
|
||||||
APP_ABI := x86
|
|
||||||
else
|
|
||||||
ifeq ($(ABI_armeabi),true)
|
|
||||||
APP_ABI := armeabi
|
|
||||||
else
|
|
||||||
APP_ABI := armeabi-v7a
|
|
||||||
endif
|
|
||||||
endif
|
|
||||||
|
|
||||||
APP_STL := stlport_shared
|
APP_STL := stlport_shared
|
||||||
APP_PLATFORM := android-12
|
APP_PLATFORM := android-12
|
||||||
|
|||||||
@@ -1,10 +1,12 @@
|
|||||||
# Generate the libwelsdecdemo.so file
|
# Generate the libwelsencdemo.so file
|
||||||
LOCAL_PATH := $(call my-dir)
|
LOCAL_PATH := $(call my-dir)
|
||||||
|
|
||||||
include $(CLEAR_VARS)
|
include $(CLEAR_VARS)
|
||||||
LOCAL_MODULE := wels
|
LOCAL_MODULE := wels
|
||||||
LOCAL_SRC_FILES := ../../../../../libopenh264.so
|
LOCAL_SRC_FILES := ../../../../../libopenh264.so
|
||||||
|
ifneq (,$(wildcard $(LOCAL_PATH)/$(LOCAL_SRC_FILES)))
|
||||||
include $(PREBUILT_SHARED_LIBRARY)
|
include $(PREBUILT_SHARED_LIBRARY)
|
||||||
|
endif
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@@ -20,10 +22,10 @@ LOCAL_MODULE := welsencdemo
|
|||||||
#
|
#
|
||||||
CODEC_PATH := ../../../../
|
CODEC_PATH := ../../../../
|
||||||
CONSOLE_ENC_PATH := ../../../../console/enc
|
CONSOLE_ENC_PATH := ../../../../console/enc
|
||||||
|
CONSOLE_COMMON_PATH := ../../../../console/common
|
||||||
LOCAL_SRC_FILES := \
|
LOCAL_SRC_FILES := \
|
||||||
$(CONSOLE_ENC_PATH)/src/welsenc.cpp \
|
$(CONSOLE_ENC_PATH)/src/welsenc.cpp \
|
||||||
$(CONSOLE_ENC_PATH)/src/read_config.cpp \
|
$(CONSOLE_COMMON_PATH)/src/read_config.cpp \
|
||||||
$(CODEC_PATH)/common/src/logging.cpp \
|
|
||||||
myjni.cpp
|
myjni.cpp
|
||||||
|
|
||||||
#
|
#
|
||||||
@@ -32,6 +34,7 @@ LOCAL_SRC_FILES := \
|
|||||||
LOCAL_C_INCLUDES := \
|
LOCAL_C_INCLUDES := \
|
||||||
$(LOCAL_PATH)/../../../../api/svc \
|
$(LOCAL_PATH)/../../../../api/svc \
|
||||||
$(LOCAL_PATH)/../../../../console/enc/inc \
|
$(LOCAL_PATH)/../../../../console/enc/inc \
|
||||||
|
$(LOCAL_PATH)/../../../../console/common/inc \
|
||||||
$(LOCAL_PATH)/../../../../encoder/core/inc \
|
$(LOCAL_PATH)/../../../../encoder/core/inc \
|
||||||
$(LOCAL_PATH)/../../../../processing/interface \
|
$(LOCAL_PATH)/../../../../processing/interface \
|
||||||
$(LOCAL_PATH)/../../../../common/inc
|
$(LOCAL_PATH)/../../../../common/inc
|
||||||
@@ -40,11 +43,7 @@ LOCAL_C_INCLUDES := \
|
|||||||
#
|
#
|
||||||
# Compile Flags and Link Libraries
|
# Compile Flags and Link Libraries
|
||||||
#
|
#
|
||||||
LOCAL_CFLAGS := -O3 -DANDROID_NDK
|
LOCAL_CFLAGS := -DANDROID_NDK
|
||||||
|
|
||||||
ifeq ($(TARGET_ARCH_ABI),armeabi-v7a)
|
|
||||||
LOCAL_ARM_MODE := arm
|
|
||||||
endif
|
|
||||||
|
|
||||||
LOCAL_LDLIBS := -llog
|
LOCAL_LDLIBS := -llog
|
||||||
LOCAL_SHARED_LIBRARIES := wels
|
LOCAL_SHARED_LIBRARIES := wels
|
||||||
|
|||||||
Binary file not shown.
|
Before Width: | Height: | Size: 4.0 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 1.7 KiB |
@@ -6,7 +6,7 @@
|
|||||||
<LinearLayout
|
<LinearLayout
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:orientation="horizontal">"
|
android:orientation="horizontal">
|
||||||
<Button
|
<Button
|
||||||
android:id="@+id/cfg"
|
android:id="@+id/cfg"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
|
|||||||
@@ -14,33 +14,20 @@
|
|||||||
4C3406CD18D96EA600DFA14A /* cpu.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4C3406C418D96EA600DFA14A /* cpu.cpp */; };
|
4C3406CD18D96EA600DFA14A /* cpu.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4C3406C418D96EA600DFA14A /* cpu.cpp */; };
|
||||||
4C3406CE18D96EA600DFA14A /* crt_util_safe_x.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4C3406C518D96EA600DFA14A /* crt_util_safe_x.cpp */; };
|
4C3406CE18D96EA600DFA14A /* crt_util_safe_x.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4C3406C518D96EA600DFA14A /* crt_util_safe_x.cpp */; };
|
||||||
4C3406CF18D96EA600DFA14A /* deblocking_common.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4C3406C618D96EA600DFA14A /* deblocking_common.cpp */; };
|
4C3406CF18D96EA600DFA14A /* deblocking_common.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4C3406C618D96EA600DFA14A /* deblocking_common.cpp */; };
|
||||||
4C3406D018D96EA600DFA14A /* logging.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4C3406C718D96EA600DFA14A /* logging.cpp */; };
|
|
||||||
4C3406D118D96EA600DFA14A /* WelsThreadLib.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4C3406C818D96EA600DFA14A /* WelsThreadLib.cpp */; };
|
4C3406D118D96EA600DFA14A /* WelsThreadLib.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4C3406C818D96EA600DFA14A /* WelsThreadLib.cpp */; };
|
||||||
4CC61F0918FF6B4B00E56EAB /* copy_mb_neon.S in Sources */ = {isa = PBXBuildFile; fileRef = 4CC61F0818FF6B4B00E56EAB /* copy_mb_neon.S */; };
|
4CC61F0918FF6B4B00E56EAB /* copy_mb_neon.S in Sources */ = {isa = PBXBuildFile; fileRef = 4CC61F0818FF6B4B00E56EAB /* copy_mb_neon.S */; };
|
||||||
4CE443D918B722CD0017DF25 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 4CE443D818B722CD0017DF25 /* Foundation.framework */; };
|
4CE443D918B722CD0017DF25 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 4CE443D818B722CD0017DF25 /* Foundation.framework */; };
|
||||||
4CE443E718B722CD0017DF25 /* XCTest.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 4CE443E618B722CD0017DF25 /* XCTest.framework */; };
|
53C1C9BC193F0FB000404D8F /* expand_pic.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 53C1C9BB193F0FB000404D8F /* expand_pic.cpp */; };
|
||||||
4CE443E818B722CD0017DF25 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 4CE443D818B722CD0017DF25 /* Foundation.framework */; };
|
5BA8F2C019603F5F00011CE4 /* common_tables.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5BA8F2BF19603F5F00011CE4 /* common_tables.cpp */; };
|
||||||
4CE443EA18B722CD0017DF25 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 4CE443E918B722CD0017DF25 /* UIKit.framework */; };
|
|
||||||
4CE443ED18B722CD0017DF25 /* libcommon.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 4CE443D518B722CD0017DF25 /* libcommon.a */; };
|
|
||||||
4CE443F318B722CD0017DF25 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 4CE443F118B722CD0017DF25 /* InfoPlist.strings */; };
|
|
||||||
4CE443F518B722CD0017DF25 /* commonTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 4CE443F418B722CD0017DF25 /* commonTests.m */; };
|
|
||||||
F0B204F918FD23BF005DA23F /* copy_mb.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F0B204F818FD23BF005DA23F /* copy_mb.cpp */; };
|
F0B204F918FD23BF005DA23F /* copy_mb.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F0B204F818FD23BF005DA23F /* copy_mb.cpp */; };
|
||||||
F556A8241906673900E156A8 /* arm_arch64_common_macro.S in Sources */ = {isa = PBXBuildFile; fileRef = F556A8221906673900E156A8 /* arm_arch64_common_macro.S */; };
|
F556A8241906673900E156A8 /* arm_arch64_common_macro.S in Sources */ = {isa = PBXBuildFile; fileRef = F556A8221906673900E156A8 /* arm_arch64_common_macro.S */; };
|
||||||
F556A8251906673900E156A8 /* expand_picture_aarch64_neon.S in Sources */ = {isa = PBXBuildFile; fileRef = F556A8231906673900E156A8 /* expand_picture_aarch64_neon.S */; };
|
F556A8251906673900E156A8 /* expand_picture_aarch64_neon.S in Sources */ = {isa = PBXBuildFile; fileRef = F556A8231906673900E156A8 /* expand_picture_aarch64_neon.S */; };
|
||||||
|
F5AC94FF193EB7D800F58154 /* deblocking_aarch64_neon.S in Sources */ = {isa = PBXBuildFile; fileRef = F5AC94FE193EB7D800F58154 /* deblocking_aarch64_neon.S */; };
|
||||||
F5B8D82D190757290037849A /* mc_aarch64_neon.S in Sources */ = {isa = PBXBuildFile; fileRef = F5B8D82C190757290037849A /* mc_aarch64_neon.S */; };
|
F5B8D82D190757290037849A /* mc_aarch64_neon.S in Sources */ = {isa = PBXBuildFile; fileRef = F5B8D82C190757290037849A /* mc_aarch64_neon.S */; };
|
||||||
|
F5BB0BB8196BB5960072D50D /* copy_mb_aarch64_neon.S in Sources */ = {isa = PBXBuildFile; fileRef = F5BB0BB7196BB5960072D50D /* copy_mb_aarch64_neon.S */; };
|
||||||
FAABAA1818E9354A00D4186F /* sad_common.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FAABAA1718E9354A00D4186F /* sad_common.cpp */; };
|
FAABAA1818E9354A00D4186F /* sad_common.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FAABAA1718E9354A00D4186F /* sad_common.cpp */; };
|
||||||
/* End PBXBuildFile section */
|
/* End PBXBuildFile section */
|
||||||
|
|
||||||
/* Begin PBXContainerItemProxy section */
|
|
||||||
4CE443EB18B722CD0017DF25 /* PBXContainerItemProxy */ = {
|
|
||||||
isa = PBXContainerItemProxy;
|
|
||||||
containerPortal = 4CE443CD18B722CC0017DF25 /* Project object */;
|
|
||||||
proxyType = 1;
|
|
||||||
remoteGlobalIDString = 4CE443D418B722CD0017DF25;
|
|
||||||
remoteInfo = common;
|
|
||||||
};
|
|
||||||
/* End PBXContainerItemProxy section */
|
|
||||||
|
|
||||||
/* Begin PBXCopyFilesBuildPhase section */
|
/* Begin PBXCopyFilesBuildPhase section */
|
||||||
4CE443D318B722CD0017DF25 /* CopyFiles */ = {
|
4CE443D318B722CD0017DF25 /* CopyFiles */ = {
|
||||||
isa = PBXCopyFilesBuildPhase;
|
isa = PBXCopyFilesBuildPhase;
|
||||||
@@ -62,8 +49,6 @@
|
|||||||
4C3406B818D96EA600DFA14A /* cpu_core.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = cpu_core.h; sourceTree = "<group>"; };
|
4C3406B818D96EA600DFA14A /* cpu_core.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = cpu_core.h; sourceTree = "<group>"; };
|
||||||
4C3406B918D96EA600DFA14A /* crt_util_safe_x.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = crt_util_safe_x.h; sourceTree = "<group>"; };
|
4C3406B918D96EA600DFA14A /* crt_util_safe_x.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = crt_util_safe_x.h; sourceTree = "<group>"; };
|
||||||
4C3406BA18D96EA600DFA14A /* deblocking_common.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = deblocking_common.h; sourceTree = "<group>"; };
|
4C3406BA18D96EA600DFA14A /* deblocking_common.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = deblocking_common.h; sourceTree = "<group>"; };
|
||||||
4C3406BB18D96EA600DFA14A /* expand_picture_common.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = expand_picture_common.h; sourceTree = "<group>"; };
|
|
||||||
4C3406BC18D96EA600DFA14A /* logging.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = logging.h; sourceTree = "<group>"; };
|
|
||||||
4C3406BD18D96EA600DFA14A /* ls_defines.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ls_defines.h; sourceTree = "<group>"; };
|
4C3406BD18D96EA600DFA14A /* ls_defines.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ls_defines.h; sourceTree = "<group>"; };
|
||||||
4C3406BE18D96EA600DFA14A /* macros.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = macros.h; sourceTree = "<group>"; };
|
4C3406BE18D96EA600DFA14A /* macros.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = macros.h; sourceTree = "<group>"; };
|
||||||
4C3406BF18D96EA600DFA14A /* mc_common.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = mc_common.h; sourceTree = "<group>"; };
|
4C3406BF18D96EA600DFA14A /* mc_common.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = mc_common.h; sourceTree = "<group>"; };
|
||||||
@@ -73,22 +58,22 @@
|
|||||||
4C3406C418D96EA600DFA14A /* cpu.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = cpu.cpp; sourceTree = "<group>"; };
|
4C3406C418D96EA600DFA14A /* cpu.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = cpu.cpp; sourceTree = "<group>"; };
|
||||||
4C3406C518D96EA600DFA14A /* crt_util_safe_x.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = crt_util_safe_x.cpp; sourceTree = "<group>"; };
|
4C3406C518D96EA600DFA14A /* crt_util_safe_x.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = crt_util_safe_x.cpp; sourceTree = "<group>"; };
|
||||||
4C3406C618D96EA600DFA14A /* deblocking_common.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = deblocking_common.cpp; sourceTree = "<group>"; };
|
4C3406C618D96EA600DFA14A /* deblocking_common.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = deblocking_common.cpp; sourceTree = "<group>"; };
|
||||||
4C3406C718D96EA600DFA14A /* logging.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = logging.cpp; sourceTree = "<group>"; };
|
|
||||||
4C3406C818D96EA600DFA14A /* WelsThreadLib.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WelsThreadLib.cpp; sourceTree = "<group>"; };
|
4C3406C818D96EA600DFA14A /* WelsThreadLib.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WelsThreadLib.cpp; sourceTree = "<group>"; };
|
||||||
4CC61F0818FF6B4B00E56EAB /* copy_mb_neon.S */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.asm; path = copy_mb_neon.S; sourceTree = "<group>"; };
|
4CC61F0818FF6B4B00E56EAB /* copy_mb_neon.S */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.asm; path = copy_mb_neon.S; sourceTree = "<group>"; };
|
||||||
4CE443D518B722CD0017DF25 /* libcommon.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libcommon.a; sourceTree = BUILT_PRODUCTS_DIR; };
|
4CE443D518B722CD0017DF25 /* libcommon.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libcommon.a; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||||
4CE443D818B722CD0017DF25 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; };
|
4CE443D818B722CD0017DF25 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; };
|
||||||
4CE443E518B722CD0017DF25 /* commonTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = commonTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };
|
|
||||||
4CE443E618B722CD0017DF25 /* XCTest.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = XCTest.framework; path = Library/Frameworks/XCTest.framework; sourceTree = DEVELOPER_DIR; };
|
|
||||||
4CE443E918B722CD0017DF25 /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = Library/Frameworks/UIKit.framework; sourceTree = DEVELOPER_DIR; };
|
4CE443E918B722CD0017DF25 /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = Library/Frameworks/UIKit.framework; sourceTree = DEVELOPER_DIR; };
|
||||||
4CE443F018B722CD0017DF25 /* commonTests-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "commonTests-Info.plist"; sourceTree = "<group>"; };
|
53C1C9BA193F0F9E00404D8F /* expand_pic.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = expand_pic.h; sourceTree = "<group>"; };
|
||||||
4CE443F218B722CD0017DF25 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/InfoPlist.strings; sourceTree = "<group>"; };
|
53C1C9BB193F0FB000404D8F /* expand_pic.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = expand_pic.cpp; sourceTree = "<group>"; };
|
||||||
4CE443F418B722CD0017DF25 /* commonTests.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = commonTests.m; sourceTree = "<group>"; };
|
5BA8F2BE19603F3500011CE4 /* wels_common_defs.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = wels_common_defs.h; sourceTree = "<group>"; };
|
||||||
|
5BA8F2BF19603F5F00011CE4 /* common_tables.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = common_tables.cpp; sourceTree = "<group>"; };
|
||||||
F0B204F718FD23B6005DA23F /* copy_mb.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = copy_mb.h; sourceTree = "<group>"; };
|
F0B204F718FD23B6005DA23F /* copy_mb.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = copy_mb.h; sourceTree = "<group>"; };
|
||||||
F0B204F818FD23BF005DA23F /* copy_mb.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = copy_mb.cpp; sourceTree = "<group>"; };
|
F0B204F818FD23BF005DA23F /* copy_mb.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = copy_mb.cpp; sourceTree = "<group>"; };
|
||||||
F556A8221906673900E156A8 /* arm_arch64_common_macro.S */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.asm; name = arm_arch64_common_macro.S; path = arm64/arm_arch64_common_macro.S; sourceTree = "<group>"; };
|
F556A8221906673900E156A8 /* arm_arch64_common_macro.S */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.asm; name = arm_arch64_common_macro.S; path = arm64/arm_arch64_common_macro.S; sourceTree = "<group>"; };
|
||||||
F556A8231906673900E156A8 /* expand_picture_aarch64_neon.S */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.asm; name = expand_picture_aarch64_neon.S; path = arm64/expand_picture_aarch64_neon.S; sourceTree = "<group>"; };
|
F556A8231906673900E156A8 /* expand_picture_aarch64_neon.S */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.asm; name = expand_picture_aarch64_neon.S; path = arm64/expand_picture_aarch64_neon.S; sourceTree = "<group>"; };
|
||||||
|
F5AC94FE193EB7D800F58154 /* deblocking_aarch64_neon.S */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.asm; name = deblocking_aarch64_neon.S; path = arm64/deblocking_aarch64_neon.S; sourceTree = "<group>"; };
|
||||||
F5B8D82C190757290037849A /* mc_aarch64_neon.S */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.asm; name = mc_aarch64_neon.S; path = arm64/mc_aarch64_neon.S; sourceTree = "<group>"; };
|
F5B8D82C190757290037849A /* mc_aarch64_neon.S */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.asm; name = mc_aarch64_neon.S; path = arm64/mc_aarch64_neon.S; sourceTree = "<group>"; };
|
||||||
|
F5BB0BB7196BB5960072D50D /* copy_mb_aarch64_neon.S */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.asm; name = copy_mb_aarch64_neon.S; path = arm64/copy_mb_aarch64_neon.S; sourceTree = "<group>"; };
|
||||||
FAABAA1618E9353F00D4186F /* sad_common.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sad_common.h; sourceTree = "<group>"; };
|
FAABAA1618E9353F00D4186F /* sad_common.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sad_common.h; sourceTree = "<group>"; };
|
||||||
FAABAA1718E9354A00D4186F /* sad_common.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sad_common.cpp; sourceTree = "<group>"; };
|
FAABAA1718E9354A00D4186F /* sad_common.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sad_common.cpp; sourceTree = "<group>"; };
|
||||||
/* End PBXFileReference section */
|
/* End PBXFileReference section */
|
||||||
@@ -102,17 +87,6 @@
|
|||||||
);
|
);
|
||||||
runOnlyForDeploymentPostprocessing = 0;
|
runOnlyForDeploymentPostprocessing = 0;
|
||||||
};
|
};
|
||||||
4CE443E218B722CD0017DF25 /* Frameworks */ = {
|
|
||||||
isa = PBXFrameworksBuildPhase;
|
|
||||||
buildActionMask = 2147483647;
|
|
||||||
files = (
|
|
||||||
4CE443E718B722CD0017DF25 /* XCTest.framework in Frameworks */,
|
|
||||||
4CE443EA18B722CD0017DF25 /* UIKit.framework in Frameworks */,
|
|
||||||
4CE443ED18B722CD0017DF25 /* libcommon.a in Frameworks */,
|
|
||||||
4CE443E818B722CD0017DF25 /* Foundation.framework in Frameworks */,
|
|
||||||
);
|
|
||||||
runOnlyForDeploymentPostprocessing = 0;
|
|
||||||
};
|
|
||||||
/* End PBXFrameworksBuildPhase section */
|
/* End PBXFrameworksBuildPhase section */
|
||||||
|
|
||||||
/* Begin PBXGroup section */
|
/* Begin PBXGroup section */
|
||||||
@@ -136,14 +110,14 @@
|
|||||||
4C3406B718D96EA600DFA14A /* cpu.h */,
|
4C3406B718D96EA600DFA14A /* cpu.h */,
|
||||||
4C3406B818D96EA600DFA14A /* cpu_core.h */,
|
4C3406B818D96EA600DFA14A /* cpu_core.h */,
|
||||||
4C3406B918D96EA600DFA14A /* crt_util_safe_x.h */,
|
4C3406B918D96EA600DFA14A /* crt_util_safe_x.h */,
|
||||||
|
53C1C9BA193F0F9E00404D8F /* expand_pic.h */,
|
||||||
4C3406BA18D96EA600DFA14A /* deblocking_common.h */,
|
4C3406BA18D96EA600DFA14A /* deblocking_common.h */,
|
||||||
4C3406BB18D96EA600DFA14A /* expand_picture_common.h */,
|
|
||||||
4C3406BC18D96EA600DFA14A /* logging.h */,
|
|
||||||
4C3406BD18D96EA600DFA14A /* ls_defines.h */,
|
4C3406BD18D96EA600DFA14A /* ls_defines.h */,
|
||||||
4C3406BE18D96EA600DFA14A /* macros.h */,
|
4C3406BE18D96EA600DFA14A /* macros.h */,
|
||||||
4C3406BF18D96EA600DFA14A /* mc_common.h */,
|
4C3406BF18D96EA600DFA14A /* mc_common.h */,
|
||||||
4C3406C018D96EA600DFA14A /* measure_time.h */,
|
4C3406C018D96EA600DFA14A /* measure_time.h */,
|
||||||
4C3406C118D96EA600DFA14A /* typedefs.h */,
|
4C3406C118D96EA600DFA14A /* typedefs.h */,
|
||||||
|
5BA8F2BE19603F3500011CE4 /* wels_common_defs.h */,
|
||||||
4C3406C218D96EA600DFA14A /* WelsThreadLib.h */,
|
4C3406C218D96EA600DFA14A /* WelsThreadLib.h */,
|
||||||
);
|
);
|
||||||
path = inc;
|
path = inc;
|
||||||
@@ -152,12 +126,13 @@
|
|||||||
4C3406C318D96EA600DFA14A /* src */ = {
|
4C3406C318D96EA600DFA14A /* src */ = {
|
||||||
isa = PBXGroup;
|
isa = PBXGroup;
|
||||||
children = (
|
children = (
|
||||||
|
5BA8F2BF19603F5F00011CE4 /* common_tables.cpp */,
|
||||||
F0B204F818FD23BF005DA23F /* copy_mb.cpp */,
|
F0B204F818FD23BF005DA23F /* copy_mb.cpp */,
|
||||||
FAABAA1718E9354A00D4186F /* sad_common.cpp */,
|
FAABAA1718E9354A00D4186F /* sad_common.cpp */,
|
||||||
4C3406C418D96EA600DFA14A /* cpu.cpp */,
|
4C3406C418D96EA600DFA14A /* cpu.cpp */,
|
||||||
4C3406C518D96EA600DFA14A /* crt_util_safe_x.cpp */,
|
4C3406C518D96EA600DFA14A /* crt_util_safe_x.cpp */,
|
||||||
|
53C1C9BB193F0FB000404D8F /* expand_pic.cpp */,
|
||||||
4C3406C618D96EA600DFA14A /* deblocking_common.cpp */,
|
4C3406C618D96EA600DFA14A /* deblocking_common.cpp */,
|
||||||
4C3406C718D96EA600DFA14A /* logging.cpp */,
|
|
||||||
4C3406C818D96EA600DFA14A /* WelsThreadLib.cpp */,
|
4C3406C818D96EA600DFA14A /* WelsThreadLib.cpp */,
|
||||||
);
|
);
|
||||||
path = src;
|
path = src;
|
||||||
@@ -167,7 +142,6 @@
|
|||||||
isa = PBXGroup;
|
isa = PBXGroup;
|
||||||
children = (
|
children = (
|
||||||
4CE4472F18BC61650017DF25 /* common */,
|
4CE4472F18BC61650017DF25 /* common */,
|
||||||
4CE443EE18B722CD0017DF25 /* commonTests */,
|
|
||||||
4CE443D718B722CD0017DF25 /* Frameworks */,
|
4CE443D718B722CD0017DF25 /* Frameworks */,
|
||||||
4CE443D618B722CD0017DF25 /* Products */,
|
4CE443D618B722CD0017DF25 /* Products */,
|
||||||
);
|
);
|
||||||
@@ -177,7 +151,6 @@
|
|||||||
isa = PBXGroup;
|
isa = PBXGroup;
|
||||||
children = (
|
children = (
|
||||||
4CE443D518B722CD0017DF25 /* libcommon.a */,
|
4CE443D518B722CD0017DF25 /* libcommon.a */,
|
||||||
4CE443E518B722CD0017DF25 /* commonTests.xctest */,
|
|
||||||
);
|
);
|
||||||
name = Products;
|
name = Products;
|
||||||
sourceTree = "<group>";
|
sourceTree = "<group>";
|
||||||
@@ -186,30 +159,11 @@
|
|||||||
isa = PBXGroup;
|
isa = PBXGroup;
|
||||||
children = (
|
children = (
|
||||||
4CE443D818B722CD0017DF25 /* Foundation.framework */,
|
4CE443D818B722CD0017DF25 /* Foundation.framework */,
|
||||||
4CE443E618B722CD0017DF25 /* XCTest.framework */,
|
|
||||||
4CE443E918B722CD0017DF25 /* UIKit.framework */,
|
4CE443E918B722CD0017DF25 /* UIKit.framework */,
|
||||||
);
|
);
|
||||||
name = Frameworks;
|
name = Frameworks;
|
||||||
sourceTree = "<group>";
|
sourceTree = "<group>";
|
||||||
};
|
};
|
||||||
4CE443EE18B722CD0017DF25 /* commonTests */ = {
|
|
||||||
isa = PBXGroup;
|
|
||||||
children = (
|
|
||||||
4CE443F418B722CD0017DF25 /* commonTests.m */,
|
|
||||||
4CE443EF18B722CD0017DF25 /* Supporting Files */,
|
|
||||||
);
|
|
||||||
path = commonTests;
|
|
||||||
sourceTree = "<group>";
|
|
||||||
};
|
|
||||||
4CE443EF18B722CD0017DF25 /* Supporting Files */ = {
|
|
||||||
isa = PBXGroup;
|
|
||||||
children = (
|
|
||||||
4CE443F018B722CD0017DF25 /* commonTests-Info.plist */,
|
|
||||||
4CE443F118B722CD0017DF25 /* InfoPlist.strings */,
|
|
||||||
);
|
|
||||||
name = "Supporting Files";
|
|
||||||
sourceTree = "<group>";
|
|
||||||
};
|
|
||||||
4CE4472F18BC61650017DF25 /* common */ = {
|
4CE4472F18BC61650017DF25 /* common */ = {
|
||||||
isa = PBXGroup;
|
isa = PBXGroup;
|
||||||
children = (
|
children = (
|
||||||
@@ -225,6 +179,8 @@
|
|||||||
F556A81D1906669F00E156A8 /* arm64 */ = {
|
F556A81D1906669F00E156A8 /* arm64 */ = {
|
||||||
isa = PBXGroup;
|
isa = PBXGroup;
|
||||||
children = (
|
children = (
|
||||||
|
F5BB0BB7196BB5960072D50D /* copy_mb_aarch64_neon.S */,
|
||||||
|
F5AC94FE193EB7D800F58154 /* deblocking_aarch64_neon.S */,
|
||||||
F5B8D82C190757290037849A /* mc_aarch64_neon.S */,
|
F5B8D82C190757290037849A /* mc_aarch64_neon.S */,
|
||||||
F556A8221906673900E156A8 /* arm_arch64_common_macro.S */,
|
F556A8221906673900E156A8 /* arm_arch64_common_macro.S */,
|
||||||
F556A8231906673900E156A8 /* expand_picture_aarch64_neon.S */,
|
F556A8231906673900E156A8 /* expand_picture_aarch64_neon.S */,
|
||||||
@@ -252,31 +208,13 @@
|
|||||||
productReference = 4CE443D518B722CD0017DF25 /* libcommon.a */;
|
productReference = 4CE443D518B722CD0017DF25 /* libcommon.a */;
|
||||||
productType = "com.apple.product-type.library.static";
|
productType = "com.apple.product-type.library.static";
|
||||||
};
|
};
|
||||||
4CE443E418B722CD0017DF25 /* commonTests */ = {
|
|
||||||
isa = PBXNativeTarget;
|
|
||||||
buildConfigurationList = 4CE443FB18B722CD0017DF25 /* Build configuration list for PBXNativeTarget "commonTests" */;
|
|
||||||
buildPhases = (
|
|
||||||
4CE443E118B722CD0017DF25 /* Sources */,
|
|
||||||
4CE443E218B722CD0017DF25 /* Frameworks */,
|
|
||||||
4CE443E318B722CD0017DF25 /* Resources */,
|
|
||||||
);
|
|
||||||
buildRules = (
|
|
||||||
);
|
|
||||||
dependencies = (
|
|
||||||
4CE443EC18B722CD0017DF25 /* PBXTargetDependency */,
|
|
||||||
);
|
|
||||||
name = commonTests;
|
|
||||||
productName = commonTests;
|
|
||||||
productReference = 4CE443E518B722CD0017DF25 /* commonTests.xctest */;
|
|
||||||
productType = "com.apple.product-type.bundle.unit-test";
|
|
||||||
};
|
|
||||||
/* End PBXNativeTarget section */
|
/* End PBXNativeTarget section */
|
||||||
|
|
||||||
/* Begin PBXProject section */
|
/* Begin PBXProject section */
|
||||||
4CE443CD18B722CC0017DF25 /* Project object */ = {
|
4CE443CD18B722CC0017DF25 /* Project object */ = {
|
||||||
isa = PBXProject;
|
isa = PBXProject;
|
||||||
attributes = {
|
attributes = {
|
||||||
LastUpgradeCheck = 0500;
|
LastUpgradeCheck = 0510;
|
||||||
ORGANIZATIONNAME = video;
|
ORGANIZATIONNAME = video;
|
||||||
};
|
};
|
||||||
buildConfigurationList = 4CE443D018B722CC0017DF25 /* Build configuration list for PBXProject "common" */;
|
buildConfigurationList = 4CE443D018B722CC0017DF25 /* Build configuration list for PBXProject "common" */;
|
||||||
@@ -292,22 +230,10 @@
|
|||||||
projectRoot = "";
|
projectRoot = "";
|
||||||
targets = (
|
targets = (
|
||||||
4CE443D418B722CD0017DF25 /* common */,
|
4CE443D418B722CD0017DF25 /* common */,
|
||||||
4CE443E418B722CD0017DF25 /* commonTests */,
|
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
/* End PBXProject section */
|
/* End PBXProject section */
|
||||||
|
|
||||||
/* Begin PBXResourcesBuildPhase section */
|
|
||||||
4CE443E318B722CD0017DF25 /* Resources */ = {
|
|
||||||
isa = PBXResourcesBuildPhase;
|
|
||||||
buildActionMask = 2147483647;
|
|
||||||
files = (
|
|
||||||
4CE443F318B722CD0017DF25 /* InfoPlist.strings in Resources */,
|
|
||||||
);
|
|
||||||
runOnlyForDeploymentPostprocessing = 0;
|
|
||||||
};
|
|
||||||
/* End PBXResourcesBuildPhase section */
|
|
||||||
|
|
||||||
/* Begin PBXSourcesBuildPhase section */
|
/* Begin PBXSourcesBuildPhase section */
|
||||||
4CE443D118B722CD0017DF25 /* Sources */ = {
|
4CE443D118B722CD0017DF25 /* Sources */ = {
|
||||||
isa = PBXSourcesBuildPhase;
|
isa = PBXSourcesBuildPhase;
|
||||||
@@ -316,13 +242,16 @@
|
|||||||
F5B8D82D190757290037849A /* mc_aarch64_neon.S in Sources */,
|
F5B8D82D190757290037849A /* mc_aarch64_neon.S in Sources */,
|
||||||
4C3406C918D96EA600DFA14A /* arm_arch_common_macro.S in Sources */,
|
4C3406C918D96EA600DFA14A /* arm_arch_common_macro.S in Sources */,
|
||||||
F556A8241906673900E156A8 /* arm_arch64_common_macro.S in Sources */,
|
F556A8241906673900E156A8 /* arm_arch64_common_macro.S in Sources */,
|
||||||
|
F5AC94FF193EB7D800F58154 /* deblocking_aarch64_neon.S in Sources */,
|
||||||
4C3406CE18D96EA600DFA14A /* crt_util_safe_x.cpp in Sources */,
|
4C3406CE18D96EA600DFA14A /* crt_util_safe_x.cpp in Sources */,
|
||||||
4C3406CF18D96EA600DFA14A /* deblocking_common.cpp in Sources */,
|
4C3406CF18D96EA600DFA14A /* deblocking_common.cpp in Sources */,
|
||||||
4C3406D018D96EA600DFA14A /* logging.cpp in Sources */,
|
5BA8F2C019603F5F00011CE4 /* common_tables.cpp in Sources */,
|
||||||
4C3406D118D96EA600DFA14A /* WelsThreadLib.cpp in Sources */,
|
4C3406D118D96EA600DFA14A /* WelsThreadLib.cpp in Sources */,
|
||||||
4C3406CC18D96EA600DFA14A /* mc_neon.S in Sources */,
|
4C3406CC18D96EA600DFA14A /* mc_neon.S in Sources */,
|
||||||
|
F5BB0BB8196BB5960072D50D /* copy_mb_aarch64_neon.S in Sources */,
|
||||||
4C3406CB18D96EA600DFA14A /* expand_picture_neon.S in Sources */,
|
4C3406CB18D96EA600DFA14A /* expand_picture_neon.S in Sources */,
|
||||||
4CC61F0918FF6B4B00E56EAB /* copy_mb_neon.S in Sources */,
|
4CC61F0918FF6B4B00E56EAB /* copy_mb_neon.S in Sources */,
|
||||||
|
53C1C9BC193F0FB000404D8F /* expand_pic.cpp in Sources */,
|
||||||
4C3406CD18D96EA600DFA14A /* cpu.cpp in Sources */,
|
4C3406CD18D96EA600DFA14A /* cpu.cpp in Sources */,
|
||||||
F556A8251906673900E156A8 /* expand_picture_aarch64_neon.S in Sources */,
|
F556A8251906673900E156A8 /* expand_picture_aarch64_neon.S in Sources */,
|
||||||
4C3406CA18D96EA600DFA14A /* deblocking_neon.S in Sources */,
|
4C3406CA18D96EA600DFA14A /* deblocking_neon.S in Sources */,
|
||||||
@@ -331,41 +260,13 @@
|
|||||||
);
|
);
|
||||||
runOnlyForDeploymentPostprocessing = 0;
|
runOnlyForDeploymentPostprocessing = 0;
|
||||||
};
|
};
|
||||||
4CE443E118B722CD0017DF25 /* Sources */ = {
|
|
||||||
isa = PBXSourcesBuildPhase;
|
|
||||||
buildActionMask = 2147483647;
|
|
||||||
files = (
|
|
||||||
4CE443F518B722CD0017DF25 /* commonTests.m in Sources */,
|
|
||||||
);
|
|
||||||
runOnlyForDeploymentPostprocessing = 0;
|
|
||||||
};
|
|
||||||
/* End PBXSourcesBuildPhase section */
|
/* End PBXSourcesBuildPhase section */
|
||||||
|
|
||||||
/* Begin PBXTargetDependency section */
|
|
||||||
4CE443EC18B722CD0017DF25 /* PBXTargetDependency */ = {
|
|
||||||
isa = PBXTargetDependency;
|
|
||||||
target = 4CE443D418B722CD0017DF25 /* common */;
|
|
||||||
targetProxy = 4CE443EB18B722CD0017DF25 /* PBXContainerItemProxy */;
|
|
||||||
};
|
|
||||||
/* End PBXTargetDependency section */
|
|
||||||
|
|
||||||
/* Begin PBXVariantGroup section */
|
|
||||||
4CE443F118B722CD0017DF25 /* InfoPlist.strings */ = {
|
|
||||||
isa = PBXVariantGroup;
|
|
||||||
children = (
|
|
||||||
4CE443F218B722CD0017DF25 /* en */,
|
|
||||||
);
|
|
||||||
name = InfoPlist.strings;
|
|
||||||
sourceTree = "<group>";
|
|
||||||
};
|
|
||||||
/* End PBXVariantGroup section */
|
|
||||||
|
|
||||||
/* Begin XCBuildConfiguration section */
|
/* Begin XCBuildConfiguration section */
|
||||||
4CE443F618B722CD0017DF25 /* Debug */ = {
|
4CE443F618B722CD0017DF25 /* Debug */ = {
|
||||||
isa = XCBuildConfiguration;
|
isa = XCBuildConfiguration;
|
||||||
buildSettings = {
|
buildSettings = {
|
||||||
ALWAYS_SEARCH_USER_PATHS = NO;
|
ALWAYS_SEARCH_USER_PATHS = NO;
|
||||||
ARCHS = "$(ARCHS_STANDARD_INCLUDING_64_BIT)";
|
|
||||||
CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
|
CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
|
||||||
CLANG_CXX_LIBRARY = "libc++";
|
CLANG_CXX_LIBRARY = "libc++";
|
||||||
CLANG_ENABLE_MODULES = YES;
|
CLANG_ENABLE_MODULES = YES;
|
||||||
@@ -403,7 +304,6 @@
|
|||||||
isa = XCBuildConfiguration;
|
isa = XCBuildConfiguration;
|
||||||
buildSettings = {
|
buildSettings = {
|
||||||
ALWAYS_SEARCH_USER_PATHS = NO;
|
ALWAYS_SEARCH_USER_PATHS = NO;
|
||||||
ARCHS = "$(ARCHS_STANDARD_INCLUDING_64_BIT)";
|
|
||||||
CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
|
CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
|
||||||
CLANG_CXX_LIBRARY = "libc++";
|
CLANG_CXX_LIBRARY = "libc++";
|
||||||
CLANG_ENABLE_MODULES = YES;
|
CLANG_ENABLE_MODULES = YES;
|
||||||
@@ -434,7 +334,6 @@
|
|||||||
4CE443F918B722CD0017DF25 /* Debug */ = {
|
4CE443F918B722CD0017DF25 /* Debug */ = {
|
||||||
isa = XCBuildConfiguration;
|
isa = XCBuildConfiguration;
|
||||||
buildSettings = {
|
buildSettings = {
|
||||||
ARCHS = "$(ARCHS_STANDARD)";
|
|
||||||
CLANG_CXX_LANGUAGE_STANDARD = "compiler-default";
|
CLANG_CXX_LANGUAGE_STANDARD = "compiler-default";
|
||||||
CLANG_CXX_LIBRARY = "compiler-default";
|
CLANG_CXX_LIBRARY = "compiler-default";
|
||||||
CODE_SIGN_IDENTITY = "iPhone Developer";
|
CODE_SIGN_IDENTITY = "iPhone Developer";
|
||||||
@@ -466,7 +365,6 @@
|
|||||||
4CE443FA18B722CD0017DF25 /* Release */ = {
|
4CE443FA18B722CD0017DF25 /* Release */ = {
|
||||||
isa = XCBuildConfiguration;
|
isa = XCBuildConfiguration;
|
||||||
buildSettings = {
|
buildSettings = {
|
||||||
ARCHS = "$(ARCHS_STANDARD)";
|
|
||||||
CLANG_CXX_LANGUAGE_STANDARD = "compiler-default";
|
CLANG_CXX_LANGUAGE_STANDARD = "compiler-default";
|
||||||
CLANG_CXX_LIBRARY = "compiler-default";
|
CLANG_CXX_LIBRARY = "compiler-default";
|
||||||
CODE_SIGN_IDENTITY = "iPhone Developer";
|
CODE_SIGN_IDENTITY = "iPhone Developer";
|
||||||
@@ -492,44 +390,6 @@
|
|||||||
};
|
};
|
||||||
name = Release;
|
name = Release;
|
||||||
};
|
};
|
||||||
4CE443FC18B722CD0017DF25 /* Debug */ = {
|
|
||||||
isa = XCBuildConfiguration;
|
|
||||||
buildSettings = {
|
|
||||||
ARCHS = "$(ARCHS_STANDARD_INCLUDING_64_BIT)";
|
|
||||||
FRAMEWORK_SEARCH_PATHS = (
|
|
||||||
"$(SDKROOT)/Developer/Library/Frameworks",
|
|
||||||
"$(inherited)",
|
|
||||||
"$(DEVELOPER_FRAMEWORKS_DIR)",
|
|
||||||
);
|
|
||||||
GCC_PRECOMPILE_PREFIX_HEADER = YES;
|
|
||||||
GCC_PREFIX_HEADER = "common/common-Prefix.pch";
|
|
||||||
GCC_PREPROCESSOR_DEFINITIONS = (
|
|
||||||
"DEBUG=1",
|
|
||||||
"$(inherited)",
|
|
||||||
);
|
|
||||||
INFOPLIST_FILE = "commonTests/commonTests-Info.plist";
|
|
||||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
|
||||||
WRAPPER_EXTENSION = xctest;
|
|
||||||
};
|
|
||||||
name = Debug;
|
|
||||||
};
|
|
||||||
4CE443FD18B722CD0017DF25 /* Release */ = {
|
|
||||||
isa = XCBuildConfiguration;
|
|
||||||
buildSettings = {
|
|
||||||
ARCHS = "$(ARCHS_STANDARD_INCLUDING_64_BIT)";
|
|
||||||
FRAMEWORK_SEARCH_PATHS = (
|
|
||||||
"$(SDKROOT)/Developer/Library/Frameworks",
|
|
||||||
"$(inherited)",
|
|
||||||
"$(DEVELOPER_FRAMEWORKS_DIR)",
|
|
||||||
);
|
|
||||||
GCC_PRECOMPILE_PREFIX_HEADER = YES;
|
|
||||||
GCC_PREFIX_HEADER = "common/common-Prefix.pch";
|
|
||||||
INFOPLIST_FILE = "commonTests/commonTests-Info.plist";
|
|
||||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
|
||||||
WRAPPER_EXTENSION = xctest;
|
|
||||||
};
|
|
||||||
name = Release;
|
|
||||||
};
|
|
||||||
/* End XCBuildConfiguration section */
|
/* End XCBuildConfiguration section */
|
||||||
|
|
||||||
/* Begin XCConfigurationList section */
|
/* Begin XCConfigurationList section */
|
||||||
@@ -551,15 +411,6 @@
|
|||||||
defaultConfigurationIsVisible = 0;
|
defaultConfigurationIsVisible = 0;
|
||||||
defaultConfigurationName = Release;
|
defaultConfigurationName = Release;
|
||||||
};
|
};
|
||||||
4CE443FB18B722CD0017DF25 /* Build configuration list for PBXNativeTarget "commonTests" */ = {
|
|
||||||
isa = XCConfigurationList;
|
|
||||||
buildConfigurations = (
|
|
||||||
4CE443FC18B722CD0017DF25 /* Debug */,
|
|
||||||
4CE443FD18B722CD0017DF25 /* Release */,
|
|
||||||
);
|
|
||||||
defaultConfigurationIsVisible = 0;
|
|
||||||
defaultConfigurationName = Release;
|
|
||||||
};
|
|
||||||
/* End XCConfigurationList section */
|
/* End XCConfigurationList section */
|
||||||
};
|
};
|
||||||
rootObject = 4CE443CD18B722CC0017DF25 /* Project object */;
|
rootObject = 4CE443CD18B722CC0017DF25 /* Project object */;
|
||||||
|
|||||||
@@ -1,22 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
|
||||||
<plist version="1.0">
|
|
||||||
<dict>
|
|
||||||
<key>CFBundleDevelopmentRegion</key>
|
|
||||||
<string>en</string>
|
|
||||||
<key>CFBundleExecutable</key>
|
|
||||||
<string>${EXECUTABLE_NAME}</string>
|
|
||||||
<key>CFBundleIdentifier</key>
|
|
||||||
<string>cisco.${PRODUCT_NAME:rfc1034identifier}</string>
|
|
||||||
<key>CFBundleInfoDictionaryVersion</key>
|
|
||||||
<string>6.0</string>
|
|
||||||
<key>CFBundlePackageType</key>
|
|
||||||
<string>BNDL</string>
|
|
||||||
<key>CFBundleShortVersionString</key>
|
|
||||||
<string>1.0</string>
|
|
||||||
<key>CFBundleSignature</key>
|
|
||||||
<string>????</string>
|
|
||||||
<key>CFBundleVersion</key>
|
|
||||||
<string>1</string>
|
|
||||||
</dict>
|
|
||||||
</plist>
|
|
||||||
@@ -1,58 +0,0 @@
|
|||||||
/*!
|
|
||||||
* \copy
|
|
||||||
* Copyright (c) 2013, Cisco Systems
|
|
||||||
* All rights reserved.
|
|
||||||
*
|
|
||||||
* Redistribution and use in source and binary forms, with or without
|
|
||||||
* modification, are permitted provided that the following conditions
|
|
||||||
* are met:
|
|
||||||
*
|
|
||||||
* * Redistributions of source code must retain the above copyright
|
|
||||||
* notice, this list of conditions and the following disclaimer.
|
|
||||||
*
|
|
||||||
* * Redistributions in binary form must reproduce the above copyright
|
|
||||||
* notice, this list of conditions and the following disclaimer in
|
|
||||||
* the documentation and/or other materials provided with the
|
|
||||||
* distribution.
|
|
||||||
*
|
|
||||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
|
||||||
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
|
||||||
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
|
|
||||||
* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
|
|
||||||
* COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
|
|
||||||
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
|
|
||||||
* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
|
||||||
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
|
|
||||||
* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
|
||||||
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
|
|
||||||
* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
|
||||||
* POSSIBILITY OF SUCH DAMAGE.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
|
|
||||||
#import <XCTest/XCTest.h>
|
|
||||||
|
|
||||||
@interface commonTests : XCTestCase
|
|
||||||
|
|
||||||
@end
|
|
||||||
|
|
||||||
@implementation commonTests
|
|
||||||
|
|
||||||
- (void)setUp
|
|
||||||
{
|
|
||||||
[super setUp];
|
|
||||||
// Put setup code here. This method is called before the invocation of each test method in the class.
|
|
||||||
}
|
|
||||||
|
|
||||||
- (void)tearDown
|
|
||||||
{
|
|
||||||
// Put teardown code here. This method is called after the invocation of each test method in the class.
|
|
||||||
[super tearDown];
|
|
||||||
}
|
|
||||||
|
|
||||||
- (void)testExample
|
|
||||||
{
|
|
||||||
XCTFail(@"No implementation for \"%s\"", __PRETTY_FUNCTION__);
|
|
||||||
}
|
|
||||||
|
|
||||||
@end
|
|
||||||
@@ -35,13 +35,6 @@
|
|||||||
remoteGlobalIDString = 4CE443D518B722CD0017DF25;
|
remoteGlobalIDString = 4CE443D518B722CD0017DF25;
|
||||||
remoteInfo = common;
|
remoteInfo = common;
|
||||||
};
|
};
|
||||||
4CE444F718B72A900017DF25 /* PBXContainerItemProxy */ = {
|
|
||||||
isa = PBXContainerItemProxy;
|
|
||||||
containerPortal = 4CE444F018B72A8F0017DF25 /* common.xcodeproj */;
|
|
||||||
proxyType = 2;
|
|
||||||
remoteGlobalIDString = 4CE443E518B722CD0017DF25;
|
|
||||||
remoteInfo = commonTests;
|
|
||||||
};
|
|
||||||
4CE444FF18B72AD70017DF25 /* PBXContainerItemProxy */ = {
|
4CE444FF18B72AD70017DF25 /* PBXContainerItemProxy */ = {
|
||||||
isa = PBXContainerItemProxy;
|
isa = PBXContainerItemProxy;
|
||||||
containerPortal = 4CE444FA18B72AD70017DF25 /* welsdec.xcodeproj */;
|
containerPortal = 4CE444FA18B72AD70017DF25 /* welsdec.xcodeproj */;
|
||||||
@@ -49,13 +42,6 @@
|
|||||||
remoteGlobalIDString = 4CE4427918B6FC360017DF25;
|
remoteGlobalIDString = 4CE4427918B6FC360017DF25;
|
||||||
remoteInfo = welsdec;
|
remoteInfo = welsdec;
|
||||||
};
|
};
|
||||||
4CE4450118B72AD70017DF25 /* PBXContainerItemProxy */ = {
|
|
||||||
isa = PBXContainerItemProxy;
|
|
||||||
containerPortal = 4CE444FA18B72AD70017DF25 /* welsdec.xcodeproj */;
|
|
||||||
proxyType = 2;
|
|
||||||
remoteGlobalIDString = 4CE4428918B6FC360017DF25;
|
|
||||||
remoteInfo = welsdecTests;
|
|
||||||
};
|
|
||||||
/* End PBXContainerItemProxy section */
|
/* End PBXContainerItemProxy section */
|
||||||
|
|
||||||
/* Begin PBXFileReference section */
|
/* Begin PBXFileReference section */
|
||||||
@@ -78,10 +64,10 @@
|
|||||||
F0E663671810EFA5000C888E /* DEMOViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = DEMOViewController.h; sourceTree = "<group>"; };
|
F0E663671810EFA5000C888E /* DEMOViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = DEMOViewController.h; sourceTree = "<group>"; };
|
||||||
F0E663681810EFA5000C888E /* DEMOViewController.m */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.objcpp; path = DEMOViewController.m; sourceTree = "<group>"; };
|
F0E663681810EFA5000C888E /* DEMOViewController.m */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.objcpp; path = DEMOViewController.m; sourceTree = "<group>"; };
|
||||||
F0E663721810EFF7000C888E /* d3d9_utils.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = d3d9_utils.h; sourceTree = "<group>"; };
|
F0E663721810EFF7000C888E /* d3d9_utils.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = d3d9_utils.h; sourceTree = "<group>"; };
|
||||||
F0E663741810EFF7000C888E /* read_config.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = read_config.h; sourceTree = "<group>"; };
|
F0E663741810EFF7000C888E /* read_config.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = read_config.h; path = ../../common/inc/read_config.h; sourceTree = "<group>"; };
|
||||||
F0E663761810EFF7000C888E /* d3d9_utils.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = d3d9_utils.cpp; sourceTree = "<group>"; };
|
F0E663761810EFF7000C888E /* d3d9_utils.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = d3d9_utils.cpp; sourceTree = "<group>"; };
|
||||||
F0E663771810EFF7000C888E /* h264dec.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = h264dec.cpp; sourceTree = "<group>"; };
|
F0E663771810EFF7000C888E /* h264dec.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = h264dec.cpp; sourceTree = "<group>"; };
|
||||||
F0E663791810EFF7000C888E /* read_config.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = read_config.cpp; sourceTree = "<group>"; };
|
F0E663791810EFF7000C888E /* read_config.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = read_config.cpp; path = ../../common/src/read_config.cpp; sourceTree = "<group>"; };
|
||||||
F0E663B3181117B9000C888E /* DEMOViewControllerShowResource.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DEMOViewControllerShowResource.h; sourceTree = "<group>"; };
|
F0E663B3181117B9000C888E /* DEMOViewControllerShowResource.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DEMOViewControllerShowResource.h; sourceTree = "<group>"; };
|
||||||
F0E663B4181117B9000C888E /* DEMOViewControllerShowResource.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DEMOViewControllerShowResource.m; sourceTree = "<group>"; };
|
F0E663B4181117B9000C888E /* DEMOViewControllerShowResource.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DEMOViewControllerShowResource.m; sourceTree = "<group>"; };
|
||||||
/* End PBXFileReference section */
|
/* End PBXFileReference section */
|
||||||
@@ -106,7 +92,6 @@
|
|||||||
isa = PBXGroup;
|
isa = PBXGroup;
|
||||||
children = (
|
children = (
|
||||||
4CE444F618B72A900017DF25 /* libcommon.a */,
|
4CE444F618B72A900017DF25 /* libcommon.a */,
|
||||||
4CE444F818B72A900017DF25 /* commonTests.xctest */,
|
|
||||||
);
|
);
|
||||||
name = Products;
|
name = Products;
|
||||||
sourceTree = "<group>";
|
sourceTree = "<group>";
|
||||||
@@ -115,7 +100,6 @@
|
|||||||
isa = PBXGroup;
|
isa = PBXGroup;
|
||||||
children = (
|
children = (
|
||||||
4CE4450018B72AD70017DF25 /* libwelsdec.a */,
|
4CE4450018B72AD70017DF25 /* libwelsdec.a */,
|
||||||
4CE4450218B72AD70017DF25 /* welsdecTests.xctest */,
|
|
||||||
);
|
);
|
||||||
name = Products;
|
name = Products;
|
||||||
sourceTree = "<group>";
|
sourceTree = "<group>";
|
||||||
@@ -273,13 +257,6 @@
|
|||||||
remoteRef = 4CE444F518B72A900017DF25 /* PBXContainerItemProxy */;
|
remoteRef = 4CE444F518B72A900017DF25 /* PBXContainerItemProxy */;
|
||||||
sourceTree = BUILT_PRODUCTS_DIR;
|
sourceTree = BUILT_PRODUCTS_DIR;
|
||||||
};
|
};
|
||||||
4CE444F818B72A900017DF25 /* commonTests.xctest */ = {
|
|
||||||
isa = PBXReferenceProxy;
|
|
||||||
fileType = wrapper.cfbundle;
|
|
||||||
path = commonTests.xctest;
|
|
||||||
remoteRef = 4CE444F718B72A900017DF25 /* PBXContainerItemProxy */;
|
|
||||||
sourceTree = BUILT_PRODUCTS_DIR;
|
|
||||||
};
|
|
||||||
4CE4450018B72AD70017DF25 /* libwelsdec.a */ = {
|
4CE4450018B72AD70017DF25 /* libwelsdec.a */ = {
|
||||||
isa = PBXReferenceProxy;
|
isa = PBXReferenceProxy;
|
||||||
fileType = archive.ar;
|
fileType = archive.ar;
|
||||||
@@ -287,13 +264,6 @@
|
|||||||
remoteRef = 4CE444FF18B72AD70017DF25 /* PBXContainerItemProxy */;
|
remoteRef = 4CE444FF18B72AD70017DF25 /* PBXContainerItemProxy */;
|
||||||
sourceTree = BUILT_PRODUCTS_DIR;
|
sourceTree = BUILT_PRODUCTS_DIR;
|
||||||
};
|
};
|
||||||
4CE4450218B72AD70017DF25 /* welsdecTests.xctest */ = {
|
|
||||||
isa = PBXReferenceProxy;
|
|
||||||
fileType = wrapper.cfbundle;
|
|
||||||
path = welsdecTests.xctest;
|
|
||||||
remoteRef = 4CE4450118B72AD70017DF25 /* PBXContainerItemProxy */;
|
|
||||||
sourceTree = BUILT_PRODUCTS_DIR;
|
|
||||||
};
|
|
||||||
/* End PBXReferenceProxy section */
|
/* End PBXReferenceProxy section */
|
||||||
|
|
||||||
/* Begin PBXResourcesBuildPhase section */
|
/* Begin PBXResourcesBuildPhase section */
|
||||||
|
|||||||
@@ -34,6 +34,6 @@
|
|||||||
|
|
||||||
@interface DEMOAppDelegate : UIResponder <UIApplicationDelegate>
|
@interface DEMOAppDelegate : UIResponder <UIApplicationDelegate>
|
||||||
|
|
||||||
@property (strong, nonatomic) UIWindow *window;
|
@property (strong, nonatomic) UIWindow* window;
|
||||||
|
|
||||||
@end
|
@end
|
||||||
|
|||||||
@@ -32,18 +32,17 @@
|
|||||||
|
|
||||||
#import <UIKit/UIKit.h>
|
#import <UIKit/UIKit.h>
|
||||||
|
|
||||||
@interface DEMOViewController : UIViewController
|
@interface DEMOViewController : UIViewController {
|
||||||
{
|
|
||||||
BOOL bEnableFlag;
|
BOOL bEnableFlag;
|
||||||
}
|
}
|
||||||
@property (strong, nonatomic) NSMutableArray *resFileArray;
|
@property (strong, nonatomic) NSMutableArray* resFileArray;
|
||||||
@property (retain, nonatomic)UIAlertView *statusIndication;
|
@property (retain, nonatomic)UIAlertView* statusIndication;
|
||||||
@property (assign, nonatomic) NSUInteger selectedRow;
|
@property (assign, nonatomic) NSUInteger selectedRow;
|
||||||
|
|
||||||
- (IBAction)startDecoderAll:(id)sender;
|
- (IBAction)startDecoderAll: (id)sender;
|
||||||
- (IBAction)startDecoderOne:(id)sender;
|
- (IBAction)startDecoderOne: (id)sender;
|
||||||
@property (weak, nonatomic) IBOutlet UITextField *currentSelectedFileTF;
|
@property (weak, nonatomic) IBOutlet UITextField* currentSelectedFileTF;
|
||||||
|
|
||||||
//unwind segue
|
//unwind segue
|
||||||
- (IBAction)unwindSegueForShowResourceViewController:(UIStoryboardSegue *)segue;
|
- (IBAction)unwindSegueForShowResourceViewController: (UIStoryboardSegue*)segue;
|
||||||
@end
|
@end
|
||||||
|
|||||||
@@ -33,6 +33,6 @@
|
|||||||
#import <UIKit/UIKit.h>
|
#import <UIKit/UIKit.h>
|
||||||
|
|
||||||
@interface DEMOViewControllerShowResource : UITableViewController
|
@interface DEMOViewControllerShowResource : UITableViewController
|
||||||
@property (strong, nonatomic) NSMutableArray *resFileArray;
|
@property (strong, nonatomic) NSMutableArray* resFileArray;
|
||||||
@property (assign, nonatomic) NSUInteger selectedRow;
|
@property (assign, nonatomic) NSUInteger selectedRow;
|
||||||
@end
|
@end
|
||||||
|
|||||||
@@ -7,13 +7,8 @@
|
|||||||
objects = {
|
objects = {
|
||||||
|
|
||||||
/* Begin PBXBuildFile section */
|
/* Begin PBXBuildFile section */
|
||||||
|
4CBC1B81194AC4E100214D9E /* intra_pred_aarch64_neon.S in Sources */ = {isa = PBXBuildFile; fileRef = 4CBC1B80194AC4E100214D9E /* intra_pred_aarch64_neon.S */; };
|
||||||
4CE4427D18B6FC360017DF25 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 4CE4427C18B6FC360017DF25 /* Foundation.framework */; };
|
4CE4427D18B6FC360017DF25 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 4CE4427C18B6FC360017DF25 /* Foundation.framework */; };
|
||||||
4CE4428B18B6FC360017DF25 /* XCTest.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 4CE4428A18B6FC360017DF25 /* XCTest.framework */; };
|
|
||||||
4CE4428C18B6FC360017DF25 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 4CE4427C18B6FC360017DF25 /* Foundation.framework */; };
|
|
||||||
4CE4428E18B6FC360017DF25 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 4CE4428D18B6FC360017DF25 /* UIKit.framework */; };
|
|
||||||
4CE4429118B6FC360017DF25 /* libwelsdec.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 4CE4427918B6FC360017DF25 /* libwelsdec.a */; };
|
|
||||||
4CE4429718B6FC360017DF25 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 4CE4429518B6FC360017DF25 /* InfoPlist.strings */; };
|
|
||||||
4CE4429918B6FC360017DF25 /* welsdecTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 4CE4429818B6FC360017DF25 /* welsdecTests.m */; };
|
|
||||||
4CE4468A18BC5EAB0017DF25 /* au_parser.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4CE4466718BC5EAA0017DF25 /* au_parser.cpp */; };
|
4CE4468A18BC5EAB0017DF25 /* au_parser.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4CE4466718BC5EAA0017DF25 /* au_parser.cpp */; };
|
||||||
4CE4468B18BC5EAB0017DF25 /* bit_stream.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4CE4466818BC5EAA0017DF25 /* bit_stream.cpp */; };
|
4CE4468B18BC5EAB0017DF25 /* bit_stream.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4CE4466818BC5EAA0017DF25 /* bit_stream.cpp */; };
|
||||||
4CE4468C18BC5EAB0017DF25 /* deblocking.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4CE4466918BC5EAA0017DF25 /* deblocking.cpp */; };
|
4CE4468C18BC5EAB0017DF25 /* deblocking.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4CE4466918BC5EAA0017DF25 /* deblocking.cpp */; };
|
||||||
@@ -22,7 +17,6 @@
|
|||||||
4CE4468F18BC5EAB0017DF25 /* decoder.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4CE4466C18BC5EAA0017DF25 /* decoder.cpp */; };
|
4CE4468F18BC5EAB0017DF25 /* decoder.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4CE4466C18BC5EAA0017DF25 /* decoder.cpp */; };
|
||||||
4CE4469018BC5EAB0017DF25 /* decoder_core.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4CE4466D18BC5EAA0017DF25 /* decoder_core.cpp */; };
|
4CE4469018BC5EAB0017DF25 /* decoder_core.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4CE4466D18BC5EAA0017DF25 /* decoder_core.cpp */; };
|
||||||
4CE4469118BC5EAB0017DF25 /* decoder_data_tables.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4CE4466E18BC5EAA0017DF25 /* decoder_data_tables.cpp */; };
|
4CE4469118BC5EAB0017DF25 /* decoder_data_tables.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4CE4466E18BC5EAA0017DF25 /* decoder_data_tables.cpp */; };
|
||||||
4CE4469218BC5EAB0017DF25 /* expand_pic.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4CE4466F18BC5EAA0017DF25 /* expand_pic.cpp */; };
|
|
||||||
4CE4469318BC5EAB0017DF25 /* fmo.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4CE4467018BC5EAA0017DF25 /* fmo.cpp */; };
|
4CE4469318BC5EAB0017DF25 /* fmo.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4CE4467018BC5EAA0017DF25 /* fmo.cpp */; };
|
||||||
4CE4469418BC5EAB0017DF25 /* get_intra_predictor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4CE4467118BC5EAA0017DF25 /* get_intra_predictor.cpp */; };
|
4CE4469418BC5EAB0017DF25 /* get_intra_predictor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4CE4467118BC5EAA0017DF25 /* get_intra_predictor.cpp */; };
|
||||||
4CE4469518BC5EAB0017DF25 /* manage_dec_ref.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4CE4467218BC5EAA0017DF25 /* manage_dec_ref.cpp */; };
|
4CE4469518BC5EAB0017DF25 /* manage_dec_ref.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4CE4467218BC5EAA0017DF25 /* manage_dec_ref.cpp */; };
|
||||||
@@ -33,24 +27,15 @@
|
|||||||
4CE4469A18BC5EAB0017DF25 /* parse_mb_syn_cavlc.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4CE4467718BC5EAA0017DF25 /* parse_mb_syn_cavlc.cpp */; };
|
4CE4469A18BC5EAB0017DF25 /* parse_mb_syn_cavlc.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4CE4467718BC5EAA0017DF25 /* parse_mb_syn_cavlc.cpp */; };
|
||||||
4CE4469B18BC5EAB0017DF25 /* pic_queue.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4CE4467818BC5EAA0017DF25 /* pic_queue.cpp */; };
|
4CE4469B18BC5EAB0017DF25 /* pic_queue.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4CE4467818BC5EAA0017DF25 /* pic_queue.cpp */; };
|
||||||
4CE4469C18BC5EAB0017DF25 /* rec_mb.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4CE4467918BC5EAA0017DF25 /* rec_mb.cpp */; };
|
4CE4469C18BC5EAB0017DF25 /* rec_mb.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4CE4467918BC5EAA0017DF25 /* rec_mb.cpp */; };
|
||||||
4CE4469D18BC5EAB0017DF25 /* utils.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4CE4467A18BC5EAA0017DF25 /* utils.cpp */; };
|
|
||||||
4CE4469E18BC5EAB0017DF25 /* welsCodecTrace.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4CE4468418BC5EAB0017DF25 /* welsCodecTrace.cpp */; };
|
|
||||||
4CE4469F18BC5EAB0017DF25 /* welsDecoderExt.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4CE4468518BC5EAB0017DF25 /* welsDecoderExt.cpp */; };
|
4CE4469F18BC5EAB0017DF25 /* welsDecoderExt.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4CE4468518BC5EAB0017DF25 /* welsDecoderExt.cpp */; };
|
||||||
4CE447AC18BC6BE90017DF25 /* block_add_neon.S in Sources */ = {isa = PBXBuildFile; fileRef = 4CE447A718BC6BE90017DF25 /* block_add_neon.S */; };
|
4CE447AC18BC6BE90017DF25 /* block_add_neon.S in Sources */ = {isa = PBXBuildFile; fileRef = 4CE447A718BC6BE90017DF25 /* block_add_neon.S */; };
|
||||||
4CE447AE18BC6BE90017DF25 /* intra_pred_neon.S in Sources */ = {isa = PBXBuildFile; fileRef = 4CE447A918BC6BE90017DF25 /* intra_pred_neon.S */; };
|
4CE447AE18BC6BE90017DF25 /* intra_pred_neon.S in Sources */ = {isa = PBXBuildFile; fileRef = 4CE447A918BC6BE90017DF25 /* intra_pred_neon.S */; };
|
||||||
|
9ABF4382193EB60900A6BD61 /* expand_pic.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9ABF4381193EB60900A6BD61 /* expand_pic.cpp */; };
|
||||||
|
9AED66561946A1DE009A3567 /* welsCodecTrace.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9AED66551946A1DE009A3567 /* welsCodecTrace.cpp */; };
|
||||||
|
9AED66591946A203009A3567 /* utils.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9AED66581946A203009A3567 /* utils.cpp */; };
|
||||||
F0B204FC18FD23D8005DA23F /* error_concealment.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F0B204FB18FD23D8005DA23F /* error_concealment.cpp */; };
|
F0B204FC18FD23D8005DA23F /* error_concealment.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F0B204FB18FD23D8005DA23F /* error_concealment.cpp */; };
|
||||||
/* End PBXBuildFile section */
|
/* End PBXBuildFile section */
|
||||||
|
|
||||||
/* Begin PBXContainerItemProxy section */
|
|
||||||
4CE4428F18B6FC360017DF25 /* PBXContainerItemProxy */ = {
|
|
||||||
isa = PBXContainerItemProxy;
|
|
||||||
containerPortal = 4CE4427118B6FC360017DF25 /* Project object */;
|
|
||||||
proxyType = 1;
|
|
||||||
remoteGlobalIDString = 4CE4427818B6FC360017DF25;
|
|
||||||
remoteInfo = welsdec;
|
|
||||||
};
|
|
||||||
/* End PBXContainerItemProxy section */
|
|
||||||
|
|
||||||
/* Begin PBXCopyFilesBuildPhase section */
|
/* Begin PBXCopyFilesBuildPhase section */
|
||||||
4CE4427718B6FC360017DF25 /* CopyFiles */ = {
|
4CE4427718B6FC360017DF25 /* CopyFiles */ = {
|
||||||
isa = PBXCopyFilesBuildPhase;
|
isa = PBXCopyFilesBuildPhase;
|
||||||
@@ -64,14 +49,10 @@
|
|||||||
/* End PBXCopyFilesBuildPhase section */
|
/* End PBXCopyFilesBuildPhase section */
|
||||||
|
|
||||||
/* Begin PBXFileReference section */
|
/* Begin PBXFileReference section */
|
||||||
|
4CBC1B80194AC4E100214D9E /* intra_pred_aarch64_neon.S */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.asm; name = intra_pred_aarch64_neon.S; path = arm64/intra_pred_aarch64_neon.S; sourceTree = "<group>"; };
|
||||||
4CE4427918B6FC360017DF25 /* libwelsdec.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libwelsdec.a; sourceTree = BUILT_PRODUCTS_DIR; };
|
4CE4427918B6FC360017DF25 /* libwelsdec.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libwelsdec.a; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||||
4CE4427C18B6FC360017DF25 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; };
|
4CE4427C18B6FC360017DF25 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; };
|
||||||
4CE4428918B6FC360017DF25 /* welsdecTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = welsdecTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };
|
|
||||||
4CE4428A18B6FC360017DF25 /* XCTest.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = XCTest.framework; path = Library/Frameworks/XCTest.framework; sourceTree = DEVELOPER_DIR; };
|
|
||||||
4CE4428D18B6FC360017DF25 /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = Library/Frameworks/UIKit.framework; sourceTree = DEVELOPER_DIR; };
|
4CE4428D18B6FC360017DF25 /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = Library/Frameworks/UIKit.framework; sourceTree = DEVELOPER_DIR; };
|
||||||
4CE4429418B6FC360017DF25 /* welsdecTests-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "welsdecTests-Info.plist"; sourceTree = "<group>"; };
|
|
||||||
4CE4429618B6FC360017DF25 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/InfoPlist.strings; sourceTree = "<group>"; };
|
|
||||||
4CE4429818B6FC360017DF25 /* welsdecTests.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = welsdecTests.m; sourceTree = "<group>"; };
|
|
||||||
4CE4464518BC5EAA0017DF25 /* as264_common.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = as264_common.h; sourceTree = "<group>"; };
|
4CE4464518BC5EAA0017DF25 /* as264_common.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = as264_common.h; sourceTree = "<group>"; };
|
||||||
4CE4464618BC5EAA0017DF25 /* au_parser.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = au_parser.h; sourceTree = "<group>"; };
|
4CE4464618BC5EAA0017DF25 /* au_parser.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = au_parser.h; sourceTree = "<group>"; };
|
||||||
4CE4464718BC5EAA0017DF25 /* bit_stream.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = bit_stream.h; sourceTree = "<group>"; };
|
4CE4464718BC5EAA0017DF25 /* bit_stream.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = bit_stream.h; sourceTree = "<group>"; };
|
||||||
@@ -84,7 +65,6 @@
|
|||||||
4CE4464E18BC5EAA0017DF25 /* decoder_context.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = decoder_context.h; sourceTree = "<group>"; };
|
4CE4464E18BC5EAA0017DF25 /* decoder_context.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = decoder_context.h; sourceTree = "<group>"; };
|
||||||
4CE4464F18BC5EAA0017DF25 /* decoder_core.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = decoder_core.h; sourceTree = "<group>"; };
|
4CE4464F18BC5EAA0017DF25 /* decoder_core.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = decoder_core.h; sourceTree = "<group>"; };
|
||||||
4CE4465018BC5EAA0017DF25 /* error_code.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = error_code.h; sourceTree = "<group>"; };
|
4CE4465018BC5EAA0017DF25 /* error_code.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = error_code.h; sourceTree = "<group>"; };
|
||||||
4CE4465118BC5EAA0017DF25 /* expand_pic.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = expand_pic.h; sourceTree = "<group>"; usesTabs = 1; };
|
|
||||||
4CE4465218BC5EAA0017DF25 /* fmo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = fmo.h; sourceTree = "<group>"; usesTabs = 1; };
|
4CE4465218BC5EAA0017DF25 /* fmo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = fmo.h; sourceTree = "<group>"; usesTabs = 1; };
|
||||||
4CE4465318BC5EAA0017DF25 /* get_intra_predictor.h */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 4; lastKnownFileType = sourcecode.c.h; path = get_intra_predictor.h; sourceTree = "<group>"; tabWidth = 4; usesTabs = 0; };
|
4CE4465318BC5EAA0017DF25 /* get_intra_predictor.h */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 4; lastKnownFileType = sourcecode.c.h; path = get_intra_predictor.h; sourceTree = "<group>"; tabWidth = 4; usesTabs = 0; };
|
||||||
4CE4465418BC5EAA0017DF25 /* manage_dec_ref.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = manage_dec_ref.h; sourceTree = "<group>"; };
|
4CE4465418BC5EAA0017DF25 /* manage_dec_ref.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = manage_dec_ref.h; sourceTree = "<group>"; };
|
||||||
@@ -101,7 +81,6 @@
|
|||||||
4CE4465F18BC5EAA0017DF25 /* picture.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = picture.h; sourceTree = "<group>"; };
|
4CE4465F18BC5EAA0017DF25 /* picture.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = picture.h; sourceTree = "<group>"; };
|
||||||
4CE4466018BC5EAA0017DF25 /* rec_mb.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = rec_mb.h; sourceTree = "<group>"; };
|
4CE4466018BC5EAA0017DF25 /* rec_mb.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = rec_mb.h; sourceTree = "<group>"; };
|
||||||
4CE4466118BC5EAA0017DF25 /* slice.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = slice.h; sourceTree = "<group>"; };
|
4CE4466118BC5EAA0017DF25 /* slice.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = slice.h; sourceTree = "<group>"; };
|
||||||
4CE4466218BC5EAA0017DF25 /* utils.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = utils.h; sourceTree = "<group>"; };
|
|
||||||
4CE4466318BC5EAA0017DF25 /* vlc_decoder.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = vlc_decoder.h; sourceTree = "<group>"; };
|
4CE4466318BC5EAA0017DF25 /* vlc_decoder.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = vlc_decoder.h; sourceTree = "<group>"; };
|
||||||
4CE4466418BC5EAA0017DF25 /* wels_common_basis.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = wels_common_basis.h; sourceTree = "<group>"; };
|
4CE4466418BC5EAA0017DF25 /* wels_common_basis.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = wels_common_basis.h; sourceTree = "<group>"; };
|
||||||
4CE4466518BC5EAA0017DF25 /* wels_const.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = wels_const.h; sourceTree = "<group>"; };
|
4CE4466518BC5EAA0017DF25 /* wels_const.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = wels_const.h; sourceTree = "<group>"; };
|
||||||
@@ -113,7 +92,6 @@
|
|||||||
4CE4466C18BC5EAA0017DF25 /* decoder.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = decoder.cpp; sourceTree = "<group>"; tabWidth = 4; usesTabs = 0; };
|
4CE4466C18BC5EAA0017DF25 /* decoder.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = decoder.cpp; sourceTree = "<group>"; tabWidth = 4; usesTabs = 0; };
|
||||||
4CE4466D18BC5EAA0017DF25 /* decoder_core.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = decoder_core.cpp; sourceTree = "<group>"; };
|
4CE4466D18BC5EAA0017DF25 /* decoder_core.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = decoder_core.cpp; sourceTree = "<group>"; };
|
||||||
4CE4466E18BC5EAA0017DF25 /* decoder_data_tables.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = decoder_data_tables.cpp; sourceTree = "<group>"; };
|
4CE4466E18BC5EAA0017DF25 /* decoder_data_tables.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = decoder_data_tables.cpp; sourceTree = "<group>"; };
|
||||||
4CE4466F18BC5EAA0017DF25 /* expand_pic.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = expand_pic.cpp; sourceTree = "<group>"; };
|
|
||||||
4CE4467018BC5EAA0017DF25 /* fmo.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = fmo.cpp; sourceTree = "<group>"; };
|
4CE4467018BC5EAA0017DF25 /* fmo.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = fmo.cpp; sourceTree = "<group>"; };
|
||||||
4CE4467118BC5EAA0017DF25 /* get_intra_predictor.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = get_intra_predictor.cpp; sourceTree = "<group>"; };
|
4CE4467118BC5EAA0017DF25 /* get_intra_predictor.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = get_intra_predictor.cpp; sourceTree = "<group>"; };
|
||||||
4CE4467218BC5EAA0017DF25 /* manage_dec_ref.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = manage_dec_ref.cpp; sourceTree = "<group>"; };
|
4CE4467218BC5EAA0017DF25 /* manage_dec_ref.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = manage_dec_ref.cpp; sourceTree = "<group>"; };
|
||||||
@@ -124,14 +102,17 @@
|
|||||||
4CE4467718BC5EAA0017DF25 /* parse_mb_syn_cavlc.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = parse_mb_syn_cavlc.cpp; sourceTree = "<group>"; };
|
4CE4467718BC5EAA0017DF25 /* parse_mb_syn_cavlc.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = parse_mb_syn_cavlc.cpp; sourceTree = "<group>"; };
|
||||||
4CE4467818BC5EAA0017DF25 /* pic_queue.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = pic_queue.cpp; sourceTree = "<group>"; };
|
4CE4467818BC5EAA0017DF25 /* pic_queue.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = pic_queue.cpp; sourceTree = "<group>"; };
|
||||||
4CE4467918BC5EAA0017DF25 /* rec_mb.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = rec_mb.cpp; sourceTree = "<group>"; };
|
4CE4467918BC5EAA0017DF25 /* rec_mb.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = rec_mb.cpp; sourceTree = "<group>"; };
|
||||||
4CE4467A18BC5EAA0017DF25 /* utils.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = utils.cpp; sourceTree = "<group>"; };
|
|
||||||
4CE4467D18BC5EAA0017DF25 /* welsCodecTrace.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = welsCodecTrace.h; sourceTree = "<group>"; };
|
|
||||||
4CE4467E18BC5EAA0017DF25 /* welsDecoderExt.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = welsDecoderExt.h; sourceTree = "<group>"; };
|
4CE4467E18BC5EAA0017DF25 /* welsDecoderExt.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = welsDecoderExt.h; sourceTree = "<group>"; };
|
||||||
4CE4468318BC5EAB0017DF25 /* wels_dec_export.def */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = wels_dec_export.def; sourceTree = "<group>"; };
|
4CE4468318BC5EAB0017DF25 /* wels_dec_export.def */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = wels_dec_export.def; sourceTree = "<group>"; };
|
||||||
4CE4468418BC5EAB0017DF25 /* welsCodecTrace.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = welsCodecTrace.cpp; sourceTree = "<group>"; };
|
|
||||||
4CE4468518BC5EAB0017DF25 /* welsDecoderExt.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = welsDecoderExt.cpp; sourceTree = "<group>"; };
|
4CE4468518BC5EAB0017DF25 /* welsDecoderExt.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = welsDecoderExt.cpp; sourceTree = "<group>"; };
|
||||||
4CE447A718BC6BE90017DF25 /* block_add_neon.S */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.asm; path = block_add_neon.S; sourceTree = "<group>"; };
|
4CE447A718BC6BE90017DF25 /* block_add_neon.S */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.asm; path = block_add_neon.S; sourceTree = "<group>"; };
|
||||||
4CE447A918BC6BE90017DF25 /* intra_pred_neon.S */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.asm; path = intra_pred_neon.S; sourceTree = "<group>"; };
|
4CE447A918BC6BE90017DF25 /* intra_pred_neon.S */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.asm; path = intra_pred_neon.S; sourceTree = "<group>"; };
|
||||||
|
9ABF4380193EB5F700A6BD61 /* expand_pic.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = expand_pic.h; path = ../../../common/inc/expand_pic.h; sourceTree = "<group>"; };
|
||||||
|
9ABF4381193EB60900A6BD61 /* expand_pic.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = expand_pic.cpp; path = ../../../common/src/expand_pic.cpp; sourceTree = "<group>"; };
|
||||||
|
9AED66551946A1DE009A3567 /* welsCodecTrace.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = welsCodecTrace.cpp; path = ../../../common/src/welsCodecTrace.cpp; sourceTree = "<group>"; };
|
||||||
|
9AED66571946A1EB009A3567 /* welsCodecTrace.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = welsCodecTrace.h; path = ../../../common/inc/welsCodecTrace.h; sourceTree = "<group>"; };
|
||||||
|
9AED66581946A203009A3567 /* utils.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = utils.cpp; path = ../../../common/src/utils.cpp; sourceTree = "<group>"; };
|
||||||
|
9AED665A1946A21D009A3567 /* utils.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = utils.h; path = ../../../common/inc/utils.h; sourceTree = "<group>"; };
|
||||||
F0B204FA18FD23CF005DA23F /* error_concealment.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = error_concealment.h; sourceTree = "<group>"; };
|
F0B204FA18FD23CF005DA23F /* error_concealment.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = error_concealment.h; sourceTree = "<group>"; };
|
||||||
F0B204FB18FD23D8005DA23F /* error_concealment.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = error_concealment.cpp; sourceTree = "<group>"; };
|
F0B204FB18FD23D8005DA23F /* error_concealment.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = error_concealment.cpp; sourceTree = "<group>"; };
|
||||||
/* End PBXFileReference section */
|
/* End PBXFileReference section */
|
||||||
@@ -145,25 +126,21 @@
|
|||||||
);
|
);
|
||||||
runOnlyForDeploymentPostprocessing = 0;
|
runOnlyForDeploymentPostprocessing = 0;
|
||||||
};
|
};
|
||||||
4CE4428618B6FC360017DF25 /* Frameworks */ = {
|
|
||||||
isa = PBXFrameworksBuildPhase;
|
|
||||||
buildActionMask = 2147483647;
|
|
||||||
files = (
|
|
||||||
4CE4428B18B6FC360017DF25 /* XCTest.framework in Frameworks */,
|
|
||||||
4CE4429118B6FC360017DF25 /* libwelsdec.a in Frameworks */,
|
|
||||||
4CE4428E18B6FC360017DF25 /* UIKit.framework in Frameworks */,
|
|
||||||
4CE4428C18B6FC360017DF25 /* Foundation.framework in Frameworks */,
|
|
||||||
);
|
|
||||||
runOnlyForDeploymentPostprocessing = 0;
|
|
||||||
};
|
|
||||||
/* End PBXFrameworksBuildPhase section */
|
/* End PBXFrameworksBuildPhase section */
|
||||||
|
|
||||||
/* Begin PBXGroup section */
|
/* Begin PBXGroup section */
|
||||||
|
4CBC1B7F194AC4A400214D9E /* arm64 */ = {
|
||||||
|
isa = PBXGroup;
|
||||||
|
children = (
|
||||||
|
4CBC1B80194AC4E100214D9E /* intra_pred_aarch64_neon.S */,
|
||||||
|
);
|
||||||
|
name = arm64;
|
||||||
|
sourceTree = "<group>";
|
||||||
|
};
|
||||||
4CE4427018B6FC360017DF25 = {
|
4CE4427018B6FC360017DF25 = {
|
||||||
isa = PBXGroup;
|
isa = PBXGroup;
|
||||||
children = (
|
children = (
|
||||||
4CE4463E18BC5EAA0017DF25 /* decoder */,
|
4CE4463E18BC5EAA0017DF25 /* decoder */,
|
||||||
4CE4429218B6FC360017DF25 /* welsdecTests */,
|
|
||||||
4CE4427B18B6FC360017DF25 /* Frameworks */,
|
4CE4427B18B6FC360017DF25 /* Frameworks */,
|
||||||
4CE4427A18B6FC360017DF25 /* Products */,
|
4CE4427A18B6FC360017DF25 /* Products */,
|
||||||
);
|
);
|
||||||
@@ -173,7 +150,6 @@
|
|||||||
isa = PBXGroup;
|
isa = PBXGroup;
|
||||||
children = (
|
children = (
|
||||||
4CE4427918B6FC360017DF25 /* libwelsdec.a */,
|
4CE4427918B6FC360017DF25 /* libwelsdec.a */,
|
||||||
4CE4428918B6FC360017DF25 /* welsdecTests.xctest */,
|
|
||||||
);
|
);
|
||||||
name = Products;
|
name = Products;
|
||||||
sourceTree = "<group>";
|
sourceTree = "<group>";
|
||||||
@@ -182,30 +158,11 @@
|
|||||||
isa = PBXGroup;
|
isa = PBXGroup;
|
||||||
children = (
|
children = (
|
||||||
4CE4427C18B6FC360017DF25 /* Foundation.framework */,
|
4CE4427C18B6FC360017DF25 /* Foundation.framework */,
|
||||||
4CE4428A18B6FC360017DF25 /* XCTest.framework */,
|
|
||||||
4CE4428D18B6FC360017DF25 /* UIKit.framework */,
|
4CE4428D18B6FC360017DF25 /* UIKit.framework */,
|
||||||
);
|
);
|
||||||
name = Frameworks;
|
name = Frameworks;
|
||||||
sourceTree = "<group>";
|
sourceTree = "<group>";
|
||||||
};
|
};
|
||||||
4CE4429218B6FC360017DF25 /* welsdecTests */ = {
|
|
||||||
isa = PBXGroup;
|
|
||||||
children = (
|
|
||||||
4CE4429818B6FC360017DF25 /* welsdecTests.m */,
|
|
||||||
4CE4429318B6FC360017DF25 /* Supporting Files */,
|
|
||||||
);
|
|
||||||
path = welsdecTests;
|
|
||||||
sourceTree = "<group>";
|
|
||||||
};
|
|
||||||
4CE4429318B6FC360017DF25 /* Supporting Files */ = {
|
|
||||||
isa = PBXGroup;
|
|
||||||
children = (
|
|
||||||
4CE4429418B6FC360017DF25 /* welsdecTests-Info.plist */,
|
|
||||||
4CE4429518B6FC360017DF25 /* InfoPlist.strings */,
|
|
||||||
);
|
|
||||||
name = "Supporting Files";
|
|
||||||
sourceTree = "<group>";
|
|
||||||
};
|
|
||||||
4CE4463E18BC5EAA0017DF25 /* decoder */ = {
|
4CE4463E18BC5EAA0017DF25 /* decoder */ = {
|
||||||
isa = PBXGroup;
|
isa = PBXGroup;
|
||||||
children = (
|
children = (
|
||||||
@@ -219,6 +176,7 @@
|
|||||||
4CE4463F18BC5EAA0017DF25 /* core */ = {
|
4CE4463F18BC5EAA0017DF25 /* core */ = {
|
||||||
isa = PBXGroup;
|
isa = PBXGroup;
|
||||||
children = (
|
children = (
|
||||||
|
4CBC1B7F194AC4A400214D9E /* arm64 */,
|
||||||
4CE447A518BC6BE90017DF25 /* arm */,
|
4CE447A518BC6BE90017DF25 /* arm */,
|
||||||
4CE4464418BC5EAA0017DF25 /* inc */,
|
4CE4464418BC5EAA0017DF25 /* inc */,
|
||||||
4CE4466618BC5EAA0017DF25 /* src */,
|
4CE4466618BC5EAA0017DF25 /* src */,
|
||||||
@@ -229,6 +187,8 @@
|
|||||||
4CE4464418BC5EAA0017DF25 /* inc */ = {
|
4CE4464418BC5EAA0017DF25 /* inc */ = {
|
||||||
isa = PBXGroup;
|
isa = PBXGroup;
|
||||||
children = (
|
children = (
|
||||||
|
9AED665A1946A21D009A3567 /* utils.h */,
|
||||||
|
9ABF4380193EB5F700A6BD61 /* expand_pic.h */,
|
||||||
F0B204FA18FD23CF005DA23F /* error_concealment.h */,
|
F0B204FA18FD23CF005DA23F /* error_concealment.h */,
|
||||||
4CE4464518BC5EAA0017DF25 /* as264_common.h */,
|
4CE4464518BC5EAA0017DF25 /* as264_common.h */,
|
||||||
4CE4464618BC5EAA0017DF25 /* au_parser.h */,
|
4CE4464618BC5EAA0017DF25 /* au_parser.h */,
|
||||||
@@ -242,7 +202,6 @@
|
|||||||
4CE4464E18BC5EAA0017DF25 /* decoder_context.h */,
|
4CE4464E18BC5EAA0017DF25 /* decoder_context.h */,
|
||||||
4CE4464F18BC5EAA0017DF25 /* decoder_core.h */,
|
4CE4464F18BC5EAA0017DF25 /* decoder_core.h */,
|
||||||
4CE4465018BC5EAA0017DF25 /* error_code.h */,
|
4CE4465018BC5EAA0017DF25 /* error_code.h */,
|
||||||
4CE4465118BC5EAA0017DF25 /* expand_pic.h */,
|
|
||||||
4CE4465218BC5EAA0017DF25 /* fmo.h */,
|
4CE4465218BC5EAA0017DF25 /* fmo.h */,
|
||||||
4CE4465318BC5EAA0017DF25 /* get_intra_predictor.h */,
|
4CE4465318BC5EAA0017DF25 /* get_intra_predictor.h */,
|
||||||
4CE4465418BC5EAA0017DF25 /* manage_dec_ref.h */,
|
4CE4465418BC5EAA0017DF25 /* manage_dec_ref.h */,
|
||||||
@@ -259,7 +218,6 @@
|
|||||||
4CE4465F18BC5EAA0017DF25 /* picture.h */,
|
4CE4465F18BC5EAA0017DF25 /* picture.h */,
|
||||||
4CE4466018BC5EAA0017DF25 /* rec_mb.h */,
|
4CE4466018BC5EAA0017DF25 /* rec_mb.h */,
|
||||||
4CE4466118BC5EAA0017DF25 /* slice.h */,
|
4CE4466118BC5EAA0017DF25 /* slice.h */,
|
||||||
4CE4466218BC5EAA0017DF25 /* utils.h */,
|
|
||||||
4CE4466318BC5EAA0017DF25 /* vlc_decoder.h */,
|
4CE4466318BC5EAA0017DF25 /* vlc_decoder.h */,
|
||||||
4CE4466418BC5EAA0017DF25 /* wels_common_basis.h */,
|
4CE4466418BC5EAA0017DF25 /* wels_common_basis.h */,
|
||||||
4CE4466518BC5EAA0017DF25 /* wels_const.h */,
|
4CE4466518BC5EAA0017DF25 /* wels_const.h */,
|
||||||
@@ -270,6 +228,8 @@
|
|||||||
4CE4466618BC5EAA0017DF25 /* src */ = {
|
4CE4466618BC5EAA0017DF25 /* src */ = {
|
||||||
isa = PBXGroup;
|
isa = PBXGroup;
|
||||||
children = (
|
children = (
|
||||||
|
9AED66581946A203009A3567 /* utils.cpp */,
|
||||||
|
9ABF4381193EB60900A6BD61 /* expand_pic.cpp */,
|
||||||
F0B204FB18FD23D8005DA23F /* error_concealment.cpp */,
|
F0B204FB18FD23D8005DA23F /* error_concealment.cpp */,
|
||||||
4CE4466718BC5EAA0017DF25 /* au_parser.cpp */,
|
4CE4466718BC5EAA0017DF25 /* au_parser.cpp */,
|
||||||
4CE4466818BC5EAA0017DF25 /* bit_stream.cpp */,
|
4CE4466818BC5EAA0017DF25 /* bit_stream.cpp */,
|
||||||
@@ -279,7 +239,6 @@
|
|||||||
4CE4466C18BC5EAA0017DF25 /* decoder.cpp */,
|
4CE4466C18BC5EAA0017DF25 /* decoder.cpp */,
|
||||||
4CE4466D18BC5EAA0017DF25 /* decoder_core.cpp */,
|
4CE4466D18BC5EAA0017DF25 /* decoder_core.cpp */,
|
||||||
4CE4466E18BC5EAA0017DF25 /* decoder_data_tables.cpp */,
|
4CE4466E18BC5EAA0017DF25 /* decoder_data_tables.cpp */,
|
||||||
4CE4466F18BC5EAA0017DF25 /* expand_pic.cpp */,
|
|
||||||
4CE4467018BC5EAA0017DF25 /* fmo.cpp */,
|
4CE4467018BC5EAA0017DF25 /* fmo.cpp */,
|
||||||
4CE4467118BC5EAA0017DF25 /* get_intra_predictor.cpp */,
|
4CE4467118BC5EAA0017DF25 /* get_intra_predictor.cpp */,
|
||||||
4CE4467218BC5EAA0017DF25 /* manage_dec_ref.cpp */,
|
4CE4467218BC5EAA0017DF25 /* manage_dec_ref.cpp */,
|
||||||
@@ -290,7 +249,6 @@
|
|||||||
4CE4467718BC5EAA0017DF25 /* parse_mb_syn_cavlc.cpp */,
|
4CE4467718BC5EAA0017DF25 /* parse_mb_syn_cavlc.cpp */,
|
||||||
4CE4467818BC5EAA0017DF25 /* pic_queue.cpp */,
|
4CE4467818BC5EAA0017DF25 /* pic_queue.cpp */,
|
||||||
4CE4467918BC5EAA0017DF25 /* rec_mb.cpp */,
|
4CE4467918BC5EAA0017DF25 /* rec_mb.cpp */,
|
||||||
4CE4467A18BC5EAA0017DF25 /* utils.cpp */,
|
|
||||||
);
|
);
|
||||||
path = src;
|
path = src;
|
||||||
sourceTree = "<group>";
|
sourceTree = "<group>";
|
||||||
@@ -307,7 +265,7 @@
|
|||||||
4CE4467C18BC5EAA0017DF25 /* inc */ = {
|
4CE4467C18BC5EAA0017DF25 /* inc */ = {
|
||||||
isa = PBXGroup;
|
isa = PBXGroup;
|
||||||
children = (
|
children = (
|
||||||
4CE4467D18BC5EAA0017DF25 /* welsCodecTrace.h */,
|
9AED66571946A1EB009A3567 /* welsCodecTrace.h */,
|
||||||
4CE4467E18BC5EAA0017DF25 /* welsDecoderExt.h */,
|
4CE4467E18BC5EAA0017DF25 /* welsDecoderExt.h */,
|
||||||
);
|
);
|
||||||
path = inc;
|
path = inc;
|
||||||
@@ -316,8 +274,8 @@
|
|||||||
4CE4468218BC5EAB0017DF25 /* src */ = {
|
4CE4468218BC5EAB0017DF25 /* src */ = {
|
||||||
isa = PBXGroup;
|
isa = PBXGroup;
|
||||||
children = (
|
children = (
|
||||||
|
9AED66551946A1DE009A3567 /* welsCodecTrace.cpp */,
|
||||||
4CE4468318BC5EAB0017DF25 /* wels_dec_export.def */,
|
4CE4468318BC5EAB0017DF25 /* wels_dec_export.def */,
|
||||||
4CE4468418BC5EAB0017DF25 /* welsCodecTrace.cpp */,
|
|
||||||
4CE4468518BC5EAB0017DF25 /* welsDecoderExt.cpp */,
|
4CE4468518BC5EAB0017DF25 /* welsDecoderExt.cpp */,
|
||||||
);
|
);
|
||||||
path = src;
|
path = src;
|
||||||
@@ -352,31 +310,13 @@
|
|||||||
productReference = 4CE4427918B6FC360017DF25 /* libwelsdec.a */;
|
productReference = 4CE4427918B6FC360017DF25 /* libwelsdec.a */;
|
||||||
productType = "com.apple.product-type.library.static";
|
productType = "com.apple.product-type.library.static";
|
||||||
};
|
};
|
||||||
4CE4428818B6FC360017DF25 /* welsdecTests */ = {
|
|
||||||
isa = PBXNativeTarget;
|
|
||||||
buildConfigurationList = 4CE4429F18B6FC360017DF25 /* Build configuration list for PBXNativeTarget "welsdecTests" */;
|
|
||||||
buildPhases = (
|
|
||||||
4CE4428518B6FC360017DF25 /* Sources */,
|
|
||||||
4CE4428618B6FC360017DF25 /* Frameworks */,
|
|
||||||
4CE4428718B6FC360017DF25 /* Resources */,
|
|
||||||
);
|
|
||||||
buildRules = (
|
|
||||||
);
|
|
||||||
dependencies = (
|
|
||||||
4CE4429018B6FC360017DF25 /* PBXTargetDependency */,
|
|
||||||
);
|
|
||||||
name = welsdecTests;
|
|
||||||
productName = welsdecTests;
|
|
||||||
productReference = 4CE4428918B6FC360017DF25 /* welsdecTests.xctest */;
|
|
||||||
productType = "com.apple.product-type.bundle.unit-test";
|
|
||||||
};
|
|
||||||
/* End PBXNativeTarget section */
|
/* End PBXNativeTarget section */
|
||||||
|
|
||||||
/* Begin PBXProject section */
|
/* Begin PBXProject section */
|
||||||
4CE4427118B6FC360017DF25 /* Project object */ = {
|
4CE4427118B6FC360017DF25 /* Project object */ = {
|
||||||
isa = PBXProject;
|
isa = PBXProject;
|
||||||
attributes = {
|
attributes = {
|
||||||
LastUpgradeCheck = 0500;
|
LastUpgradeCheck = 0510;
|
||||||
ORGANIZATIONNAME = video;
|
ORGANIZATIONNAME = video;
|
||||||
};
|
};
|
||||||
buildConfigurationList = 4CE4427418B6FC360017DF25 /* Build configuration list for PBXProject "welsdec" */;
|
buildConfigurationList = 4CE4427418B6FC360017DF25 /* Build configuration list for PBXProject "welsdec" */;
|
||||||
@@ -392,22 +332,10 @@
|
|||||||
projectRoot = "";
|
projectRoot = "";
|
||||||
targets = (
|
targets = (
|
||||||
4CE4427818B6FC360017DF25 /* welsdec */,
|
4CE4427818B6FC360017DF25 /* welsdec */,
|
||||||
4CE4428818B6FC360017DF25 /* welsdecTests */,
|
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
/* End PBXProject section */
|
/* End PBXProject section */
|
||||||
|
|
||||||
/* Begin PBXResourcesBuildPhase section */
|
|
||||||
4CE4428718B6FC360017DF25 /* Resources */ = {
|
|
||||||
isa = PBXResourcesBuildPhase;
|
|
||||||
buildActionMask = 2147483647;
|
|
||||||
files = (
|
|
||||||
4CE4429718B6FC360017DF25 /* InfoPlist.strings in Resources */,
|
|
||||||
);
|
|
||||||
runOnlyForDeploymentPostprocessing = 0;
|
|
||||||
};
|
|
||||||
/* End PBXResourcesBuildPhase section */
|
|
||||||
|
|
||||||
/* Begin PBXSourcesBuildPhase section */
|
/* Begin PBXSourcesBuildPhase section */
|
||||||
4CE4427518B6FC360017DF25 /* Sources */ = {
|
4CE4427518B6FC360017DF25 /* Sources */ = {
|
||||||
isa = PBXSourcesBuildPhase;
|
isa = PBXSourcesBuildPhase;
|
||||||
@@ -416,18 +344,18 @@
|
|||||||
4CE4469B18BC5EAB0017DF25 /* pic_queue.cpp in Sources */,
|
4CE4469B18BC5EAB0017DF25 /* pic_queue.cpp in Sources */,
|
||||||
4CE4469F18BC5EAB0017DF25 /* welsDecoderExt.cpp in Sources */,
|
4CE4469F18BC5EAB0017DF25 /* welsDecoderExt.cpp in Sources */,
|
||||||
4CE4469318BC5EAB0017DF25 /* fmo.cpp in Sources */,
|
4CE4469318BC5EAB0017DF25 /* fmo.cpp in Sources */,
|
||||||
4CE4469D18BC5EAB0017DF25 /* utils.cpp in Sources */,
|
|
||||||
4CE4469118BC5EAB0017DF25 /* decoder_data_tables.cpp in Sources */,
|
4CE4469118BC5EAB0017DF25 /* decoder_data_tables.cpp in Sources */,
|
||||||
4CE4469718BC5EAB0017DF25 /* mem_align.cpp in Sources */,
|
4CE4469718BC5EAB0017DF25 /* mem_align.cpp in Sources */,
|
||||||
|
9ABF4382193EB60900A6BD61 /* expand_pic.cpp in Sources */,
|
||||||
4CE4469518BC5EAB0017DF25 /* manage_dec_ref.cpp in Sources */,
|
4CE4469518BC5EAB0017DF25 /* manage_dec_ref.cpp in Sources */,
|
||||||
4CE4468A18BC5EAB0017DF25 /* au_parser.cpp in Sources */,
|
4CE4468A18BC5EAB0017DF25 /* au_parser.cpp in Sources */,
|
||||||
4CE4469218BC5EAB0017DF25 /* expand_pic.cpp in Sources */,
|
|
||||||
4CE4469918BC5EAB0017DF25 /* mv_pred.cpp in Sources */,
|
4CE4469918BC5EAB0017DF25 /* mv_pred.cpp in Sources */,
|
||||||
4CE447AC18BC6BE90017DF25 /* block_add_neon.S in Sources */,
|
4CE447AC18BC6BE90017DF25 /* block_add_neon.S in Sources */,
|
||||||
4CE4469418BC5EAB0017DF25 /* get_intra_predictor.cpp in Sources */,
|
4CE4469418BC5EAB0017DF25 /* get_intra_predictor.cpp in Sources */,
|
||||||
|
9AED66561946A1DE009A3567 /* welsCodecTrace.cpp in Sources */,
|
||||||
F0B204FC18FD23D8005DA23F /* error_concealment.cpp in Sources */,
|
F0B204FC18FD23D8005DA23F /* error_concealment.cpp in Sources */,
|
||||||
|
4CBC1B81194AC4E100214D9E /* intra_pred_aarch64_neon.S in Sources */,
|
||||||
4CE4469018BC5EAB0017DF25 /* decoder_core.cpp in Sources */,
|
4CE4469018BC5EAB0017DF25 /* decoder_core.cpp in Sources */,
|
||||||
4CE4469E18BC5EAB0017DF25 /* welsCodecTrace.cpp in Sources */,
|
|
||||||
4CE447AE18BC6BE90017DF25 /* intra_pred_neon.S in Sources */,
|
4CE447AE18BC6BE90017DF25 /* intra_pred_neon.S in Sources */,
|
||||||
4CE4469618BC5EAB0017DF25 /* mc.cpp in Sources */,
|
4CE4469618BC5EAB0017DF25 /* mc.cpp in Sources */,
|
||||||
4CE4469C18BC5EAB0017DF25 /* rec_mb.cpp in Sources */,
|
4CE4469C18BC5EAB0017DF25 /* rec_mb.cpp in Sources */,
|
||||||
@@ -435,47 +363,20 @@
|
|||||||
4CE4468D18BC5EAB0017DF25 /* decode_mb_aux.cpp in Sources */,
|
4CE4468D18BC5EAB0017DF25 /* decode_mb_aux.cpp in Sources */,
|
||||||
4CE4468E18BC5EAB0017DF25 /* decode_slice.cpp in Sources */,
|
4CE4468E18BC5EAB0017DF25 /* decode_slice.cpp in Sources */,
|
||||||
4CE4468F18BC5EAB0017DF25 /* decoder.cpp in Sources */,
|
4CE4468F18BC5EAB0017DF25 /* decoder.cpp in Sources */,
|
||||||
|
9AED66591946A203009A3567 /* utils.cpp in Sources */,
|
||||||
4CE4469818BC5EAB0017DF25 /* memmgr_nal_unit.cpp in Sources */,
|
4CE4469818BC5EAB0017DF25 /* memmgr_nal_unit.cpp in Sources */,
|
||||||
4CE4468C18BC5EAB0017DF25 /* deblocking.cpp in Sources */,
|
4CE4468C18BC5EAB0017DF25 /* deblocking.cpp in Sources */,
|
||||||
4CE4469A18BC5EAB0017DF25 /* parse_mb_syn_cavlc.cpp in Sources */,
|
4CE4469A18BC5EAB0017DF25 /* parse_mb_syn_cavlc.cpp in Sources */,
|
||||||
);
|
);
|
||||||
runOnlyForDeploymentPostprocessing = 0;
|
runOnlyForDeploymentPostprocessing = 0;
|
||||||
};
|
};
|
||||||
4CE4428518B6FC360017DF25 /* Sources */ = {
|
|
||||||
isa = PBXSourcesBuildPhase;
|
|
||||||
buildActionMask = 2147483647;
|
|
||||||
files = (
|
|
||||||
4CE4429918B6FC360017DF25 /* welsdecTests.m in Sources */,
|
|
||||||
);
|
|
||||||
runOnlyForDeploymentPostprocessing = 0;
|
|
||||||
};
|
|
||||||
/* End PBXSourcesBuildPhase section */
|
/* End PBXSourcesBuildPhase section */
|
||||||
|
|
||||||
/* Begin PBXTargetDependency section */
|
|
||||||
4CE4429018B6FC360017DF25 /* PBXTargetDependency */ = {
|
|
||||||
isa = PBXTargetDependency;
|
|
||||||
target = 4CE4427818B6FC360017DF25 /* welsdec */;
|
|
||||||
targetProxy = 4CE4428F18B6FC360017DF25 /* PBXContainerItemProxy */;
|
|
||||||
};
|
|
||||||
/* End PBXTargetDependency section */
|
|
||||||
|
|
||||||
/* Begin PBXVariantGroup section */
|
|
||||||
4CE4429518B6FC360017DF25 /* InfoPlist.strings */ = {
|
|
||||||
isa = PBXVariantGroup;
|
|
||||||
children = (
|
|
||||||
4CE4429618B6FC360017DF25 /* en */,
|
|
||||||
);
|
|
||||||
name = InfoPlist.strings;
|
|
||||||
sourceTree = "<group>";
|
|
||||||
};
|
|
||||||
/* End PBXVariantGroup section */
|
|
||||||
|
|
||||||
/* Begin XCBuildConfiguration section */
|
/* Begin XCBuildConfiguration section */
|
||||||
4CE4429A18B6FC360017DF25 /* Debug */ = {
|
4CE4429A18B6FC360017DF25 /* Debug */ = {
|
||||||
isa = XCBuildConfiguration;
|
isa = XCBuildConfiguration;
|
||||||
buildSettings = {
|
buildSettings = {
|
||||||
ALWAYS_SEARCH_USER_PATHS = NO;
|
ALWAYS_SEARCH_USER_PATHS = NO;
|
||||||
ARCHS = "$(ARCHS_STANDARD_INCLUDING_64_BIT)";
|
|
||||||
CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
|
CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
|
||||||
CLANG_CXX_LIBRARY = "libc++";
|
CLANG_CXX_LIBRARY = "libc++";
|
||||||
CLANG_ENABLE_MODULES = YES;
|
CLANG_ENABLE_MODULES = YES;
|
||||||
@@ -513,7 +414,6 @@
|
|||||||
isa = XCBuildConfiguration;
|
isa = XCBuildConfiguration;
|
||||||
buildSettings = {
|
buildSettings = {
|
||||||
ALWAYS_SEARCH_USER_PATHS = NO;
|
ALWAYS_SEARCH_USER_PATHS = NO;
|
||||||
ARCHS = "$(ARCHS_STANDARD_INCLUDING_64_BIT)";
|
|
||||||
CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
|
CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
|
||||||
CLANG_CXX_LIBRARY = "libc++";
|
CLANG_CXX_LIBRARY = "libc++";
|
||||||
CLANG_ENABLE_MODULES = YES;
|
CLANG_ENABLE_MODULES = YES;
|
||||||
@@ -544,7 +444,6 @@
|
|||||||
4CE4429D18B6FC360017DF25 /* Debug */ = {
|
4CE4429D18B6FC360017DF25 /* Debug */ = {
|
||||||
isa = XCBuildConfiguration;
|
isa = XCBuildConfiguration;
|
||||||
buildSettings = {
|
buildSettings = {
|
||||||
ARCHS = "$(ARCHS_STANDARD)";
|
|
||||||
CLANG_CXX_LANGUAGE_STANDARD = "compiler-default";
|
CLANG_CXX_LANGUAGE_STANDARD = "compiler-default";
|
||||||
CLANG_CXX_LIBRARY = "compiler-default";
|
CLANG_CXX_LIBRARY = "compiler-default";
|
||||||
CODE_SIGN_IDENTITY = "iPhone Developer";
|
CODE_SIGN_IDENTITY = "iPhone Developer";
|
||||||
@@ -568,8 +467,10 @@
|
|||||||
"$(SRCROOT)/../../../../common/inc",
|
"$(SRCROOT)/../../../../common/inc",
|
||||||
"$(SRCROOT)/../../../../api/svc",
|
"$(SRCROOT)/../../../../api/svc",
|
||||||
"$(SRCROOT)/../../../../common/arm",
|
"$(SRCROOT)/../../../../common/arm",
|
||||||
|
"$(SRCROOT)/../../../../common/arm64",
|
||||||
);
|
);
|
||||||
IPHONEOS_DEPLOYMENT_TARGET = 6.1;
|
IPHONEOS_DEPLOYMENT_TARGET = 6.1;
|
||||||
|
ONLY_ACTIVE_ARCH = NO;
|
||||||
OTHER_LDFLAGS = "-ObjC";
|
OTHER_LDFLAGS = "-ObjC";
|
||||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||||
SKIP_INSTALL = YES;
|
SKIP_INSTALL = YES;
|
||||||
@@ -580,7 +481,6 @@
|
|||||||
4CE4429E18B6FC360017DF25 /* Release */ = {
|
4CE4429E18B6FC360017DF25 /* Release */ = {
|
||||||
isa = XCBuildConfiguration;
|
isa = XCBuildConfiguration;
|
||||||
buildSettings = {
|
buildSettings = {
|
||||||
ARCHS = "$(ARCHS_STANDARD)";
|
|
||||||
CLANG_CXX_LANGUAGE_STANDARD = "compiler-default";
|
CLANG_CXX_LANGUAGE_STANDARD = "compiler-default";
|
||||||
CLANG_CXX_LIBRARY = "compiler-default";
|
CLANG_CXX_LIBRARY = "compiler-default";
|
||||||
CODE_SIGN_IDENTITY = "iPhone Developer";
|
CODE_SIGN_IDENTITY = "iPhone Developer";
|
||||||
@@ -602,8 +502,10 @@
|
|||||||
"$(SRCROOT)/../../../../common/inc",
|
"$(SRCROOT)/../../../../common/inc",
|
||||||
"$(SRCROOT)/../../../../api/svc",
|
"$(SRCROOT)/../../../../api/svc",
|
||||||
"$(SRCROOT)/../../../../common/arm",
|
"$(SRCROOT)/../../../../common/arm",
|
||||||
|
"$(SRCROOT)/../../../../common/arm64",
|
||||||
);
|
);
|
||||||
IPHONEOS_DEPLOYMENT_TARGET = 6.1;
|
IPHONEOS_DEPLOYMENT_TARGET = 6.1;
|
||||||
|
ONLY_ACTIVE_ARCH = NO;
|
||||||
OTHER_LDFLAGS = "-ObjC";
|
OTHER_LDFLAGS = "-ObjC";
|
||||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||||
SKIP_INSTALL = YES;
|
SKIP_INSTALL = YES;
|
||||||
@@ -611,44 +513,6 @@
|
|||||||
};
|
};
|
||||||
name = Release;
|
name = Release;
|
||||||
};
|
};
|
||||||
4CE442A018B6FC360017DF25 /* Debug */ = {
|
|
||||||
isa = XCBuildConfiguration;
|
|
||||||
buildSettings = {
|
|
||||||
ARCHS = "$(ARCHS_STANDARD_INCLUDING_64_BIT)";
|
|
||||||
FRAMEWORK_SEARCH_PATHS = (
|
|
||||||
"$(SDKROOT)/Developer/Library/Frameworks",
|
|
||||||
"$(inherited)",
|
|
||||||
"$(DEVELOPER_FRAMEWORKS_DIR)",
|
|
||||||
);
|
|
||||||
GCC_PRECOMPILE_PREFIX_HEADER = YES;
|
|
||||||
GCC_PREFIX_HEADER = "welsdec/welsdec-Prefix.pch";
|
|
||||||
GCC_PREPROCESSOR_DEFINITIONS = (
|
|
||||||
"DEBUG=1",
|
|
||||||
"$(inherited)",
|
|
||||||
);
|
|
||||||
INFOPLIST_FILE = "welsdecTests/welsdecTests-Info.plist";
|
|
||||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
|
||||||
WRAPPER_EXTENSION = xctest;
|
|
||||||
};
|
|
||||||
name = Debug;
|
|
||||||
};
|
|
||||||
4CE442A118B6FC360017DF25 /* Release */ = {
|
|
||||||
isa = XCBuildConfiguration;
|
|
||||||
buildSettings = {
|
|
||||||
ARCHS = "$(ARCHS_STANDARD_INCLUDING_64_BIT)";
|
|
||||||
FRAMEWORK_SEARCH_PATHS = (
|
|
||||||
"$(SDKROOT)/Developer/Library/Frameworks",
|
|
||||||
"$(inherited)",
|
|
||||||
"$(DEVELOPER_FRAMEWORKS_DIR)",
|
|
||||||
);
|
|
||||||
GCC_PRECOMPILE_PREFIX_HEADER = YES;
|
|
||||||
GCC_PREFIX_HEADER = "welsdec/welsdec-Prefix.pch";
|
|
||||||
INFOPLIST_FILE = "welsdecTests/welsdecTests-Info.plist";
|
|
||||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
|
||||||
WRAPPER_EXTENSION = xctest;
|
|
||||||
};
|
|
||||||
name = Release;
|
|
||||||
};
|
|
||||||
/* End XCBuildConfiguration section */
|
/* End XCBuildConfiguration section */
|
||||||
|
|
||||||
/* Begin XCConfigurationList section */
|
/* Begin XCConfigurationList section */
|
||||||
@@ -670,15 +534,6 @@
|
|||||||
defaultConfigurationIsVisible = 0;
|
defaultConfigurationIsVisible = 0;
|
||||||
defaultConfigurationName = Release;
|
defaultConfigurationName = Release;
|
||||||
};
|
};
|
||||||
4CE4429F18B6FC360017DF25 /* Build configuration list for PBXNativeTarget "welsdecTests" */ = {
|
|
||||||
isa = XCConfigurationList;
|
|
||||||
buildConfigurations = (
|
|
||||||
4CE442A018B6FC360017DF25 /* Debug */,
|
|
||||||
4CE442A118B6FC360017DF25 /* Release */,
|
|
||||||
);
|
|
||||||
defaultConfigurationIsVisible = 0;
|
|
||||||
defaultConfigurationName = Release;
|
|
||||||
};
|
|
||||||
/* End XCConfigurationList section */
|
/* End XCConfigurationList section */
|
||||||
};
|
};
|
||||||
rootObject = 4CE4427118B6FC360017DF25 /* Project object */;
|
rootObject = 4CE4427118B6FC360017DF25 /* Project object */;
|
||||||
|
|||||||
@@ -1,2 +0,0 @@
|
|||||||
/* Localized versions of Info.plist keys */
|
|
||||||
|
|
||||||
@@ -1,22 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
|
||||||
<plist version="1.0">
|
|
||||||
<dict>
|
|
||||||
<key>CFBundleDevelopmentRegion</key>
|
|
||||||
<string>en</string>
|
|
||||||
<key>CFBundleExecutable</key>
|
|
||||||
<string>${EXECUTABLE_NAME}</string>
|
|
||||||
<key>CFBundleIdentifier</key>
|
|
||||||
<string>cisco.${PRODUCT_NAME:rfc1034identifier}</string>
|
|
||||||
<key>CFBundleInfoDictionaryVersion</key>
|
|
||||||
<string>6.0</string>
|
|
||||||
<key>CFBundlePackageType</key>
|
|
||||||
<string>BNDL</string>
|
|
||||||
<key>CFBundleShortVersionString</key>
|
|
||||||
<string>1.0</string>
|
|
||||||
<key>CFBundleSignature</key>
|
|
||||||
<string>????</string>
|
|
||||||
<key>CFBundleVersion</key>
|
|
||||||
<string>1</string>
|
|
||||||
</dict>
|
|
||||||
</plist>
|
|
||||||
@@ -1,58 +0,0 @@
|
|||||||
/*!
|
|
||||||
* \copy
|
|
||||||
* Copyright (c) 2013, Cisco Systems
|
|
||||||
* All rights reserved.
|
|
||||||
*
|
|
||||||
* Redistribution and use in source and binary forms, with or without
|
|
||||||
* modification, are permitted provided that the following conditions
|
|
||||||
* are met:
|
|
||||||
*
|
|
||||||
* * Redistributions of source code must retain the above copyright
|
|
||||||
* notice, this list of conditions and the following disclaimer.
|
|
||||||
*
|
|
||||||
* * Redistributions in binary form must reproduce the above copyright
|
|
||||||
* notice, this list of conditions and the following disclaimer in
|
|
||||||
* the documentation and/or other materials provided with the
|
|
||||||
* distribution.
|
|
||||||
*
|
|
||||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
|
||||||
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
|
||||||
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
|
|
||||||
* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
|
|
||||||
* COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
|
|
||||||
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
|
|
||||||
* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
|
||||||
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
|
|
||||||
* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
|
||||||
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
|
|
||||||
* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
|
||||||
* POSSIBILITY OF SUCH DAMAGE.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
|
|
||||||
#import <XCTest/XCTest.h>
|
|
||||||
|
|
||||||
@interface welsdecTests : XCTestCase
|
|
||||||
|
|
||||||
@end
|
|
||||||
|
|
||||||
@implementation welsdecTests
|
|
||||||
|
|
||||||
- (void)setUp
|
|
||||||
{
|
|
||||||
[super setUp];
|
|
||||||
// Put setup code here. This method is called before the invocation of each test method in the class.
|
|
||||||
}
|
|
||||||
|
|
||||||
- (void)tearDown
|
|
||||||
{
|
|
||||||
// Put teardown code here. This method is called after the invocation of each test method in the class.
|
|
||||||
[super tearDown];
|
|
||||||
}
|
|
||||||
|
|
||||||
- (void)testExample
|
|
||||||
{
|
|
||||||
XCTFail(@"No implementation for \"%s\"", __PRETTY_FUNCTION__);
|
|
||||||
}
|
|
||||||
|
|
||||||
@end
|
|
||||||
@@ -35,13 +35,6 @@
|
|||||||
remoteGlobalIDString = 4CE4431118B6FFA00017DF25;
|
remoteGlobalIDString = 4CE4431118B6FFA00017DF25;
|
||||||
remoteInfo = welsenc;
|
remoteInfo = welsenc;
|
||||||
};
|
};
|
||||||
FAFB4FE918BC8E7D00315438 /* PBXContainerItemProxy */ = {
|
|
||||||
isa = PBXContainerItemProxy;
|
|
||||||
containerPortal = FAFB4FE218BC8E7C00315438 /* welsenc.xcodeproj */;
|
|
||||||
proxyType = 2;
|
|
||||||
remoteGlobalIDString = 4CE4432118B6FFA00017DF25;
|
|
||||||
remoteInfo = welsencTests;
|
|
||||||
};
|
|
||||||
FAFB4FF018BC8E8600315438 /* PBXContainerItemProxy */ = {
|
FAFB4FF018BC8E8600315438 /* PBXContainerItemProxy */ = {
|
||||||
isa = PBXContainerItemProxy;
|
isa = PBXContainerItemProxy;
|
||||||
containerPortal = FAFB4FEB18BC8E8600315438 /* common.xcodeproj */;
|
containerPortal = FAFB4FEB18BC8E8600315438 /* common.xcodeproj */;
|
||||||
@@ -49,13 +42,6 @@
|
|||||||
remoteGlobalIDString = 4CE443D518B722CD0017DF25;
|
remoteGlobalIDString = 4CE443D518B722CD0017DF25;
|
||||||
remoteInfo = common;
|
remoteInfo = common;
|
||||||
};
|
};
|
||||||
FAFB4FF218BC8E8600315438 /* PBXContainerItemProxy */ = {
|
|
||||||
isa = PBXContainerItemProxy;
|
|
||||||
containerPortal = FAFB4FEB18BC8E8600315438 /* common.xcodeproj */;
|
|
||||||
proxyType = 2;
|
|
||||||
remoteGlobalIDString = 4CE443E518B722CD0017DF25;
|
|
||||||
remoteInfo = commonTests;
|
|
||||||
};
|
|
||||||
FAFB4FF918BC8E9A00315438 /* PBXContainerItemProxy */ = {
|
FAFB4FF918BC8E9A00315438 /* PBXContainerItemProxy */ = {
|
||||||
isa = PBXContainerItemProxy;
|
isa = PBXContainerItemProxy;
|
||||||
containerPortal = FAFB4FF418BC8E9A00315438 /* processing.xcodeproj */;
|
containerPortal = FAFB4FF418BC8E9A00315438 /* processing.xcodeproj */;
|
||||||
@@ -63,13 +49,6 @@
|
|||||||
remoteGlobalIDString = 4CE4443118B724B60017DF25;
|
remoteGlobalIDString = 4CE4443118B724B60017DF25;
|
||||||
remoteInfo = processing;
|
remoteInfo = processing;
|
||||||
};
|
};
|
||||||
FAFB4FFB18BC8E9A00315438 /* PBXContainerItemProxy */ = {
|
|
||||||
isa = PBXContainerItemProxy;
|
|
||||||
containerPortal = FAFB4FF418BC8E9A00315438 /* processing.xcodeproj */;
|
|
||||||
proxyType = 2;
|
|
||||||
remoteGlobalIDString = 4CE4444118B724B60017DF25;
|
|
||||||
remoteInfo = processingTests;
|
|
||||||
};
|
|
||||||
FAFB4FFD18BC8EAA00315438 /* PBXContainerItemProxy */ = {
|
FAFB4FFD18BC8EAA00315438 /* PBXContainerItemProxy */ = {
|
||||||
isa = PBXContainerItemProxy;
|
isa = PBXContainerItemProxy;
|
||||||
containerPortal = FAFB4FEB18BC8E8600315438 /* common.xcodeproj */;
|
containerPortal = FAFB4FEB18BC8E8600315438 /* common.xcodeproj */;
|
||||||
@@ -112,13 +91,12 @@
|
|||||||
FAFB4FC018BC8DD700315438 /* ViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = ViewController.h; sourceTree = "<group>"; };
|
FAFB4FC018BC8DD700315438 /* ViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = ViewController.h; sourceTree = "<group>"; };
|
||||||
FAFB4FC118BC8DD700315438 /* ViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = ViewController.m; sourceTree = "<group>"; };
|
FAFB4FC118BC8DD700315438 /* ViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = ViewController.m; sourceTree = "<group>"; };
|
||||||
FAFB4FC318BC8DD700315438 /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Images.xcassets; sourceTree = "<group>"; };
|
FAFB4FC318BC8DD700315438 /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Images.xcassets; sourceTree = "<group>"; };
|
||||||
FAFB4FCA18BC8DD700315438 /* XCTest.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = XCTest.framework; path = Library/Frameworks/XCTest.framework; sourceTree = DEVELOPER_DIR; };
|
|
||||||
FAFB4FE218BC8E7C00315438 /* welsenc.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = welsenc.xcodeproj; path = ../welsenc/welsenc.xcodeproj; sourceTree = "<group>"; };
|
FAFB4FE218BC8E7C00315438 /* welsenc.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = welsenc.xcodeproj; path = ../welsenc/welsenc.xcodeproj; sourceTree = "<group>"; };
|
||||||
FAFB4FEB18BC8E8600315438 /* common.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = common.xcodeproj; path = ../../common/common.xcodeproj; sourceTree = "<group>"; };
|
FAFB4FEB18BC8E8600315438 /* common.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = common.xcodeproj; path = ../../common/common.xcodeproj; sourceTree = "<group>"; };
|
||||||
FAFB4FF418BC8E9A00315438 /* processing.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = processing.xcodeproj; path = ../../../../processing/build/iOS/processing.xcodeproj; sourceTree = "<group>"; };
|
FAFB4FF418BC8E9A00315438 /* processing.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = processing.xcodeproj; path = ../../../../processing/build/iOS/processing.xcodeproj; sourceTree = "<group>"; };
|
||||||
FAFB500918BC8F6600315438 /* read_config.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = read_config.h; sourceTree = "<group>"; };
|
FAFB500918BC8F6600315438 /* read_config.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = read_config.h; sourceTree = "<group>"; };
|
||||||
FAFB500A18BC8F6C00315438 /* welsenc.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = welsenc.cpp; sourceTree = "<group>"; };
|
FAFB500A18BC8F6C00315438 /* welsenc.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = welsenc.cpp; sourceTree = "<group>"; };
|
||||||
FAFB502E18BCA50900315438 /* read_config.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = read_config.cpp; sourceTree = "<group>"; };
|
FAFB502E18BCA50900315438 /* read_config.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = read_config.cpp; path = ../../common/src/read_config.cpp; sourceTree = "<group>"; };
|
||||||
/* End PBXFileReference section */
|
/* End PBXFileReference section */
|
||||||
|
|
||||||
/* Begin PBXFrameworksBuildPhase section */
|
/* Begin PBXFrameworksBuildPhase section */
|
||||||
@@ -164,7 +142,6 @@
|
|||||||
FAFB4FA818BC8DD700315438 /* Foundation.framework */,
|
FAFB4FA818BC8DD700315438 /* Foundation.framework */,
|
||||||
FAFB4FAA18BC8DD700315438 /* CoreGraphics.framework */,
|
FAFB4FAA18BC8DD700315438 /* CoreGraphics.framework */,
|
||||||
FAFB4FAC18BC8DD700315438 /* UIKit.framework */,
|
FAFB4FAC18BC8DD700315438 /* UIKit.framework */,
|
||||||
FAFB4FCA18BC8DD700315438 /* XCTest.framework */,
|
|
||||||
);
|
);
|
||||||
name = Frameworks;
|
name = Frameworks;
|
||||||
sourceTree = "<group>";
|
sourceTree = "<group>";
|
||||||
@@ -203,7 +180,6 @@
|
|||||||
isa = PBXGroup;
|
isa = PBXGroup;
|
||||||
children = (
|
children = (
|
||||||
FAFB4FE818BC8E7D00315438 /* libwelsenc.a */,
|
FAFB4FE818BC8E7D00315438 /* libwelsenc.a */,
|
||||||
FAFB4FEA18BC8E7D00315438 /* welsencTests.xctest */,
|
|
||||||
);
|
);
|
||||||
name = Products;
|
name = Products;
|
||||||
sourceTree = "<group>";
|
sourceTree = "<group>";
|
||||||
@@ -212,7 +188,6 @@
|
|||||||
isa = PBXGroup;
|
isa = PBXGroup;
|
||||||
children = (
|
children = (
|
||||||
FAFB4FF118BC8E8600315438 /* libcommon.a */,
|
FAFB4FF118BC8E8600315438 /* libcommon.a */,
|
||||||
FAFB4FF318BC8E8600315438 /* commonTests.xctest */,
|
|
||||||
);
|
);
|
||||||
name = Products;
|
name = Products;
|
||||||
sourceTree = "<group>";
|
sourceTree = "<group>";
|
||||||
@@ -221,7 +196,6 @@
|
|||||||
isa = PBXGroup;
|
isa = PBXGroup;
|
||||||
children = (
|
children = (
|
||||||
FAFB4FFA18BC8E9A00315438 /* libprocessing.a */,
|
FAFB4FFA18BC8E9A00315438 /* libprocessing.a */,
|
||||||
FAFB4FFC18BC8E9A00315438 /* processingTests.xctest */,
|
|
||||||
);
|
);
|
||||||
name = Products;
|
name = Products;
|
||||||
sourceTree = "<group>";
|
sourceTree = "<group>";
|
||||||
@@ -250,7 +224,8 @@
|
|||||||
children = (
|
children = (
|
||||||
FAFB500918BC8F6600315438 /* read_config.h */,
|
FAFB500918BC8F6600315438 /* read_config.h */,
|
||||||
);
|
);
|
||||||
path = inc;
|
name = inc;
|
||||||
|
path = ../common/inc;
|
||||||
sourceTree = "<group>";
|
sourceTree = "<group>";
|
||||||
};
|
};
|
||||||
/* End PBXGroup section */
|
/* End PBXGroup section */
|
||||||
@@ -282,7 +257,7 @@
|
|||||||
FAFB4F9D18BC8DD700315438 /* Project object */ = {
|
FAFB4F9D18BC8DD700315438 /* Project object */ = {
|
||||||
isa = PBXProject;
|
isa = PBXProject;
|
||||||
attributes = {
|
attributes = {
|
||||||
LastUpgradeCheck = 0500;
|
LastUpgradeCheck = 0510;
|
||||||
ORGANIZATIONNAME = video;
|
ORGANIZATIONNAME = video;
|
||||||
};
|
};
|
||||||
buildConfigurationList = FAFB4FA018BC8DD700315438 /* Build configuration list for PBXProject "encDemo" */;
|
buildConfigurationList = FAFB4FA018BC8DD700315438 /* Build configuration list for PBXProject "encDemo" */;
|
||||||
@@ -325,13 +300,6 @@
|
|||||||
remoteRef = FAFB4FE718BC8E7D00315438 /* PBXContainerItemProxy */;
|
remoteRef = FAFB4FE718BC8E7D00315438 /* PBXContainerItemProxy */;
|
||||||
sourceTree = BUILT_PRODUCTS_DIR;
|
sourceTree = BUILT_PRODUCTS_DIR;
|
||||||
};
|
};
|
||||||
FAFB4FEA18BC8E7D00315438 /* welsencTests.xctest */ = {
|
|
||||||
isa = PBXReferenceProxy;
|
|
||||||
fileType = wrapper.cfbundle;
|
|
||||||
path = welsencTests.xctest;
|
|
||||||
remoteRef = FAFB4FE918BC8E7D00315438 /* PBXContainerItemProxy */;
|
|
||||||
sourceTree = BUILT_PRODUCTS_DIR;
|
|
||||||
};
|
|
||||||
FAFB4FF118BC8E8600315438 /* libcommon.a */ = {
|
FAFB4FF118BC8E8600315438 /* libcommon.a */ = {
|
||||||
isa = PBXReferenceProxy;
|
isa = PBXReferenceProxy;
|
||||||
fileType = archive.ar;
|
fileType = archive.ar;
|
||||||
@@ -339,13 +307,6 @@
|
|||||||
remoteRef = FAFB4FF018BC8E8600315438 /* PBXContainerItemProxy */;
|
remoteRef = FAFB4FF018BC8E8600315438 /* PBXContainerItemProxy */;
|
||||||
sourceTree = BUILT_PRODUCTS_DIR;
|
sourceTree = BUILT_PRODUCTS_DIR;
|
||||||
};
|
};
|
||||||
FAFB4FF318BC8E8600315438 /* commonTests.xctest */ = {
|
|
||||||
isa = PBXReferenceProxy;
|
|
||||||
fileType = wrapper.cfbundle;
|
|
||||||
path = commonTests.xctest;
|
|
||||||
remoteRef = FAFB4FF218BC8E8600315438 /* PBXContainerItemProxy */;
|
|
||||||
sourceTree = BUILT_PRODUCTS_DIR;
|
|
||||||
};
|
|
||||||
FAFB4FFA18BC8E9A00315438 /* libprocessing.a */ = {
|
FAFB4FFA18BC8E9A00315438 /* libprocessing.a */ = {
|
||||||
isa = PBXReferenceProxy;
|
isa = PBXReferenceProxy;
|
||||||
fileType = archive.ar;
|
fileType = archive.ar;
|
||||||
@@ -353,13 +314,6 @@
|
|||||||
remoteRef = FAFB4FF918BC8E9A00315438 /* PBXContainerItemProxy */;
|
remoteRef = FAFB4FF918BC8E9A00315438 /* PBXContainerItemProxy */;
|
||||||
sourceTree = BUILT_PRODUCTS_DIR;
|
sourceTree = BUILT_PRODUCTS_DIR;
|
||||||
};
|
};
|
||||||
FAFB4FFC18BC8E9A00315438 /* processingTests.xctest */ = {
|
|
||||||
isa = PBXReferenceProxy;
|
|
||||||
fileType = wrapper.cfbundle;
|
|
||||||
path = processingTests.xctest;
|
|
||||||
remoteRef = FAFB4FFB18BC8E9A00315438 /* PBXContainerItemProxy */;
|
|
||||||
sourceTree = BUILT_PRODUCTS_DIR;
|
|
||||||
};
|
|
||||||
/* End PBXReferenceProxy section */
|
/* End PBXReferenceProxy section */
|
||||||
|
|
||||||
/* Begin PBXResourcesBuildPhase section */
|
/* Begin PBXResourcesBuildPhase section */
|
||||||
@@ -444,7 +398,6 @@
|
|||||||
isa = XCBuildConfiguration;
|
isa = XCBuildConfiguration;
|
||||||
buildSettings = {
|
buildSettings = {
|
||||||
ALWAYS_SEARCH_USER_PATHS = NO;
|
ALWAYS_SEARCH_USER_PATHS = NO;
|
||||||
ARCHS = "$(ARCHS_STANDARD)";
|
|
||||||
CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
|
CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
|
||||||
CLANG_CXX_LIBRARY = "libc++";
|
CLANG_CXX_LIBRARY = "libc++";
|
||||||
CLANG_ENABLE_MODULES = YES;
|
CLANG_ENABLE_MODULES = YES;
|
||||||
@@ -477,7 +430,6 @@
|
|||||||
"$(inherited)",
|
"$(inherited)",
|
||||||
"/Applications/Xcode\\ 5.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include",
|
"/Applications/Xcode\\ 5.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include",
|
||||||
"\"$(SRCROOT)/../../../../api/svc\"",
|
"\"$(SRCROOT)/../../../../api/svc\"",
|
||||||
"\"$(SRCROOT)/../../../../common\"",
|
|
||||||
"\"$(SRCROOT)/../../../../processing/interface\"",
|
"\"$(SRCROOT)/../../../../processing/interface\"",
|
||||||
"\"$(SRCROOT)/../../../../encoder/core/inc\"",
|
"\"$(SRCROOT)/../../../../encoder/core/inc\"",
|
||||||
);
|
);
|
||||||
@@ -492,7 +444,6 @@
|
|||||||
isa = XCBuildConfiguration;
|
isa = XCBuildConfiguration;
|
||||||
buildSettings = {
|
buildSettings = {
|
||||||
ALWAYS_SEARCH_USER_PATHS = NO;
|
ALWAYS_SEARCH_USER_PATHS = NO;
|
||||||
ARCHS = "$(ARCHS_STANDARD)";
|
|
||||||
CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
|
CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
|
||||||
CLANG_CXX_LIBRARY = "libc++";
|
CLANG_CXX_LIBRARY = "libc++";
|
||||||
CLANG_ENABLE_MODULES = YES;
|
CLANG_ENABLE_MODULES = YES;
|
||||||
@@ -519,7 +470,6 @@
|
|||||||
"$(inherited)",
|
"$(inherited)",
|
||||||
"/Applications/Xcode\\ 5.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include",
|
"/Applications/Xcode\\ 5.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include",
|
||||||
"\"$(SRCROOT)/../../../../api/svc\"",
|
"\"$(SRCROOT)/../../../../api/svc\"",
|
||||||
"\"$(SRCROOT)/../../../../common\"",
|
|
||||||
"\"$(SRCROOT)/../../../../processing/interface\"",
|
"\"$(SRCROOT)/../../../../processing/interface\"",
|
||||||
"\"$(SRCROOT)/../../../../encoder/core/inc\"",
|
"\"$(SRCROOT)/../../../../encoder/core/inc\"",
|
||||||
);
|
);
|
||||||
@@ -533,7 +483,6 @@
|
|||||||
FAFB4FDB18BC8DD700315438 /* Debug */ = {
|
FAFB4FDB18BC8DD700315438 /* Debug */ = {
|
||||||
isa = XCBuildConfiguration;
|
isa = XCBuildConfiguration;
|
||||||
buildSettings = {
|
buildSettings = {
|
||||||
ARCHS = "$(ARCHS_STANDARD)";
|
|
||||||
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
|
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
|
||||||
ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = LaunchImage;
|
ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = LaunchImage;
|
||||||
GCC_PREPROCESSOR_DEFINITIONS = APPLE_IOS;
|
GCC_PREPROCESSOR_DEFINITIONS = APPLE_IOS;
|
||||||
@@ -552,7 +501,6 @@
|
|||||||
FAFB4FDC18BC8DD700315438 /* Release */ = {
|
FAFB4FDC18BC8DD700315438 /* Release */ = {
|
||||||
isa = XCBuildConfiguration;
|
isa = XCBuildConfiguration;
|
||||||
buildSettings = {
|
buildSettings = {
|
||||||
ARCHS = "$(ARCHS_STANDARD)";
|
|
||||||
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
|
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
|
||||||
ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = LaunchImage;
|
ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = LaunchImage;
|
||||||
GCC_PREPROCESSOR_DEFINITIONS = APPLE_IOS;
|
GCC_PREPROCESSOR_DEFINITIONS = APPLE_IOS;
|
||||||
|
|||||||
@@ -34,6 +34,6 @@
|
|||||||
|
|
||||||
@interface AppDelegate : UIResponder <UIApplicationDelegate>
|
@interface AppDelegate : UIResponder <UIApplicationDelegate>
|
||||||
|
|
||||||
@property (strong, nonatomic) UIWindow *window;
|
@property (strong, nonatomic) UIWindow* window;
|
||||||
|
|
||||||
@end
|
@end
|
||||||
|
|||||||
@@ -33,12 +33,12 @@
|
|||||||
#import <UIKit/UIKit.h>
|
#import <UIKit/UIKit.h>
|
||||||
|
|
||||||
@interface ViewController : UIViewController {
|
@interface ViewController : UIViewController {
|
||||||
UILabel * statusText_;
|
UILabel* statusText_;
|
||||||
}
|
}
|
||||||
|
|
||||||
@property (retain, nonatomic) IBOutlet UILabel * statusText;
|
@property (retain, nonatomic) IBOutlet UILabel* statusText;
|
||||||
|
|
||||||
-(IBAction) buttonPressed:(id)sender;
|
- (IBAction) buttonPressed: (id)sender;
|
||||||
|
|
||||||
|
|
||||||
@end
|
@end
|
||||||
|
|||||||
@@ -7,18 +7,15 @@
|
|||||||
objects = {
|
objects = {
|
||||||
|
|
||||||
/* Begin PBXBuildFile section */
|
/* Begin PBXBuildFile section */
|
||||||
|
4C23BC60195A77E0003B81FC /* intra_pred_sad_3_opt_aarch64_neon.S in Sources */ = {isa = PBXBuildFile; fileRef = 4C23BC5F195A77E0003B81FC /* intra_pred_sad_3_opt_aarch64_neon.S */; };
|
||||||
4C34066D18C57D0400DFA14A /* intra_pred_neon.S in Sources */ = {isa = PBXBuildFile; fileRef = 4C34066618C57D0400DFA14A /* intra_pred_neon.S */; };
|
4C34066D18C57D0400DFA14A /* intra_pred_neon.S in Sources */ = {isa = PBXBuildFile; fileRef = 4C34066618C57D0400DFA14A /* intra_pred_neon.S */; };
|
||||||
4C34066E18C57D0400DFA14A /* intra_pred_sad_3_opt_neon.S in Sources */ = {isa = PBXBuildFile; fileRef = 4C34066718C57D0400DFA14A /* intra_pred_sad_3_opt_neon.S */; };
|
4C34066E18C57D0400DFA14A /* intra_pred_sad_3_opt_neon.S in Sources */ = {isa = PBXBuildFile; fileRef = 4C34066718C57D0400DFA14A /* intra_pred_sad_3_opt_neon.S */; };
|
||||||
4C34067018C57D0400DFA14A /* memory_neon.S in Sources */ = {isa = PBXBuildFile; fileRef = 4C34066918C57D0400DFA14A /* memory_neon.S */; };
|
4C34067018C57D0400DFA14A /* memory_neon.S in Sources */ = {isa = PBXBuildFile; fileRef = 4C34066918C57D0400DFA14A /* memory_neon.S */; };
|
||||||
4C34067118C57D0400DFA14A /* pixel_neon.S in Sources */ = {isa = PBXBuildFile; fileRef = 4C34066A18C57D0400DFA14A /* pixel_neon.S */; };
|
4C34067118C57D0400DFA14A /* pixel_neon.S in Sources */ = {isa = PBXBuildFile; fileRef = 4C34066A18C57D0400DFA14A /* pixel_neon.S */; };
|
||||||
4C34067218C57D0400DFA14A /* reconstruct_neon.S in Sources */ = {isa = PBXBuildFile; fileRef = 4C34066B18C57D0400DFA14A /* reconstruct_neon.S */; };
|
4C34067218C57D0400DFA14A /* reconstruct_neon.S in Sources */ = {isa = PBXBuildFile; fileRef = 4C34066B18C57D0400DFA14A /* reconstruct_neon.S */; };
|
||||||
|
4CB8F2B419235FC5005D6386 /* pixel_aarch64_neon.S in Sources */ = {isa = PBXBuildFile; fileRef = 4CB8F2B319235FC5005D6386 /* pixel_aarch64_neon.S */; };
|
||||||
|
4CBC1B83194ACBB400214D9E /* intra_pred_aarch64_neon.S in Sources */ = {isa = PBXBuildFile; fileRef = 4CBC1B82194ACBB400214D9E /* intra_pred_aarch64_neon.S */; };
|
||||||
4CE4431518B6FFA00017DF25 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 4CE4431418B6FFA00017DF25 /* Foundation.framework */; };
|
4CE4431518B6FFA00017DF25 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 4CE4431418B6FFA00017DF25 /* Foundation.framework */; };
|
||||||
4CE4432318B6FFA00017DF25 /* XCTest.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 4CE4432218B6FFA00017DF25 /* XCTest.framework */; };
|
|
||||||
4CE4432418B6FFA00017DF25 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 4CE4431418B6FFA00017DF25 /* Foundation.framework */; };
|
|
||||||
4CE4432618B6FFA00017DF25 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 4CE4432518B6FFA00017DF25 /* UIKit.framework */; };
|
|
||||||
4CE4432918B6FFA00017DF25 /* libwelsenc.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 4CE4431118B6FFA00017DF25 /* libwelsenc.a */; };
|
|
||||||
4CE4432F18B6FFA00017DF25 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 4CE4432D18B6FFA00017DF25 /* InfoPlist.strings */; };
|
|
||||||
4CE4433118B6FFA00017DF25 /* welsencTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 4CE4433018B6FFA00017DF25 /* welsencTests.m */; };
|
|
||||||
4CE4470E18BC605C0017DF25 /* au_set.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4CE446DD18BC605C0017DF25 /* au_set.cpp */; };
|
4CE4470E18BC605C0017DF25 /* au_set.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4CE446DD18BC605C0017DF25 /* au_set.cpp */; };
|
||||||
4CE4470F18BC605C0017DF25 /* deblocking.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4CE446DE18BC605C0017DF25 /* deblocking.cpp */; };
|
4CE4470F18BC605C0017DF25 /* deblocking.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4CE446DE18BC605C0017DF25 /* deblocking.cpp */; };
|
||||||
4CE4471018BC605C0017DF25 /* decode_mb_aux.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4CE446DF18BC605C0017DF25 /* decode_mb_aux.cpp */; };
|
4CE4471018BC605C0017DF25 /* decode_mb_aux.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4CE446DF18BC605C0017DF25 /* decode_mb_aux.cpp */; };
|
||||||
@@ -26,7 +23,6 @@
|
|||||||
4CE4471218BC605C0017DF25 /* encoder.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4CE446E118BC605C0017DF25 /* encoder.cpp */; };
|
4CE4471218BC605C0017DF25 /* encoder.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4CE446E118BC605C0017DF25 /* encoder.cpp */; };
|
||||||
4CE4471318BC605C0017DF25 /* encoder_data_tables.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4CE446E218BC605C0017DF25 /* encoder_data_tables.cpp */; };
|
4CE4471318BC605C0017DF25 /* encoder_data_tables.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4CE446E218BC605C0017DF25 /* encoder_data_tables.cpp */; };
|
||||||
4CE4471418BC605C0017DF25 /* encoder_ext.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4CE446E318BC605C0017DF25 /* encoder_ext.cpp */; };
|
4CE4471418BC605C0017DF25 /* encoder_ext.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4CE446E318BC605C0017DF25 /* encoder_ext.cpp */; };
|
||||||
4CE4471518BC605C0017DF25 /* expand_pic.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4CE446E418BC605C0017DF25 /* expand_pic.cpp */; };
|
|
||||||
4CE4471618BC605C0017DF25 /* get_intra_predictor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4CE446E518BC605C0017DF25 /* get_intra_predictor.cpp */; };
|
4CE4471618BC605C0017DF25 /* get_intra_predictor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4CE446E518BC605C0017DF25 /* get_intra_predictor.cpp */; };
|
||||||
4CE4471718BC605C0017DF25 /* mc.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4CE446E618BC605C0017DF25 /* mc.cpp */; };
|
4CE4471718BC605C0017DF25 /* mc.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4CE446E618BC605C0017DF25 /* mc.cpp */; };
|
||||||
4CE4471818BC605C0017DF25 /* md.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4CE446E718BC605C0017DF25 /* md.cpp */; };
|
4CE4471818BC605C0017DF25 /* md.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4CE446E718BC605C0017DF25 /* md.cpp */; };
|
||||||
@@ -47,22 +43,14 @@
|
|||||||
4CE4472718BC605C0017DF25 /* svc_mode_decision.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4CE446F618BC605C0017DF25 /* svc_mode_decision.cpp */; };
|
4CE4472718BC605C0017DF25 /* svc_mode_decision.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4CE446F618BC605C0017DF25 /* svc_mode_decision.cpp */; };
|
||||||
4CE4472818BC605C0017DF25 /* svc_motion_estimate.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4CE446F718BC605C0017DF25 /* svc_motion_estimate.cpp */; };
|
4CE4472818BC605C0017DF25 /* svc_motion_estimate.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4CE446F718BC605C0017DF25 /* svc_motion_estimate.cpp */; };
|
||||||
4CE4472918BC605C0017DF25 /* svc_set_mb_syn_cavlc.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4CE446F818BC605C0017DF25 /* svc_set_mb_syn_cavlc.cpp */; };
|
4CE4472918BC605C0017DF25 /* svc_set_mb_syn_cavlc.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4CE446F818BC605C0017DF25 /* svc_set_mb_syn_cavlc.cpp */; };
|
||||||
4CE4472A18BC605C0017DF25 /* utils.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4CE446F918BC605C0017DF25 /* utils.cpp */; };
|
|
||||||
4CE4472B18BC605C0017DF25 /* wels_preprocess.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4CE446FA18BC605C0017DF25 /* wels_preprocess.cpp */; };
|
4CE4472B18BC605C0017DF25 /* wels_preprocess.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4CE446FA18BC605C0017DF25 /* wels_preprocess.cpp */; };
|
||||||
4CE4472D18BC605C0017DF25 /* welsCodecTrace.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4CE4470518BC605C0017DF25 /* welsCodecTrace.cpp */; };
|
|
||||||
4CE4472E18BC605C0017DF25 /* welsEncoderExt.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4CE4470618BC605C0017DF25 /* welsEncoderExt.cpp */; };
|
4CE4472E18BC605C0017DF25 /* welsEncoderExt.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4CE4470618BC605C0017DF25 /* welsEncoderExt.cpp */; };
|
||||||
|
9AED665019469FC1009A3567 /* welsCodecTrace.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9AED664C19469FC1009A3567 /* welsCodecTrace.cpp */; };
|
||||||
|
9AED66661946A2B3009A3567 /* utils.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9AED66651946A2B3009A3567 /* utils.cpp */; };
|
||||||
|
F5617A50196A833A006E2B20 /* reconstruct_aarch64_neon.S in Sources */ = {isa = PBXBuildFile; fileRef = F5617A4F196A833A006E2B20 /* reconstruct_aarch64_neon.S */; };
|
||||||
|
F5BE8005196B913200ED02ED /* memory_aarch64_neon.S in Sources */ = {isa = PBXBuildFile; fileRef = F5BE8004196B913200ED02ED /* memory_aarch64_neon.S */; };
|
||||||
/* End PBXBuildFile section */
|
/* End PBXBuildFile section */
|
||||||
|
|
||||||
/* Begin PBXContainerItemProxy section */
|
|
||||||
4CE4432718B6FFA00017DF25 /* PBXContainerItemProxy */ = {
|
|
||||||
isa = PBXContainerItemProxy;
|
|
||||||
containerPortal = 4CE4430918B6FFA00017DF25 /* Project object */;
|
|
||||||
proxyType = 1;
|
|
||||||
remoteGlobalIDString = 4CE4431018B6FFA00017DF25;
|
|
||||||
remoteInfo = welsenc;
|
|
||||||
};
|
|
||||||
/* End PBXContainerItemProxy section */
|
|
||||||
|
|
||||||
/* Begin PBXCopyFilesBuildPhase section */
|
/* Begin PBXCopyFilesBuildPhase section */
|
||||||
4CE4430F18B6FFA00017DF25 /* CopyFiles */ = {
|
4CE4430F18B6FFA00017DF25 /* CopyFiles */ = {
|
||||||
isa = PBXCopyFilesBuildPhase;
|
isa = PBXCopyFilesBuildPhase;
|
||||||
@@ -76,20 +64,18 @@
|
|||||||
/* End PBXCopyFilesBuildPhase section */
|
/* End PBXCopyFilesBuildPhase section */
|
||||||
|
|
||||||
/* Begin PBXFileReference section */
|
/* Begin PBXFileReference section */
|
||||||
|
4C23BC5F195A77E0003B81FC /* intra_pred_sad_3_opt_aarch64_neon.S */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.asm; name = intra_pred_sad_3_opt_aarch64_neon.S; path = arm64/intra_pred_sad_3_opt_aarch64_neon.S; sourceTree = "<group>"; };
|
||||||
4C34066618C57D0400DFA14A /* intra_pred_neon.S */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.asm; path = intra_pred_neon.S; sourceTree = "<group>"; };
|
4C34066618C57D0400DFA14A /* intra_pred_neon.S */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.asm; path = intra_pred_neon.S; sourceTree = "<group>"; };
|
||||||
4C34066718C57D0400DFA14A /* intra_pred_sad_3_opt_neon.S */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.asm; path = intra_pred_sad_3_opt_neon.S; sourceTree = "<group>"; };
|
4C34066718C57D0400DFA14A /* intra_pred_sad_3_opt_neon.S */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.asm; path = intra_pred_sad_3_opt_neon.S; sourceTree = "<group>"; };
|
||||||
4C34066918C57D0400DFA14A /* memory_neon.S */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.asm; path = memory_neon.S; sourceTree = "<group>"; };
|
4C34066918C57D0400DFA14A /* memory_neon.S */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.asm; path = memory_neon.S; sourceTree = "<group>"; };
|
||||||
4C34066A18C57D0400DFA14A /* pixel_neon.S */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.asm; path = pixel_neon.S; sourceTree = "<group>"; };
|
4C34066A18C57D0400DFA14A /* pixel_neon.S */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.asm; path = pixel_neon.S; sourceTree = "<group>"; };
|
||||||
4C34066B18C57D0400DFA14A /* reconstruct_neon.S */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.asm; path = reconstruct_neon.S; sourceTree = "<group>"; };
|
4C34066B18C57D0400DFA14A /* reconstruct_neon.S */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.asm; path = reconstruct_neon.S; sourceTree = "<group>"; };
|
||||||
|
4CB8F2B319235FC5005D6386 /* pixel_aarch64_neon.S */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.asm; name = pixel_aarch64_neon.S; path = arm64/pixel_aarch64_neon.S; sourceTree = "<group>"; };
|
||||||
|
4CBC1B82194ACBB400214D9E /* intra_pred_aarch64_neon.S */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.asm; name = intra_pred_aarch64_neon.S; path = arm64/intra_pred_aarch64_neon.S; sourceTree = "<group>"; };
|
||||||
4CDBFB9D18E5068D0025A767 /* wels_transpose_matrix.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = wels_transpose_matrix.h; sourceTree = "<group>"; };
|
4CDBFB9D18E5068D0025A767 /* wels_transpose_matrix.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = wels_transpose_matrix.h; sourceTree = "<group>"; };
|
||||||
4CE4431118B6FFA00017DF25 /* libwelsenc.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libwelsenc.a; sourceTree = BUILT_PRODUCTS_DIR; };
|
4CE4431118B6FFA00017DF25 /* libwelsenc.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libwelsenc.a; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||||
4CE4431418B6FFA00017DF25 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; };
|
4CE4431418B6FFA00017DF25 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; };
|
||||||
4CE4432118B6FFA00017DF25 /* welsencTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = welsencTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };
|
|
||||||
4CE4432218B6FFA00017DF25 /* XCTest.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = XCTest.framework; path = Library/Frameworks/XCTest.framework; sourceTree = DEVELOPER_DIR; };
|
|
||||||
4CE4432518B6FFA00017DF25 /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = Library/Frameworks/UIKit.framework; sourceTree = DEVELOPER_DIR; };
|
4CE4432518B6FFA00017DF25 /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = Library/Frameworks/UIKit.framework; sourceTree = DEVELOPER_DIR; };
|
||||||
4CE4432C18B6FFA00017DF25 /* welsencTests-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "welsencTests-Info.plist"; sourceTree = "<group>"; };
|
|
||||||
4CE4432E18B6FFA00017DF25 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/InfoPlist.strings; sourceTree = "<group>"; };
|
|
||||||
4CE4433018B6FFA00017DF25 /* welsencTests.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = welsencTests.m; sourceTree = "<group>"; };
|
|
||||||
4CE446AA18BC605C0017DF25 /* as264_common.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = as264_common.h; sourceTree = "<group>"; };
|
4CE446AA18BC605C0017DF25 /* as264_common.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = as264_common.h; sourceTree = "<group>"; };
|
||||||
4CE446AB18BC605C0017DF25 /* au_set.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = au_set.h; sourceTree = "<group>"; };
|
4CE446AB18BC605C0017DF25 /* au_set.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = au_set.h; sourceTree = "<group>"; };
|
||||||
4CE446AC18BC605C0017DF25 /* bit_stream.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = bit_stream.h; sourceTree = "<group>"; };
|
4CE446AC18BC605C0017DF25 /* bit_stream.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = bit_stream.h; sourceTree = "<group>"; };
|
||||||
@@ -99,7 +85,6 @@
|
|||||||
4CE446B118BC605C0017DF25 /* encode_mb_aux.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = encode_mb_aux.h; sourceTree = "<group>"; };
|
4CE446B118BC605C0017DF25 /* encode_mb_aux.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = encode_mb_aux.h; sourceTree = "<group>"; };
|
||||||
4CE446B218BC605C0017DF25 /* encoder.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = encoder.h; sourceTree = "<group>"; };
|
4CE446B218BC605C0017DF25 /* encoder.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = encoder.h; sourceTree = "<group>"; };
|
||||||
4CE446B318BC605C0017DF25 /* encoder_context.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = encoder_context.h; sourceTree = "<group>"; };
|
4CE446B318BC605C0017DF25 /* encoder_context.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = encoder_context.h; sourceTree = "<group>"; };
|
||||||
4CE446B418BC605C0017DF25 /* expand_pic.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = expand_pic.h; sourceTree = "<group>"; };
|
|
||||||
4CE446B518BC605C0017DF25 /* extern.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = extern.h; sourceTree = "<group>"; };
|
4CE446B518BC605C0017DF25 /* extern.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = extern.h; sourceTree = "<group>"; };
|
||||||
4CE446B618BC605C0017DF25 /* get_intra_predictor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = get_intra_predictor.h; sourceTree = "<group>"; };
|
4CE446B618BC605C0017DF25 /* get_intra_predictor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = get_intra_predictor.h; sourceTree = "<group>"; };
|
||||||
4CE446B718BC605C0017DF25 /* mb_cache.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = mb_cache.h; sourceTree = "<group>"; };
|
4CE446B718BC605C0017DF25 /* mb_cache.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = mb_cache.h; sourceTree = "<group>"; };
|
||||||
@@ -123,7 +108,6 @@
|
|||||||
4CE446C918BC605C0017DF25 /* slice_multi_threading.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = slice_multi_threading.h; sourceTree = "<group>"; };
|
4CE446C918BC605C0017DF25 /* slice_multi_threading.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = slice_multi_threading.h; sourceTree = "<group>"; };
|
||||||
4CE446CA18BC605C0017DF25 /* stat.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = stat.h; sourceTree = "<group>"; };
|
4CE446CA18BC605C0017DF25 /* stat.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = stat.h; sourceTree = "<group>"; };
|
||||||
4CE446CB18BC605C0017DF25 /* svc_base_layer_md.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = svc_base_layer_md.h; sourceTree = "<group>"; };
|
4CE446CB18BC605C0017DF25 /* svc_base_layer_md.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = svc_base_layer_md.h; sourceTree = "<group>"; };
|
||||||
4CE446CC18BC605C0017DF25 /* svc_config.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = svc_config.h; sourceTree = "<group>"; };
|
|
||||||
4CE446CD18BC605C0017DF25 /* svc_enc_frame.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = svc_enc_frame.h; sourceTree = "<group>"; };
|
4CE446CD18BC605C0017DF25 /* svc_enc_frame.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = svc_enc_frame.h; sourceTree = "<group>"; };
|
||||||
4CE446CE18BC605C0017DF25 /* svc_enc_golomb.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = svc_enc_golomb.h; sourceTree = "<group>"; };
|
4CE446CE18BC605C0017DF25 /* svc_enc_golomb.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = svc_enc_golomb.h; sourceTree = "<group>"; };
|
||||||
4CE446CF18BC605C0017DF25 /* svc_enc_macroblock.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = svc_enc_macroblock.h; sourceTree = "<group>"; };
|
4CE446CF18BC605C0017DF25 /* svc_enc_macroblock.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = svc_enc_macroblock.h; sourceTree = "<group>"; };
|
||||||
@@ -133,7 +117,6 @@
|
|||||||
4CE446D318BC605C0017DF25 /* svc_mode_decision.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = svc_mode_decision.h; sourceTree = "<group>"; };
|
4CE446D318BC605C0017DF25 /* svc_mode_decision.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = svc_mode_decision.h; sourceTree = "<group>"; };
|
||||||
4CE446D418BC605C0017DF25 /* svc_motion_estimate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = svc_motion_estimate.h; sourceTree = "<group>"; };
|
4CE446D418BC605C0017DF25 /* svc_motion_estimate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = svc_motion_estimate.h; sourceTree = "<group>"; };
|
||||||
4CE446D518BC605C0017DF25 /* svc_set_mb_syn_cavlc.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = svc_set_mb_syn_cavlc.h; sourceTree = "<group>"; };
|
4CE446D518BC605C0017DF25 /* svc_set_mb_syn_cavlc.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = svc_set_mb_syn_cavlc.h; sourceTree = "<group>"; };
|
||||||
4CE446D618BC605C0017DF25 /* utils.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = utils.h; sourceTree = "<group>"; };
|
|
||||||
4CE446D718BC605C0017DF25 /* vlc_encoder.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = vlc_encoder.h; sourceTree = "<group>"; };
|
4CE446D718BC605C0017DF25 /* vlc_encoder.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = vlc_encoder.h; sourceTree = "<group>"; };
|
||||||
4CE446D818BC605C0017DF25 /* wels_common_basis.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = wels_common_basis.h; sourceTree = "<group>"; };
|
4CE446D818BC605C0017DF25 /* wels_common_basis.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = wels_common_basis.h; sourceTree = "<group>"; };
|
||||||
4CE446D918BC605C0017DF25 /* wels_const.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = wels_const.h; sourceTree = "<group>"; };
|
4CE446D918BC605C0017DF25 /* wels_const.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = wels_const.h; sourceTree = "<group>"; };
|
||||||
@@ -146,7 +129,6 @@
|
|||||||
4CE446E118BC605C0017DF25 /* encoder.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = encoder.cpp; sourceTree = "<group>"; };
|
4CE446E118BC605C0017DF25 /* encoder.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = encoder.cpp; sourceTree = "<group>"; };
|
||||||
4CE446E218BC605C0017DF25 /* encoder_data_tables.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = encoder_data_tables.cpp; sourceTree = "<group>"; };
|
4CE446E218BC605C0017DF25 /* encoder_data_tables.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = encoder_data_tables.cpp; sourceTree = "<group>"; };
|
||||||
4CE446E318BC605C0017DF25 /* encoder_ext.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = encoder_ext.cpp; sourceTree = "<group>"; };
|
4CE446E318BC605C0017DF25 /* encoder_ext.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = encoder_ext.cpp; sourceTree = "<group>"; };
|
||||||
4CE446E418BC605C0017DF25 /* expand_pic.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = expand_pic.cpp; sourceTree = "<group>"; };
|
|
||||||
4CE446E518BC605C0017DF25 /* get_intra_predictor.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = get_intra_predictor.cpp; sourceTree = "<group>"; };
|
4CE446E518BC605C0017DF25 /* get_intra_predictor.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = get_intra_predictor.cpp; sourceTree = "<group>"; };
|
||||||
4CE446E618BC605C0017DF25 /* mc.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = mc.cpp; sourceTree = "<group>"; };
|
4CE446E618BC605C0017DF25 /* mc.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = mc.cpp; sourceTree = "<group>"; };
|
||||||
4CE446E718BC605C0017DF25 /* md.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = md.cpp; sourceTree = "<group>"; };
|
4CE446E718BC605C0017DF25 /* md.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = md.cpp; sourceTree = "<group>"; };
|
||||||
@@ -167,13 +149,16 @@
|
|||||||
4CE446F618BC605C0017DF25 /* svc_mode_decision.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = svc_mode_decision.cpp; sourceTree = "<group>"; };
|
4CE446F618BC605C0017DF25 /* svc_mode_decision.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = svc_mode_decision.cpp; sourceTree = "<group>"; };
|
||||||
4CE446F718BC605C0017DF25 /* svc_motion_estimate.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = svc_motion_estimate.cpp; sourceTree = "<group>"; };
|
4CE446F718BC605C0017DF25 /* svc_motion_estimate.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = svc_motion_estimate.cpp; sourceTree = "<group>"; };
|
||||||
4CE446F818BC605C0017DF25 /* svc_set_mb_syn_cavlc.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = svc_set_mb_syn_cavlc.cpp; sourceTree = "<group>"; };
|
4CE446F818BC605C0017DF25 /* svc_set_mb_syn_cavlc.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = svc_set_mb_syn_cavlc.cpp; sourceTree = "<group>"; };
|
||||||
4CE446F918BC605C0017DF25 /* utils.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = utils.cpp; sourceTree = "<group>"; };
|
|
||||||
4CE446FA18BC605C0017DF25 /* wels_preprocess.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = wels_preprocess.cpp; sourceTree = "<group>"; };
|
4CE446FA18BC605C0017DF25 /* wels_preprocess.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = wels_preprocess.cpp; sourceTree = "<group>"; };
|
||||||
4CE446FD18BC605C0017DF25 /* welsCodecTrace.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = welsCodecTrace.h; sourceTree = "<group>"; };
|
|
||||||
4CE446FE18BC605C0017DF25 /* welsEncoderExt.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = welsEncoderExt.h; sourceTree = "<group>"; };
|
4CE446FE18BC605C0017DF25 /* welsEncoderExt.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = welsEncoderExt.h; sourceTree = "<group>"; };
|
||||||
4CE4470418BC605C0017DF25 /* wels_enc_export.def */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = wels_enc_export.def; sourceTree = "<group>"; };
|
4CE4470418BC605C0017DF25 /* wels_enc_export.def */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = wels_enc_export.def; sourceTree = "<group>"; };
|
||||||
4CE4470518BC605C0017DF25 /* welsCodecTrace.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = welsCodecTrace.cpp; sourceTree = "<group>"; };
|
|
||||||
4CE4470618BC605C0017DF25 /* welsEncoderExt.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = welsEncoderExt.cpp; sourceTree = "<group>"; };
|
4CE4470618BC605C0017DF25 /* welsEncoderExt.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = welsEncoderExt.cpp; sourceTree = "<group>"; };
|
||||||
|
9AED664819469FAF009A3567 /* welsCodecTrace.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = welsCodecTrace.h; path = ../../../common/inc/welsCodecTrace.h; sourceTree = "<group>"; };
|
||||||
|
9AED664C19469FC1009A3567 /* welsCodecTrace.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = welsCodecTrace.cpp; path = ../../../common/src/welsCodecTrace.cpp; sourceTree = "<group>"; };
|
||||||
|
9AED66651946A2B3009A3567 /* utils.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = utils.cpp; path = ../../../common/src/utils.cpp; sourceTree = "<group>"; };
|
||||||
|
9AED66671946A2C4009A3567 /* utils.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = utils.h; path = ../../../common/inc/utils.h; sourceTree = "<group>"; };
|
||||||
|
F5617A4F196A833A006E2B20 /* reconstruct_aarch64_neon.S */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.asm; name = reconstruct_aarch64_neon.S; path = arm64/reconstruct_aarch64_neon.S; sourceTree = "<group>"; };
|
||||||
|
F5BE8004196B913200ED02ED /* memory_aarch64_neon.S */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.asm; name = memory_aarch64_neon.S; path = arm64/memory_aarch64_neon.S; sourceTree = "<group>"; };
|
||||||
/* End PBXFileReference section */
|
/* End PBXFileReference section */
|
||||||
|
|
||||||
/* Begin PBXFrameworksBuildPhase section */
|
/* Begin PBXFrameworksBuildPhase section */
|
||||||
@@ -185,17 +170,6 @@
|
|||||||
);
|
);
|
||||||
runOnlyForDeploymentPostprocessing = 0;
|
runOnlyForDeploymentPostprocessing = 0;
|
||||||
};
|
};
|
||||||
4CE4431E18B6FFA00017DF25 /* Frameworks */ = {
|
|
||||||
isa = PBXFrameworksBuildPhase;
|
|
||||||
buildActionMask = 2147483647;
|
|
||||||
files = (
|
|
||||||
4CE4432318B6FFA00017DF25 /* XCTest.framework in Frameworks */,
|
|
||||||
4CE4432618B6FFA00017DF25 /* UIKit.framework in Frameworks */,
|
|
||||||
4CE4432418B6FFA00017DF25 /* Foundation.framework in Frameworks */,
|
|
||||||
4CE4432918B6FFA00017DF25 /* libwelsenc.a in Frameworks */,
|
|
||||||
);
|
|
||||||
runOnlyForDeploymentPostprocessing = 0;
|
|
||||||
};
|
|
||||||
/* End PBXFrameworksBuildPhase section */
|
/* End PBXFrameworksBuildPhase section */
|
||||||
|
|
||||||
/* Begin PBXGroup section */
|
/* Begin PBXGroup section */
|
||||||
@@ -211,11 +185,22 @@
|
|||||||
path = arm;
|
path = arm;
|
||||||
sourceTree = "<group>";
|
sourceTree = "<group>";
|
||||||
};
|
};
|
||||||
|
4CB8F2B219235FAC005D6386 /* arm64 */ = {
|
||||||
|
isa = PBXGroup;
|
||||||
|
children = (
|
||||||
|
F5BE8004196B913200ED02ED /* memory_aarch64_neon.S */,
|
||||||
|
F5617A4F196A833A006E2B20 /* reconstruct_aarch64_neon.S */,
|
||||||
|
4C23BC5F195A77E0003B81FC /* intra_pred_sad_3_opt_aarch64_neon.S */,
|
||||||
|
4CBC1B82194ACBB400214D9E /* intra_pred_aarch64_neon.S */,
|
||||||
|
4CB8F2B319235FC5005D6386 /* pixel_aarch64_neon.S */,
|
||||||
|
);
|
||||||
|
name = arm64;
|
||||||
|
sourceTree = "<group>";
|
||||||
|
};
|
||||||
4CE4430818B6FFA00017DF25 = {
|
4CE4430818B6FFA00017DF25 = {
|
||||||
isa = PBXGroup;
|
isa = PBXGroup;
|
||||||
children = (
|
children = (
|
||||||
4CE446A018BC605B0017DF25 /* encoder */,
|
4CE446A018BC605B0017DF25 /* encoder */,
|
||||||
4CE4432A18B6FFA00017DF25 /* welsencTests */,
|
|
||||||
4CE4431318B6FFA00017DF25 /* Frameworks */,
|
4CE4431318B6FFA00017DF25 /* Frameworks */,
|
||||||
4CE4431218B6FFA00017DF25 /* Products */,
|
4CE4431218B6FFA00017DF25 /* Products */,
|
||||||
);
|
);
|
||||||
@@ -225,7 +210,6 @@
|
|||||||
isa = PBXGroup;
|
isa = PBXGroup;
|
||||||
children = (
|
children = (
|
||||||
4CE4431118B6FFA00017DF25 /* libwelsenc.a */,
|
4CE4431118B6FFA00017DF25 /* libwelsenc.a */,
|
||||||
4CE4432118B6FFA00017DF25 /* welsencTests.xctest */,
|
|
||||||
);
|
);
|
||||||
name = Products;
|
name = Products;
|
||||||
sourceTree = "<group>";
|
sourceTree = "<group>";
|
||||||
@@ -234,30 +218,11 @@
|
|||||||
isa = PBXGroup;
|
isa = PBXGroup;
|
||||||
children = (
|
children = (
|
||||||
4CE4431418B6FFA00017DF25 /* Foundation.framework */,
|
4CE4431418B6FFA00017DF25 /* Foundation.framework */,
|
||||||
4CE4432218B6FFA00017DF25 /* XCTest.framework */,
|
|
||||||
4CE4432518B6FFA00017DF25 /* UIKit.framework */,
|
4CE4432518B6FFA00017DF25 /* UIKit.framework */,
|
||||||
);
|
);
|
||||||
name = Frameworks;
|
name = Frameworks;
|
||||||
sourceTree = "<group>";
|
sourceTree = "<group>";
|
||||||
};
|
};
|
||||||
4CE4432A18B6FFA00017DF25 /* welsencTests */ = {
|
|
||||||
isa = PBXGroup;
|
|
||||||
children = (
|
|
||||||
4CE4433018B6FFA00017DF25 /* welsencTests.m */,
|
|
||||||
4CE4432B18B6FFA00017DF25 /* Supporting Files */,
|
|
||||||
);
|
|
||||||
path = welsencTests;
|
|
||||||
sourceTree = "<group>";
|
|
||||||
};
|
|
||||||
4CE4432B18B6FFA00017DF25 /* Supporting Files */ = {
|
|
||||||
isa = PBXGroup;
|
|
||||||
children = (
|
|
||||||
4CE4432C18B6FFA00017DF25 /* welsencTests-Info.plist */,
|
|
||||||
4CE4432D18B6FFA00017DF25 /* InfoPlist.strings */,
|
|
||||||
);
|
|
||||||
name = "Supporting Files";
|
|
||||||
sourceTree = "<group>";
|
|
||||||
};
|
|
||||||
4CE446A018BC605B0017DF25 /* encoder */ = {
|
4CE446A018BC605B0017DF25 /* encoder */ = {
|
||||||
isa = PBXGroup;
|
isa = PBXGroup;
|
||||||
children = (
|
children = (
|
||||||
@@ -271,6 +236,7 @@
|
|||||||
4CE446A118BC605B0017DF25 /* core */ = {
|
4CE446A118BC605B0017DF25 /* core */ = {
|
||||||
isa = PBXGroup;
|
isa = PBXGroup;
|
||||||
children = (
|
children = (
|
||||||
|
4CB8F2B219235FAC005D6386 /* arm64 */,
|
||||||
4C34066418C57D0400DFA14A /* arm */,
|
4C34066418C57D0400DFA14A /* arm */,
|
||||||
4CE446A918BC605C0017DF25 /* inc */,
|
4CE446A918BC605C0017DF25 /* inc */,
|
||||||
4CE446DC18BC605C0017DF25 /* src */,
|
4CE446DC18BC605C0017DF25 /* src */,
|
||||||
@@ -281,6 +247,7 @@
|
|||||||
4CE446A918BC605C0017DF25 /* inc */ = {
|
4CE446A918BC605C0017DF25 /* inc */ = {
|
||||||
isa = PBXGroup;
|
isa = PBXGroup;
|
||||||
children = (
|
children = (
|
||||||
|
9AED66671946A2C4009A3567 /* utils.h */,
|
||||||
4CDBFB9D18E5068D0025A767 /* wels_transpose_matrix.h */,
|
4CDBFB9D18E5068D0025A767 /* wels_transpose_matrix.h */,
|
||||||
4CE446AA18BC605C0017DF25 /* as264_common.h */,
|
4CE446AA18BC605C0017DF25 /* as264_common.h */,
|
||||||
4CE446AB18BC605C0017DF25 /* au_set.h */,
|
4CE446AB18BC605C0017DF25 /* au_set.h */,
|
||||||
@@ -291,7 +258,6 @@
|
|||||||
4CE446B118BC605C0017DF25 /* encode_mb_aux.h */,
|
4CE446B118BC605C0017DF25 /* encode_mb_aux.h */,
|
||||||
4CE446B218BC605C0017DF25 /* encoder.h */,
|
4CE446B218BC605C0017DF25 /* encoder.h */,
|
||||||
4CE446B318BC605C0017DF25 /* encoder_context.h */,
|
4CE446B318BC605C0017DF25 /* encoder_context.h */,
|
||||||
4CE446B418BC605C0017DF25 /* expand_pic.h */,
|
|
||||||
4CE446B518BC605C0017DF25 /* extern.h */,
|
4CE446B518BC605C0017DF25 /* extern.h */,
|
||||||
4CE446B618BC605C0017DF25 /* get_intra_predictor.h */,
|
4CE446B618BC605C0017DF25 /* get_intra_predictor.h */,
|
||||||
4CE446B718BC605C0017DF25 /* mb_cache.h */,
|
4CE446B718BC605C0017DF25 /* mb_cache.h */,
|
||||||
@@ -315,7 +281,6 @@
|
|||||||
4CE446C918BC605C0017DF25 /* slice_multi_threading.h */,
|
4CE446C918BC605C0017DF25 /* slice_multi_threading.h */,
|
||||||
4CE446CA18BC605C0017DF25 /* stat.h */,
|
4CE446CA18BC605C0017DF25 /* stat.h */,
|
||||||
4CE446CB18BC605C0017DF25 /* svc_base_layer_md.h */,
|
4CE446CB18BC605C0017DF25 /* svc_base_layer_md.h */,
|
||||||
4CE446CC18BC605C0017DF25 /* svc_config.h */,
|
|
||||||
4CE446CD18BC605C0017DF25 /* svc_enc_frame.h */,
|
4CE446CD18BC605C0017DF25 /* svc_enc_frame.h */,
|
||||||
4CE446CE18BC605C0017DF25 /* svc_enc_golomb.h */,
|
4CE446CE18BC605C0017DF25 /* svc_enc_golomb.h */,
|
||||||
4CE446CF18BC605C0017DF25 /* svc_enc_macroblock.h */,
|
4CE446CF18BC605C0017DF25 /* svc_enc_macroblock.h */,
|
||||||
@@ -325,7 +290,6 @@
|
|||||||
4CE446D318BC605C0017DF25 /* svc_mode_decision.h */,
|
4CE446D318BC605C0017DF25 /* svc_mode_decision.h */,
|
||||||
4CE446D418BC605C0017DF25 /* svc_motion_estimate.h */,
|
4CE446D418BC605C0017DF25 /* svc_motion_estimate.h */,
|
||||||
4CE446D518BC605C0017DF25 /* svc_set_mb_syn_cavlc.h */,
|
4CE446D518BC605C0017DF25 /* svc_set_mb_syn_cavlc.h */,
|
||||||
4CE446D618BC605C0017DF25 /* utils.h */,
|
|
||||||
4CE446D718BC605C0017DF25 /* vlc_encoder.h */,
|
4CE446D718BC605C0017DF25 /* vlc_encoder.h */,
|
||||||
4CE446D818BC605C0017DF25 /* wels_common_basis.h */,
|
4CE446D818BC605C0017DF25 /* wels_common_basis.h */,
|
||||||
4CE446D918BC605C0017DF25 /* wels_const.h */,
|
4CE446D918BC605C0017DF25 /* wels_const.h */,
|
||||||
@@ -338,6 +302,7 @@
|
|||||||
4CE446DC18BC605C0017DF25 /* src */ = {
|
4CE446DC18BC605C0017DF25 /* src */ = {
|
||||||
isa = PBXGroup;
|
isa = PBXGroup;
|
||||||
children = (
|
children = (
|
||||||
|
9AED66651946A2B3009A3567 /* utils.cpp */,
|
||||||
4CE446DD18BC605C0017DF25 /* au_set.cpp */,
|
4CE446DD18BC605C0017DF25 /* au_set.cpp */,
|
||||||
4CE446DE18BC605C0017DF25 /* deblocking.cpp */,
|
4CE446DE18BC605C0017DF25 /* deblocking.cpp */,
|
||||||
4CE446DF18BC605C0017DF25 /* decode_mb_aux.cpp */,
|
4CE446DF18BC605C0017DF25 /* decode_mb_aux.cpp */,
|
||||||
@@ -345,7 +310,6 @@
|
|||||||
4CE446E118BC605C0017DF25 /* encoder.cpp */,
|
4CE446E118BC605C0017DF25 /* encoder.cpp */,
|
||||||
4CE446E218BC605C0017DF25 /* encoder_data_tables.cpp */,
|
4CE446E218BC605C0017DF25 /* encoder_data_tables.cpp */,
|
||||||
4CE446E318BC605C0017DF25 /* encoder_ext.cpp */,
|
4CE446E318BC605C0017DF25 /* encoder_ext.cpp */,
|
||||||
4CE446E418BC605C0017DF25 /* expand_pic.cpp */,
|
|
||||||
4CE446E518BC605C0017DF25 /* get_intra_predictor.cpp */,
|
4CE446E518BC605C0017DF25 /* get_intra_predictor.cpp */,
|
||||||
4CE446E618BC605C0017DF25 /* mc.cpp */,
|
4CE446E618BC605C0017DF25 /* mc.cpp */,
|
||||||
4CE446E718BC605C0017DF25 /* md.cpp */,
|
4CE446E718BC605C0017DF25 /* md.cpp */,
|
||||||
@@ -366,7 +330,6 @@
|
|||||||
4CE446F618BC605C0017DF25 /* svc_mode_decision.cpp */,
|
4CE446F618BC605C0017DF25 /* svc_mode_decision.cpp */,
|
||||||
4CE446F718BC605C0017DF25 /* svc_motion_estimate.cpp */,
|
4CE446F718BC605C0017DF25 /* svc_motion_estimate.cpp */,
|
||||||
4CE446F818BC605C0017DF25 /* svc_set_mb_syn_cavlc.cpp */,
|
4CE446F818BC605C0017DF25 /* svc_set_mb_syn_cavlc.cpp */,
|
||||||
4CE446F918BC605C0017DF25 /* utils.cpp */,
|
|
||||||
4CE446FA18BC605C0017DF25 /* wels_preprocess.cpp */,
|
4CE446FA18BC605C0017DF25 /* wels_preprocess.cpp */,
|
||||||
);
|
);
|
||||||
path = src;
|
path = src;
|
||||||
@@ -384,7 +347,7 @@
|
|||||||
4CE446FC18BC605C0017DF25 /* inc */ = {
|
4CE446FC18BC605C0017DF25 /* inc */ = {
|
||||||
isa = PBXGroup;
|
isa = PBXGroup;
|
||||||
children = (
|
children = (
|
||||||
4CE446FD18BC605C0017DF25 /* welsCodecTrace.h */,
|
9AED664819469FAF009A3567 /* welsCodecTrace.h */,
|
||||||
4CE446FE18BC605C0017DF25 /* welsEncoderExt.h */,
|
4CE446FE18BC605C0017DF25 /* welsEncoderExt.h */,
|
||||||
);
|
);
|
||||||
path = inc;
|
path = inc;
|
||||||
@@ -393,8 +356,8 @@
|
|||||||
4CE4470218BC605C0017DF25 /* src */ = {
|
4CE4470218BC605C0017DF25 /* src */ = {
|
||||||
isa = PBXGroup;
|
isa = PBXGroup;
|
||||||
children = (
|
children = (
|
||||||
|
9AED664C19469FC1009A3567 /* welsCodecTrace.cpp */,
|
||||||
4CE4470418BC605C0017DF25 /* wels_enc_export.def */,
|
4CE4470418BC605C0017DF25 /* wels_enc_export.def */,
|
||||||
4CE4470518BC605C0017DF25 /* welsCodecTrace.cpp */,
|
|
||||||
4CE4470618BC605C0017DF25 /* welsEncoderExt.cpp */,
|
4CE4470618BC605C0017DF25 /* welsEncoderExt.cpp */,
|
||||||
);
|
);
|
||||||
path = src;
|
path = src;
|
||||||
@@ -420,31 +383,13 @@
|
|||||||
productReference = 4CE4431118B6FFA00017DF25 /* libwelsenc.a */;
|
productReference = 4CE4431118B6FFA00017DF25 /* libwelsenc.a */;
|
||||||
productType = "com.apple.product-type.library.static";
|
productType = "com.apple.product-type.library.static";
|
||||||
};
|
};
|
||||||
4CE4432018B6FFA00017DF25 /* welsencTests */ = {
|
|
||||||
isa = PBXNativeTarget;
|
|
||||||
buildConfigurationList = 4CE4433718B6FFA00017DF25 /* Build configuration list for PBXNativeTarget "welsencTests" */;
|
|
||||||
buildPhases = (
|
|
||||||
4CE4431D18B6FFA00017DF25 /* Sources */,
|
|
||||||
4CE4431E18B6FFA00017DF25 /* Frameworks */,
|
|
||||||
4CE4431F18B6FFA00017DF25 /* Resources */,
|
|
||||||
);
|
|
||||||
buildRules = (
|
|
||||||
);
|
|
||||||
dependencies = (
|
|
||||||
4CE4432818B6FFA00017DF25 /* PBXTargetDependency */,
|
|
||||||
);
|
|
||||||
name = welsencTests;
|
|
||||||
productName = welsencTests;
|
|
||||||
productReference = 4CE4432118B6FFA00017DF25 /* welsencTests.xctest */;
|
|
||||||
productType = "com.apple.product-type.bundle.unit-test";
|
|
||||||
};
|
|
||||||
/* End PBXNativeTarget section */
|
/* End PBXNativeTarget section */
|
||||||
|
|
||||||
/* Begin PBXProject section */
|
/* Begin PBXProject section */
|
||||||
4CE4430918B6FFA00017DF25 /* Project object */ = {
|
4CE4430918B6FFA00017DF25 /* Project object */ = {
|
||||||
isa = PBXProject;
|
isa = PBXProject;
|
||||||
attributes = {
|
attributes = {
|
||||||
LastUpgradeCheck = 0500;
|
LastUpgradeCheck = 0510;
|
||||||
ORGANIZATIONNAME = video;
|
ORGANIZATIONNAME = video;
|
||||||
};
|
};
|
||||||
buildConfigurationList = 4CE4430C18B6FFA00017DF25 /* Build configuration list for PBXProject "welsenc" */;
|
buildConfigurationList = 4CE4430C18B6FFA00017DF25 /* Build configuration list for PBXProject "welsenc" */;
|
||||||
@@ -460,22 +405,10 @@
|
|||||||
projectRoot = "";
|
projectRoot = "";
|
||||||
targets = (
|
targets = (
|
||||||
4CE4431018B6FFA00017DF25 /* welsenc */,
|
4CE4431018B6FFA00017DF25 /* welsenc */,
|
||||||
4CE4432018B6FFA00017DF25 /* welsencTests */,
|
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
/* End PBXProject section */
|
/* End PBXProject section */
|
||||||
|
|
||||||
/* Begin PBXResourcesBuildPhase section */
|
|
||||||
4CE4431F18B6FFA00017DF25 /* Resources */ = {
|
|
||||||
isa = PBXResourcesBuildPhase;
|
|
||||||
buildActionMask = 2147483647;
|
|
||||||
files = (
|
|
||||||
4CE4432F18B6FFA00017DF25 /* InfoPlist.strings in Resources */,
|
|
||||||
);
|
|
||||||
runOnlyForDeploymentPostprocessing = 0;
|
|
||||||
};
|
|
||||||
/* End PBXResourcesBuildPhase section */
|
|
||||||
|
|
||||||
/* Begin PBXSourcesBuildPhase section */
|
/* Begin PBXSourcesBuildPhase section */
|
||||||
4CE4430D18B6FFA00017DF25 /* Sources */ = {
|
4CE4430D18B6FFA00017DF25 /* Sources */ = {
|
||||||
isa = PBXSourcesBuildPhase;
|
isa = PBXSourcesBuildPhase;
|
||||||
@@ -486,32 +419,36 @@
|
|||||||
4CE4472718BC605C0017DF25 /* svc_mode_decision.cpp in Sources */,
|
4CE4472718BC605C0017DF25 /* svc_mode_decision.cpp in Sources */,
|
||||||
4CE4472818BC605C0017DF25 /* svc_motion_estimate.cpp in Sources */,
|
4CE4472818BC605C0017DF25 /* svc_motion_estimate.cpp in Sources */,
|
||||||
4CE4471D18BC605C0017DF25 /* property.cpp in Sources */,
|
4CE4471D18BC605C0017DF25 /* property.cpp in Sources */,
|
||||||
4CE4472A18BC605C0017DF25 /* utils.cpp in Sources */,
|
|
||||||
4CE4471018BC605C0017DF25 /* decode_mb_aux.cpp in Sources */,
|
4CE4471018BC605C0017DF25 /* decode_mb_aux.cpp in Sources */,
|
||||||
4CE4472018BC605C0017DF25 /* sample.cpp in Sources */,
|
4CE4472018BC605C0017DF25 /* sample.cpp in Sources */,
|
||||||
4CE4472D18BC605C0017DF25 /* welsCodecTrace.cpp in Sources */,
|
|
||||||
4CE4471318BC605C0017DF25 /* encoder_data_tables.cpp in Sources */,
|
4CE4471318BC605C0017DF25 /* encoder_data_tables.cpp in Sources */,
|
||||||
4C34067118C57D0400DFA14A /* pixel_neon.S in Sources */,
|
4C34067118C57D0400DFA14A /* pixel_neon.S in Sources */,
|
||||||
|
9AED665019469FC1009A3567 /* welsCodecTrace.cpp in Sources */,
|
||||||
4CE4471F18BC605C0017DF25 /* ref_list_mgr_svc.cpp in Sources */,
|
4CE4471F18BC605C0017DF25 /* ref_list_mgr_svc.cpp in Sources */,
|
||||||
4CE4472218BC605C0017DF25 /* slice_multi_threading.cpp in Sources */,
|
4CE4472218BC605C0017DF25 /* slice_multi_threading.cpp in Sources */,
|
||||||
4CE4471518BC605C0017DF25 /* expand_pic.cpp in Sources */,
|
|
||||||
4C34067018C57D0400DFA14A /* memory_neon.S in Sources */,
|
4C34067018C57D0400DFA14A /* memory_neon.S in Sources */,
|
||||||
4CE4470F18BC605C0017DF25 /* deblocking.cpp in Sources */,
|
4CE4470F18BC605C0017DF25 /* deblocking.cpp in Sources */,
|
||||||
4CE4472518BC605C0017DF25 /* svc_encode_mb.cpp in Sources */,
|
4CE4472518BC605C0017DF25 /* svc_encode_mb.cpp in Sources */,
|
||||||
4CE4471A18BC605C0017DF25 /* mv_pred.cpp in Sources */,
|
4CE4471A18BC605C0017DF25 /* mv_pred.cpp in Sources */,
|
||||||
4C34066E18C57D0400DFA14A /* intra_pred_sad_3_opt_neon.S in Sources */,
|
4C34066E18C57D0400DFA14A /* intra_pred_sad_3_opt_neon.S in Sources */,
|
||||||
|
4C23BC60195A77E0003B81FC /* intra_pred_sad_3_opt_aarch64_neon.S in Sources */,
|
||||||
4CE4472B18BC605C0017DF25 /* wels_preprocess.cpp in Sources */,
|
4CE4472B18BC605C0017DF25 /* wels_preprocess.cpp in Sources */,
|
||||||
4CE4470E18BC605C0017DF25 /* au_set.cpp in Sources */,
|
4CE4470E18BC605C0017DF25 /* au_set.cpp in Sources */,
|
||||||
|
F5BE8005196B913200ED02ED /* memory_aarch64_neon.S in Sources */,
|
||||||
|
4CBC1B83194ACBB400214D9E /* intra_pred_aarch64_neon.S in Sources */,
|
||||||
4CE4471718BC605C0017DF25 /* mc.cpp in Sources */,
|
4CE4471718BC605C0017DF25 /* mc.cpp in Sources */,
|
||||||
|
F5617A50196A833A006E2B20 /* reconstruct_aarch64_neon.S in Sources */,
|
||||||
4CE4472918BC605C0017DF25 /* svc_set_mb_syn_cavlc.cpp in Sources */,
|
4CE4472918BC605C0017DF25 /* svc_set_mb_syn_cavlc.cpp in Sources */,
|
||||||
4CE4471818BC605C0017DF25 /* md.cpp in Sources */,
|
4CE4471818BC605C0017DF25 /* md.cpp in Sources */,
|
||||||
4CE4471B18BC605C0017DF25 /* nal_encap.cpp in Sources */,
|
4CE4471B18BC605C0017DF25 /* nal_encap.cpp in Sources */,
|
||||||
4CE4471918BC605C0017DF25 /* memory_align.cpp in Sources */,
|
4CE4471918BC605C0017DF25 /* memory_align.cpp in Sources */,
|
||||||
4CE4472418BC605C0017DF25 /* svc_enc_slice_segment.cpp in Sources */,
|
4CE4472418BC605C0017DF25 /* svc_enc_slice_segment.cpp in Sources */,
|
||||||
4CE4472318BC605C0017DF25 /* svc_base_layer_md.cpp in Sources */,
|
4CE4472318BC605C0017DF25 /* svc_base_layer_md.cpp in Sources */,
|
||||||
|
4CB8F2B419235FC5005D6386 /* pixel_aarch64_neon.S in Sources */,
|
||||||
4CE4471E18BC605C0017DF25 /* ratectl.cpp in Sources */,
|
4CE4471E18BC605C0017DF25 /* ratectl.cpp in Sources */,
|
||||||
4C34066D18C57D0400DFA14A /* intra_pred_neon.S in Sources */,
|
4C34066D18C57D0400DFA14A /* intra_pred_neon.S in Sources */,
|
||||||
4CE4471C18BC605C0017DF25 /* picture_handle.cpp in Sources */,
|
4CE4471C18BC605C0017DF25 /* picture_handle.cpp in Sources */,
|
||||||
|
9AED66661946A2B3009A3567 /* utils.cpp in Sources */,
|
||||||
4CE4472618BC605C0017DF25 /* svc_encode_slice.cpp in Sources */,
|
4CE4472618BC605C0017DF25 /* svc_encode_slice.cpp in Sources */,
|
||||||
4CE4471218BC605C0017DF25 /* encoder.cpp in Sources */,
|
4CE4471218BC605C0017DF25 /* encoder.cpp in Sources */,
|
||||||
4CE4471618BC605C0017DF25 /* get_intra_predictor.cpp in Sources */,
|
4CE4471618BC605C0017DF25 /* get_intra_predictor.cpp in Sources */,
|
||||||
@@ -521,41 +458,13 @@
|
|||||||
);
|
);
|
||||||
runOnlyForDeploymentPostprocessing = 0;
|
runOnlyForDeploymentPostprocessing = 0;
|
||||||
};
|
};
|
||||||
4CE4431D18B6FFA00017DF25 /* Sources */ = {
|
|
||||||
isa = PBXSourcesBuildPhase;
|
|
||||||
buildActionMask = 2147483647;
|
|
||||||
files = (
|
|
||||||
4CE4433118B6FFA00017DF25 /* welsencTests.m in Sources */,
|
|
||||||
);
|
|
||||||
runOnlyForDeploymentPostprocessing = 0;
|
|
||||||
};
|
|
||||||
/* End PBXSourcesBuildPhase section */
|
/* End PBXSourcesBuildPhase section */
|
||||||
|
|
||||||
/* Begin PBXTargetDependency section */
|
|
||||||
4CE4432818B6FFA00017DF25 /* PBXTargetDependency */ = {
|
|
||||||
isa = PBXTargetDependency;
|
|
||||||
target = 4CE4431018B6FFA00017DF25 /* welsenc */;
|
|
||||||
targetProxy = 4CE4432718B6FFA00017DF25 /* PBXContainerItemProxy */;
|
|
||||||
};
|
|
||||||
/* End PBXTargetDependency section */
|
|
||||||
|
|
||||||
/* Begin PBXVariantGroup section */
|
|
||||||
4CE4432D18B6FFA00017DF25 /* InfoPlist.strings */ = {
|
|
||||||
isa = PBXVariantGroup;
|
|
||||||
children = (
|
|
||||||
4CE4432E18B6FFA00017DF25 /* en */,
|
|
||||||
);
|
|
||||||
name = InfoPlist.strings;
|
|
||||||
sourceTree = "<group>";
|
|
||||||
};
|
|
||||||
/* End PBXVariantGroup section */
|
|
||||||
|
|
||||||
/* Begin XCBuildConfiguration section */
|
/* Begin XCBuildConfiguration section */
|
||||||
4CE4433218B6FFA00017DF25 /* Debug */ = {
|
4CE4433218B6FFA00017DF25 /* Debug */ = {
|
||||||
isa = XCBuildConfiguration;
|
isa = XCBuildConfiguration;
|
||||||
buildSettings = {
|
buildSettings = {
|
||||||
ALWAYS_SEARCH_USER_PATHS = NO;
|
ALWAYS_SEARCH_USER_PATHS = NO;
|
||||||
ARCHS = "$(ARCHS_STANDARD_INCLUDING_64_BIT)";
|
|
||||||
CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
|
CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
|
||||||
CLANG_CXX_LIBRARY = "libc++";
|
CLANG_CXX_LIBRARY = "libc++";
|
||||||
CLANG_ENABLE_MODULES = YES;
|
CLANG_ENABLE_MODULES = YES;
|
||||||
@@ -593,7 +502,6 @@
|
|||||||
isa = XCBuildConfiguration;
|
isa = XCBuildConfiguration;
|
||||||
buildSettings = {
|
buildSettings = {
|
||||||
ALWAYS_SEARCH_USER_PATHS = NO;
|
ALWAYS_SEARCH_USER_PATHS = NO;
|
||||||
ARCHS = "$(ARCHS_STANDARD_INCLUDING_64_BIT)";
|
|
||||||
CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
|
CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
|
||||||
CLANG_CXX_LIBRARY = "libc++";
|
CLANG_CXX_LIBRARY = "libc++";
|
||||||
CLANG_ENABLE_MODULES = YES;
|
CLANG_ENABLE_MODULES = YES;
|
||||||
@@ -624,7 +532,6 @@
|
|||||||
4CE4433518B6FFA00017DF25 /* Debug */ = {
|
4CE4433518B6FFA00017DF25 /* Debug */ = {
|
||||||
isa = XCBuildConfiguration;
|
isa = XCBuildConfiguration;
|
||||||
buildSettings = {
|
buildSettings = {
|
||||||
ARCHS = "$(ARCHS_STANDARD)";
|
|
||||||
CLANG_CXX_LANGUAGE_STANDARD = "compiler-default";
|
CLANG_CXX_LANGUAGE_STANDARD = "compiler-default";
|
||||||
CLANG_CXX_LIBRARY = "compiler-default";
|
CLANG_CXX_LIBRARY = "compiler-default";
|
||||||
CODE_SIGN_IDENTITY = "iPhone Developer";
|
CODE_SIGN_IDENTITY = "iPhone Developer";
|
||||||
@@ -650,6 +557,7 @@
|
|||||||
"$(SRCROOT)/../../../../processing/interface",
|
"$(SRCROOT)/../../../../processing/interface",
|
||||||
"$(SRCROOT)/../../../../api/svc",
|
"$(SRCROOT)/../../../../api/svc",
|
||||||
"$(SRCROOT)/../../../../common/arm",
|
"$(SRCROOT)/../../../../common/arm",
|
||||||
|
"$(SRCROOT)/../../../../common/arm64",
|
||||||
);
|
);
|
||||||
IPHONEOS_DEPLOYMENT_TARGET = 6.1;
|
IPHONEOS_DEPLOYMENT_TARGET = 6.1;
|
||||||
ONLY_ACTIVE_ARCH = NO;
|
ONLY_ACTIVE_ARCH = NO;
|
||||||
@@ -663,7 +571,6 @@
|
|||||||
4CE4433618B6FFA00017DF25 /* Release */ = {
|
4CE4433618B6FFA00017DF25 /* Release */ = {
|
||||||
isa = XCBuildConfiguration;
|
isa = XCBuildConfiguration;
|
||||||
buildSettings = {
|
buildSettings = {
|
||||||
ARCHS = "$(ARCHS_STANDARD)";
|
|
||||||
CLANG_CXX_LANGUAGE_STANDARD = "compiler-default";
|
CLANG_CXX_LANGUAGE_STANDARD = "compiler-default";
|
||||||
CLANG_CXX_LIBRARY = "compiler-default";
|
CLANG_CXX_LIBRARY = "compiler-default";
|
||||||
CODE_SIGN_IDENTITY = "iPhone Developer";
|
CODE_SIGN_IDENTITY = "iPhone Developer";
|
||||||
@@ -688,6 +595,7 @@
|
|||||||
"$(SRCROOT)/../../../../processing/interface",
|
"$(SRCROOT)/../../../../processing/interface",
|
||||||
"$(SRCROOT)/../../../../api/svc",
|
"$(SRCROOT)/../../../../api/svc",
|
||||||
"$(SRCROOT)/../../../../common/arm",
|
"$(SRCROOT)/../../../../common/arm",
|
||||||
|
"$(SRCROOT)/../../../../common/arm64",
|
||||||
);
|
);
|
||||||
IPHONEOS_DEPLOYMENT_TARGET = 6.1;
|
IPHONEOS_DEPLOYMENT_TARGET = 6.1;
|
||||||
OTHER_LDFLAGS = "-ObjC";
|
OTHER_LDFLAGS = "-ObjC";
|
||||||
@@ -697,44 +605,6 @@
|
|||||||
};
|
};
|
||||||
name = Release;
|
name = Release;
|
||||||
};
|
};
|
||||||
4CE4433818B6FFA00017DF25 /* Debug */ = {
|
|
||||||
isa = XCBuildConfiguration;
|
|
||||||
buildSettings = {
|
|
||||||
ARCHS = "$(ARCHS_STANDARD_INCLUDING_64_BIT)";
|
|
||||||
FRAMEWORK_SEARCH_PATHS = (
|
|
||||||
"$(SDKROOT)/Developer/Library/Frameworks",
|
|
||||||
"$(inherited)",
|
|
||||||
"$(DEVELOPER_FRAMEWORKS_DIR)",
|
|
||||||
);
|
|
||||||
GCC_PRECOMPILE_PREFIX_HEADER = YES;
|
|
||||||
GCC_PREFIX_HEADER = "welsenc/welsenc-Prefix.pch";
|
|
||||||
GCC_PREPROCESSOR_DEFINITIONS = (
|
|
||||||
"DEBUG=1",
|
|
||||||
"$(inherited)",
|
|
||||||
);
|
|
||||||
INFOPLIST_FILE = "welsencTests/welsencTests-Info.plist";
|
|
||||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
|
||||||
WRAPPER_EXTENSION = xctest;
|
|
||||||
};
|
|
||||||
name = Debug;
|
|
||||||
};
|
|
||||||
4CE4433918B6FFA00017DF25 /* Release */ = {
|
|
||||||
isa = XCBuildConfiguration;
|
|
||||||
buildSettings = {
|
|
||||||
ARCHS = "$(ARCHS_STANDARD_INCLUDING_64_BIT)";
|
|
||||||
FRAMEWORK_SEARCH_PATHS = (
|
|
||||||
"$(SDKROOT)/Developer/Library/Frameworks",
|
|
||||||
"$(inherited)",
|
|
||||||
"$(DEVELOPER_FRAMEWORKS_DIR)",
|
|
||||||
);
|
|
||||||
GCC_PRECOMPILE_PREFIX_HEADER = YES;
|
|
||||||
GCC_PREFIX_HEADER = "welsenc/welsenc-Prefix.pch";
|
|
||||||
INFOPLIST_FILE = "welsencTests/welsencTests-Info.plist";
|
|
||||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
|
||||||
WRAPPER_EXTENSION = xctest;
|
|
||||||
};
|
|
||||||
name = Release;
|
|
||||||
};
|
|
||||||
/* End XCBuildConfiguration section */
|
/* End XCBuildConfiguration section */
|
||||||
|
|
||||||
/* Begin XCConfigurationList section */
|
/* Begin XCConfigurationList section */
|
||||||
@@ -756,15 +626,6 @@
|
|||||||
defaultConfigurationIsVisible = 0;
|
defaultConfigurationIsVisible = 0;
|
||||||
defaultConfigurationName = Release;
|
defaultConfigurationName = Release;
|
||||||
};
|
};
|
||||||
4CE4433718B6FFA00017DF25 /* Build configuration list for PBXNativeTarget "welsencTests" */ = {
|
|
||||||
isa = XCConfigurationList;
|
|
||||||
buildConfigurations = (
|
|
||||||
4CE4433818B6FFA00017DF25 /* Debug */,
|
|
||||||
4CE4433918B6FFA00017DF25 /* Release */,
|
|
||||||
);
|
|
||||||
defaultConfigurationIsVisible = 0;
|
|
||||||
defaultConfigurationName = Release;
|
|
||||||
};
|
|
||||||
/* End XCConfigurationList section */
|
/* End XCConfigurationList section */
|
||||||
};
|
};
|
||||||
rootObject = 4CE4430918B6FFA00017DF25 /* Project object */;
|
rootObject = 4CE4430918B6FFA00017DF25 /* Project object */;
|
||||||
|
|||||||
@@ -1,2 +0,0 @@
|
|||||||
/* Localized versions of Info.plist keys */
|
|
||||||
|
|
||||||
@@ -1,22 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
|
||||||
<plist version="1.0">
|
|
||||||
<dict>
|
|
||||||
<key>CFBundleDevelopmentRegion</key>
|
|
||||||
<string>en</string>
|
|
||||||
<key>CFBundleExecutable</key>
|
|
||||||
<string>${EXECUTABLE_NAME}</string>
|
|
||||||
<key>CFBundleIdentifier</key>
|
|
||||||
<string>cisco.${PRODUCT_NAME:rfc1034identifier}</string>
|
|
||||||
<key>CFBundleInfoDictionaryVersion</key>
|
|
||||||
<string>6.0</string>
|
|
||||||
<key>CFBundlePackageType</key>
|
|
||||||
<string>BNDL</string>
|
|
||||||
<key>CFBundleShortVersionString</key>
|
|
||||||
<string>1.0</string>
|
|
||||||
<key>CFBundleSignature</key>
|
|
||||||
<string>????</string>
|
|
||||||
<key>CFBundleVersion</key>
|
|
||||||
<string>1</string>
|
|
||||||
</dict>
|
|
||||||
</plist>
|
|
||||||
@@ -1,58 +0,0 @@
|
|||||||
/*!
|
|
||||||
* \copy
|
|
||||||
* Copyright (c) 2013, Cisco Systems
|
|
||||||
* All rights reserved.
|
|
||||||
*
|
|
||||||
* Redistribution and use in source and binary forms, with or without
|
|
||||||
* modification, are permitted provided that the following conditions
|
|
||||||
* are met:
|
|
||||||
*
|
|
||||||
* * Redistributions of source code must retain the above copyright
|
|
||||||
* notice, this list of conditions and the following disclaimer.
|
|
||||||
*
|
|
||||||
* * Redistributions in binary form must reproduce the above copyright
|
|
||||||
* notice, this list of conditions and the following disclaimer in
|
|
||||||
* the documentation and/or other materials provided with the
|
|
||||||
* distribution.
|
|
||||||
*
|
|
||||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
|
||||||
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
|
||||||
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
|
|
||||||
* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
|
|
||||||
* COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
|
|
||||||
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
|
|
||||||
* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
|
||||||
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
|
|
||||||
* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
|
||||||
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
|
|
||||||
* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
|
||||||
* POSSIBILITY OF SUCH DAMAGE.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
|
|
||||||
#import <XCTest/XCTest.h>
|
|
||||||
|
|
||||||
@interface welsencTests : XCTestCase
|
|
||||||
|
|
||||||
@end
|
|
||||||
|
|
||||||
@implementation welsencTests
|
|
||||||
|
|
||||||
- (void)setUp
|
|
||||||
{
|
|
||||||
[super setUp];
|
|
||||||
// Put setup code here. This method is called before the invocation of each test method in the class.
|
|
||||||
}
|
|
||||||
|
|
||||||
- (void)tearDown
|
|
||||||
{
|
|
||||||
// Put teardown code here. This method is called after the invocation of each test method in the class.
|
|
||||||
[super tearDown];
|
|
||||||
}
|
|
||||||
|
|
||||||
- (void)testExample
|
|
||||||
{
|
|
||||||
XCTFail(@"No implementation for \"%s\"", __PRETTY_FUNCTION__);
|
|
||||||
}
|
|
||||||
|
|
||||||
@end
|
|
||||||
12
codec/build/win32/.gitignore
vendored
Normal file
12
codec/build/win32/.gitignore
vendored
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
# Files generated by Visual Studio 2008
|
||||||
|
*.user
|
||||||
|
*.ncb
|
||||||
|
*.suo
|
||||||
|
|
||||||
|
# Files generated by upgrading the project files
|
||||||
|
*.vcxproj*
|
||||||
|
Backup
|
||||||
|
UpgradeLog.htm
|
||||||
|
|
||||||
|
# Files generated by Visual Studio 2012
|
||||||
|
*.sdf
|
||||||
@@ -30,6 +30,7 @@
|
|||||||
UseOfMFC="0"
|
UseOfMFC="0"
|
||||||
ATLMinimizesCRunTimeLibraryUsage="false"
|
ATLMinimizesCRunTimeLibraryUsage="false"
|
||||||
CharacterSet="2"
|
CharacterSet="2"
|
||||||
|
WholeProgramOptimization="1"
|
||||||
>
|
>
|
||||||
<Tool
|
<Tool
|
||||||
Name="VCPreBuildEventTool"
|
Name="VCPreBuildEventTool"
|
||||||
@@ -53,8 +54,8 @@
|
|||||||
Name="VCCLCompilerTool"
|
Name="VCCLCompilerTool"
|
||||||
Optimization="2"
|
Optimization="2"
|
||||||
InlineFunctionExpansion="1"
|
InlineFunctionExpansion="1"
|
||||||
AdditionalIncludeDirectories="..\..\..\decoder\core\inc;..\..\..\common\inc;..\..\..\api\svc;..\..\..\hwDecoder\core\inc;..\..\..\hwDecoder\dxva\inc"
|
AdditionalIncludeDirectories="..\..\..\decoder\core\inc;..\..\..\common\inc;..\..\..\api\svc"
|
||||||
PreprocessorDefinitions="WIN32;NDEBUG;_LIB;X86_ASM;HAVE_CACHE_LINE_ALIGN"
|
PreprocessorDefinitions="NDEBUG;_LIB;X86_ASM"
|
||||||
StringPooling="true"
|
StringPooling="true"
|
||||||
RuntimeLibrary="0"
|
RuntimeLibrary="0"
|
||||||
EnableFunctionLevelLinking="true"
|
EnableFunctionLevelLinking="true"
|
||||||
@@ -63,7 +64,6 @@
|
|||||||
ObjectFile=".\..\..\..\obj\decoder\core\release/"
|
ObjectFile=".\..\..\..\obj\decoder\core\release/"
|
||||||
ProgramDataBaseFileName=".\..\..\..\obj\decoder\core\release/"
|
ProgramDataBaseFileName=".\..\..\..\obj\decoder\core\release/"
|
||||||
WarningLevel="3"
|
WarningLevel="3"
|
||||||
SuppressStartupBanner="true"
|
|
||||||
DebugInformationFormat="0"
|
DebugInformationFormat="0"
|
||||||
/>
|
/>
|
||||||
<Tool
|
<Tool
|
||||||
@@ -80,7 +80,6 @@
|
|||||||
<Tool
|
<Tool
|
||||||
Name="VCLibrarianTool"
|
Name="VCLibrarianTool"
|
||||||
OutputFile="$(OutDir)\welsdcore.lib"
|
OutputFile="$(OutDir)\welsdcore.lib"
|
||||||
SuppressStartupBanner="true"
|
|
||||||
/>
|
/>
|
||||||
<Tool
|
<Tool
|
||||||
Name="VCALinkTool"
|
Name="VCALinkTool"
|
||||||
@@ -90,7 +89,6 @@
|
|||||||
/>
|
/>
|
||||||
<Tool
|
<Tool
|
||||||
Name="VCBscMakeTool"
|
Name="VCBscMakeTool"
|
||||||
SuppressStartupBanner="true"
|
|
||||||
OutputFile=".\..\..\..\..\bin\win32\Release/WelsDecCore.bsc"
|
OutputFile=".\..\..\..\..\bin\win32\Release/WelsDecCore.bsc"
|
||||||
/>
|
/>
|
||||||
<Tool
|
<Tool
|
||||||
@@ -109,6 +107,7 @@
|
|||||||
UseOfMFC="0"
|
UseOfMFC="0"
|
||||||
ATLMinimizesCRunTimeLibraryUsage="false"
|
ATLMinimizesCRunTimeLibraryUsage="false"
|
||||||
CharacterSet="2"
|
CharacterSet="2"
|
||||||
|
WholeProgramOptimization="1"
|
||||||
>
|
>
|
||||||
<Tool
|
<Tool
|
||||||
Name="VCPreBuildEventTool"
|
Name="VCPreBuildEventTool"
|
||||||
@@ -133,8 +132,8 @@
|
|||||||
Name="VCCLCompilerTool"
|
Name="VCCLCompilerTool"
|
||||||
Optimization="2"
|
Optimization="2"
|
||||||
InlineFunctionExpansion="1"
|
InlineFunctionExpansion="1"
|
||||||
AdditionalIncludeDirectories="..\..\..\decoder\core\inc;..\..\..\common\inc;..\..\..\api\svc;..\..\..\hwDecoder\core\inc;..\..\..\hwDecoder\dxva\inc"
|
AdditionalIncludeDirectories="..\..\..\decoder\core\inc;..\..\..\common\inc;..\..\..\api\svc"
|
||||||
PreprocessorDefinitions="WIN64;NDEBUG;_LIB;HAVE_CACHE_LINE_ALIGN;X86_ASM"
|
PreprocessorDefinitions="NDEBUG;_LIB;X86_ASM"
|
||||||
StringPooling="true"
|
StringPooling="true"
|
||||||
RuntimeLibrary="0"
|
RuntimeLibrary="0"
|
||||||
EnableFunctionLevelLinking="true"
|
EnableFunctionLevelLinking="true"
|
||||||
@@ -143,7 +142,6 @@
|
|||||||
ObjectFile=".\..\..\..\obj\decoder\core\release/"
|
ObjectFile=".\..\..\..\obj\decoder\core\release/"
|
||||||
ProgramDataBaseFileName=".\..\..\..\obj\decoder\core\release/"
|
ProgramDataBaseFileName=".\..\..\..\obj\decoder\core\release/"
|
||||||
WarningLevel="3"
|
WarningLevel="3"
|
||||||
SuppressStartupBanner="true"
|
|
||||||
DebugInformationFormat="0"
|
DebugInformationFormat="0"
|
||||||
/>
|
/>
|
||||||
<Tool
|
<Tool
|
||||||
@@ -160,7 +158,6 @@
|
|||||||
<Tool
|
<Tool
|
||||||
Name="VCLibrarianTool"
|
Name="VCLibrarianTool"
|
||||||
OutputFile="$(OutDir)\welsdcore.lib"
|
OutputFile="$(OutDir)\welsdcore.lib"
|
||||||
SuppressStartupBanner="true"
|
|
||||||
/>
|
/>
|
||||||
<Tool
|
<Tool
|
||||||
Name="VCALinkTool"
|
Name="VCALinkTool"
|
||||||
@@ -170,7 +167,6 @@
|
|||||||
/>
|
/>
|
||||||
<Tool
|
<Tool
|
||||||
Name="VCBscMakeTool"
|
Name="VCBscMakeTool"
|
||||||
SuppressStartupBanner="true"
|
|
||||||
OutputFile=".\..\..\..\..\bin\win32\Release/WelsDecCore.bsc"
|
OutputFile=".\..\..\..\..\bin\win32\Release/WelsDecCore.bsc"
|
||||||
/>
|
/>
|
||||||
<Tool
|
<Tool
|
||||||
@@ -211,8 +207,8 @@
|
|||||||
<Tool
|
<Tool
|
||||||
Name="VCCLCompilerTool"
|
Name="VCCLCompilerTool"
|
||||||
Optimization="0"
|
Optimization="0"
|
||||||
AdditionalIncludeDirectories="..\..\..\decoder\core\inc;..\..\..\common\inc;..\..\..\api\svc;..\..\..\hwDecoder\core\inc;..\..\..\hwDecoder\dxva\inc"
|
AdditionalIncludeDirectories="..\..\..\decoder\core\inc;..\..\..\common\inc;..\..\..\api\svc"
|
||||||
PreprocessorDefinitions="WIN32;_DEBUG;_LIB;X86_ASM;HAVE_CACHE_LINE_ALIGN"
|
PreprocessorDefinitions="_DEBUG;_LIB;X86_ASM"
|
||||||
MinimalRebuild="true"
|
MinimalRebuild="true"
|
||||||
BasicRuntimeChecks="3"
|
BasicRuntimeChecks="3"
|
||||||
RuntimeLibrary="1"
|
RuntimeLibrary="1"
|
||||||
@@ -221,7 +217,6 @@
|
|||||||
ObjectFile=".\..\..\..\obj\decoder\core\debug/"
|
ObjectFile=".\..\..\..\obj\decoder\core\debug/"
|
||||||
ProgramDataBaseFileName=".\..\..\..\obj\decoder\core\debug/"
|
ProgramDataBaseFileName=".\..\..\..\obj\decoder\core\debug/"
|
||||||
WarningLevel="3"
|
WarningLevel="3"
|
||||||
SuppressStartupBanner="true"
|
|
||||||
DebugInformationFormat="4"
|
DebugInformationFormat="4"
|
||||||
/>
|
/>
|
||||||
<Tool
|
<Tool
|
||||||
@@ -238,7 +233,6 @@
|
|||||||
<Tool
|
<Tool
|
||||||
Name="VCLibrarianTool"
|
Name="VCLibrarianTool"
|
||||||
OutputFile="$(OutDir)\welsdcore.lib"
|
OutputFile="$(OutDir)\welsdcore.lib"
|
||||||
SuppressStartupBanner="true"
|
|
||||||
/>
|
/>
|
||||||
<Tool
|
<Tool
|
||||||
Name="VCALinkTool"
|
Name="VCALinkTool"
|
||||||
@@ -248,7 +242,6 @@
|
|||||||
/>
|
/>
|
||||||
<Tool
|
<Tool
|
||||||
Name="VCBscMakeTool"
|
Name="VCBscMakeTool"
|
||||||
SuppressStartupBanner="true"
|
|
||||||
OutputFile=".\..\..\..\..\bin\win32\Debug/WelsDecCore.bsc"
|
OutputFile=".\..\..\..\..\bin\win32\Debug/WelsDecCore.bsc"
|
||||||
/>
|
/>
|
||||||
<Tool
|
<Tool
|
||||||
@@ -290,8 +283,8 @@
|
|||||||
<Tool
|
<Tool
|
||||||
Name="VCCLCompilerTool"
|
Name="VCCLCompilerTool"
|
||||||
Optimization="0"
|
Optimization="0"
|
||||||
AdditionalIncludeDirectories="..\..\..\decoder\core\inc;..\..\..\common\inc;..\..\..\api\svc;..\..\..\hwDecoder\core\inc;..\..\..\hwDecoder\dxva\inc"
|
AdditionalIncludeDirectories="..\..\..\decoder\core\inc;..\..\..\common\inc;..\..\..\api\svc"
|
||||||
PreprocessorDefinitions="WIN64;_DEBUG;_LIB;HAVE_CACHE_LINE_ALIGN;X86_ASM"
|
PreprocessorDefinitions="_DEBUG;_LIB;X86_ASM"
|
||||||
MinimalRebuild="true"
|
MinimalRebuild="true"
|
||||||
BasicRuntimeChecks="3"
|
BasicRuntimeChecks="3"
|
||||||
RuntimeLibrary="1"
|
RuntimeLibrary="1"
|
||||||
@@ -300,7 +293,6 @@
|
|||||||
ObjectFile=".\..\..\..\obj\decoder\core\debug/"
|
ObjectFile=".\..\..\..\obj\decoder\core\debug/"
|
||||||
ProgramDataBaseFileName=".\..\..\..\obj\decoder\core\debug/"
|
ProgramDataBaseFileName=".\..\..\..\obj\decoder\core\debug/"
|
||||||
WarningLevel="3"
|
WarningLevel="3"
|
||||||
SuppressStartupBanner="true"
|
|
||||||
DebugInformationFormat="3"
|
DebugInformationFormat="3"
|
||||||
/>
|
/>
|
||||||
<Tool
|
<Tool
|
||||||
@@ -317,7 +309,6 @@
|
|||||||
<Tool
|
<Tool
|
||||||
Name="VCLibrarianTool"
|
Name="VCLibrarianTool"
|
||||||
OutputFile="$(OutDir)\welsdcore.lib"
|
OutputFile="$(OutDir)\welsdcore.lib"
|
||||||
SuppressStartupBanner="true"
|
|
||||||
/>
|
/>
|
||||||
<Tool
|
<Tool
|
||||||
Name="VCALinkTool"
|
Name="VCALinkTool"
|
||||||
@@ -327,7 +318,6 @@
|
|||||||
/>
|
/>
|
||||||
<Tool
|
<Tool
|
||||||
Name="VCBscMakeTool"
|
Name="VCBscMakeTool"
|
||||||
SuppressStartupBanner="true"
|
|
||||||
OutputFile=".\..\..\..\..\bin\win32\Debug/WelsDecCore.bsc"
|
OutputFile=".\..\..\..\..\bin\win32\Debug/WelsDecCore.bsc"
|
||||||
/>
|
/>
|
||||||
<Tool
|
<Tool
|
||||||
@@ -356,7 +346,7 @@
|
|||||||
>
|
>
|
||||||
<Tool
|
<Tool
|
||||||
Name="VCCustomBuildTool"
|
Name="VCCustomBuildTool"
|
||||||
CommandLine="nasm -I$(InputDir) -I$(InputDir)/../../../common/x86/ -f win32 -DPREFIX -DX86_32 -o $(IntDir)\$(InputName).obj $(InputPath)"
|
CommandLine="nasm -I$(InputDir) -I$(InputDir)/../../../common/x86/ -f win32 -DPREFIX -DX86_32 -o $(IntDir)\$(InputName).obj $(InputPath)
"
|
||||||
Outputs="$(IntDir)\$(InputName).obj"
|
Outputs="$(IntDir)\$(InputName).obj"
|
||||||
/>
|
/>
|
||||||
</FileConfiguration>
|
</FileConfiguration>
|
||||||
@@ -365,7 +355,7 @@
|
|||||||
>
|
>
|
||||||
<Tool
|
<Tool
|
||||||
Name="VCCustomBuildTool"
|
Name="VCCustomBuildTool"
|
||||||
CommandLine="nasm -I$(InputDir) -I$(InputDir)/../../../common/x86/ -f win64 -DWIN64 -o $(IntDir)\$(InputName).obj $(InputPath)"
|
CommandLine="nasm -I$(InputDir) -I$(InputDir)/../../../common/x86/ -f win64 -DWIN64 -o $(IntDir)\$(InputName).obj $(InputPath)
"
|
||||||
Outputs="$(IntDir)\$(InputName).obj"
|
Outputs="$(IntDir)\$(InputName).obj"
|
||||||
/>
|
/>
|
||||||
</FileConfiguration>
|
</FileConfiguration>
|
||||||
@@ -374,7 +364,7 @@
|
|||||||
>
|
>
|
||||||
<Tool
|
<Tool
|
||||||
Name="VCCustomBuildTool"
|
Name="VCCustomBuildTool"
|
||||||
CommandLine="nasm -I$(InputDir) -I$(InputDir)/../../../common/x86/ -f win32 -DPREFIX -DX86_32 -o $(IntDir)\$(InputName).obj $(InputPath)"
|
CommandLine="nasm -I$(InputDir) -I$(InputDir)/../../../common/x86/ -f win32 -DPREFIX -DX86_32 -o $(IntDir)\$(InputName).obj $(InputPath)
"
|
||||||
Outputs="$(IntDir)\$(InputName).obj"
|
Outputs="$(IntDir)\$(InputName).obj"
|
||||||
/>
|
/>
|
||||||
</FileConfiguration>
|
</FileConfiguration>
|
||||||
@@ -383,7 +373,7 @@
|
|||||||
>
|
>
|
||||||
<Tool
|
<Tool
|
||||||
Name="VCCustomBuildTool"
|
Name="VCCustomBuildTool"
|
||||||
CommandLine="nasm -I$(InputDir) -I$(InputDir)/../../../common/x86/ -f win64 -DWIN64 -o $(IntDir)\$(InputName).obj $(InputPath)"
|
CommandLine="nasm -I$(InputDir) -I$(InputDir)/../../../common/x86/ -f win64 -DWIN64 -o $(IntDir)\$(InputName).obj $(InputPath)
"
|
||||||
Outputs="$(IntDir)\$(InputName).obj"
|
Outputs="$(IntDir)\$(InputName).obj"
|
||||||
/>
|
/>
|
||||||
</FileConfiguration>
|
</FileConfiguration>
|
||||||
@@ -396,7 +386,7 @@
|
|||||||
>
|
>
|
||||||
<Tool
|
<Tool
|
||||||
Name="VCCustomBuildTool"
|
Name="VCCustomBuildTool"
|
||||||
CommandLine="nasm -I$(InputDir) -I$(InputDir)/../../../common/x86/ -f win32 -DPREFIX -DX86_32 -o $(IntDir)\$(InputName).obj $(InputPath)"
|
CommandLine="nasm -I$(InputDir) -I$(InputDir)/../../../common/x86/ -f win32 -DPREFIX -DX86_32 -o $(IntDir)\$(InputName).obj $(InputPath)
"
|
||||||
Outputs="$(IntDir)\$(InputName).obj"
|
Outputs="$(IntDir)\$(InputName).obj"
|
||||||
/>
|
/>
|
||||||
</FileConfiguration>
|
</FileConfiguration>
|
||||||
@@ -405,7 +395,7 @@
|
|||||||
>
|
>
|
||||||
<Tool
|
<Tool
|
||||||
Name="VCCustomBuildTool"
|
Name="VCCustomBuildTool"
|
||||||
CommandLine="nasm -I$(InputDir) -I$(InputDir)/../../../common/x86/ -f win64 -DWIN64 -o $(IntDir)\$(InputName).obj $(InputPath)"
|
CommandLine="nasm -I$(InputDir) -I$(InputDir)/../../../common/x86/ -f win64 -DWIN64 -o $(IntDir)\$(InputName).obj $(InputPath)
"
|
||||||
Outputs="$(IntDir)\$(InputName).obj"
|
Outputs="$(IntDir)\$(InputName).obj"
|
||||||
/>
|
/>
|
||||||
</FileConfiguration>
|
</FileConfiguration>
|
||||||
@@ -414,7 +404,7 @@
|
|||||||
>
|
>
|
||||||
<Tool
|
<Tool
|
||||||
Name="VCCustomBuildTool"
|
Name="VCCustomBuildTool"
|
||||||
CommandLine="nasm -I$(InputDir) -I$(InputDir)/../../../common/x86/ -f win32 -DPREFIX -DX86_32 -o $(IntDir)\$(InputName).obj $(InputPath)"
|
CommandLine="nasm -I$(InputDir) -I$(InputDir)/../../../common/x86/ -f win32 -DPREFIX -DX86_32 -o $(IntDir)\$(InputName).obj $(InputPath)
"
|
||||||
Outputs="$(IntDir)\$(InputName).obj"
|
Outputs="$(IntDir)\$(InputName).obj"
|
||||||
/>
|
/>
|
||||||
</FileConfiguration>
|
</FileConfiguration>
|
||||||
@@ -423,7 +413,7 @@
|
|||||||
>
|
>
|
||||||
<Tool
|
<Tool
|
||||||
Name="VCCustomBuildTool"
|
Name="VCCustomBuildTool"
|
||||||
CommandLine="nasm -I$(InputDir) -I$(InputDir)/../../../common/x86/ -f win64 -DWIN64 -o $(IntDir)\$(InputName).obj $(InputPath)"
|
CommandLine="nasm -I$(InputDir) -I$(InputDir)/../../../common/x86/ -f win64 -DWIN64 -o $(IntDir)\$(InputName).obj $(InputPath)
"
|
||||||
Outputs="$(IntDir)\$(InputName).obj"
|
Outputs="$(IntDir)\$(InputName).obj"
|
||||||
/>
|
/>
|
||||||
</FileConfiguration>
|
</FileConfiguration>
|
||||||
@@ -436,7 +426,7 @@
|
|||||||
>
|
>
|
||||||
<Tool
|
<Tool
|
||||||
Name="VCCustomBuildTool"
|
Name="VCCustomBuildTool"
|
||||||
CommandLine="nasm -I$(InputDir) -I$(InputDir)/../../../common/x86/ -f win32 -DPREFIX -DX86_32 -o $(IntDir)\$(InputName).obj $(InputPath)"
|
CommandLine="nasm -I$(InputDir) -I$(InputDir)/../../../common/x86/ -f win32 -DPREFIX -DX86_32 -o $(IntDir)\$(InputName).obj $(InputPath)
"
|
||||||
Outputs="$(IntDir)\$(InputName).obj"
|
Outputs="$(IntDir)\$(InputName).obj"
|
||||||
/>
|
/>
|
||||||
</FileConfiguration>
|
</FileConfiguration>
|
||||||
@@ -445,7 +435,7 @@
|
|||||||
>
|
>
|
||||||
<Tool
|
<Tool
|
||||||
Name="VCCustomBuildTool"
|
Name="VCCustomBuildTool"
|
||||||
CommandLine="nasm -I$(InputDir) -I$(InputDir)/../../../common/x86/ -f win64 -DWIN64 -o $(IntDir)\$(InputName).obj $(InputPath)"
|
CommandLine="nasm -I$(InputDir) -I$(InputDir)/../../../common/x86/ -f win64 -DWIN64 -o $(IntDir)\$(InputName).obj $(InputPath)
"
|
||||||
Outputs="$(IntDir)\$(InputName).obj"
|
Outputs="$(IntDir)\$(InputName).obj"
|
||||||
/>
|
/>
|
||||||
</FileConfiguration>
|
</FileConfiguration>
|
||||||
@@ -454,7 +444,7 @@
|
|||||||
>
|
>
|
||||||
<Tool
|
<Tool
|
||||||
Name="VCCustomBuildTool"
|
Name="VCCustomBuildTool"
|
||||||
CommandLine="nasm -I$(InputDir) -I$(InputDir)/../../../common/x86/ -f win32 -DPREFIX -DX86_32 -o $(IntDir)\$(InputName).obj $(InputPath)"
|
CommandLine="nasm -I$(InputDir) -I$(InputDir)/../../../common/x86/ -f win32 -DPREFIX -DX86_32 -o $(IntDir)\$(InputName).obj $(InputPath)
"
|
||||||
Outputs="$(IntDir)\$(InputName).obj"
|
Outputs="$(IntDir)\$(InputName).obj"
|
||||||
/>
|
/>
|
||||||
</FileConfiguration>
|
</FileConfiguration>
|
||||||
@@ -463,7 +453,7 @@
|
|||||||
>
|
>
|
||||||
<Tool
|
<Tool
|
||||||
Name="VCCustomBuildTool"
|
Name="VCCustomBuildTool"
|
||||||
CommandLine="nasm -I$(InputDir) -I$(InputDir)/../../../common/x86/ -f win64 -DWIN64 -o $(IntDir)\$(InputName).obj $(InputPath)"
|
CommandLine="nasm -I$(InputDir) -I$(InputDir)/../../../common/x86/ -f win64 -DWIN64 -o $(IntDir)\$(InputName).obj $(InputPath)
"
|
||||||
Outputs="$(IntDir)\$(InputName).obj"
|
Outputs="$(IntDir)\$(InputName).obj"
|
||||||
/>
|
/>
|
||||||
</FileConfiguration>
|
</FileConfiguration>
|
||||||
@@ -476,7 +466,7 @@
|
|||||||
>
|
>
|
||||||
<Tool
|
<Tool
|
||||||
Name="VCCustomBuildTool"
|
Name="VCCustomBuildTool"
|
||||||
CommandLine="nasm -I$(InputDir) -I$(InputDir)/../../../common/x86/ -f win32 -DPREFIX -DX86_32 -o $(IntDir)\$(InputName).obj $(InputPath)"
|
CommandLine="nasm -I$(InputDir) -I$(InputDir)/../../../common/x86/ -f win32 -DPREFIX -DX86_32 -o $(IntDir)\$(InputName).obj $(InputPath)
"
|
||||||
Outputs="$(IntDir)\$(InputName).obj"
|
Outputs="$(IntDir)\$(InputName).obj"
|
||||||
/>
|
/>
|
||||||
</FileConfiguration>
|
</FileConfiguration>
|
||||||
@@ -485,7 +475,7 @@
|
|||||||
>
|
>
|
||||||
<Tool
|
<Tool
|
||||||
Name="VCCustomBuildTool"
|
Name="VCCustomBuildTool"
|
||||||
CommandLine="nasm -I$(InputDir) -I$(InputDir)/../../../common/x86/ -f win64 -DWIN64 -o $(IntDir)\$(InputName).obj $(InputPath)"
|
CommandLine="nasm -I$(InputDir) -I$(InputDir)/../../../common/x86/ -f win64 -DWIN64 -o $(IntDir)\$(InputName).obj $(InputPath)
"
|
||||||
Outputs="$(IntDir)\$(InputName).obj"
|
Outputs="$(IntDir)\$(InputName).obj"
|
||||||
/>
|
/>
|
||||||
</FileConfiguration>
|
</FileConfiguration>
|
||||||
@@ -494,7 +484,7 @@
|
|||||||
>
|
>
|
||||||
<Tool
|
<Tool
|
||||||
Name="VCCustomBuildTool"
|
Name="VCCustomBuildTool"
|
||||||
CommandLine="nasm -I$(InputDir) -I$(InputDir)/../../../common/x86/ -f win32 -DPREFIX -DX86_32 -o $(IntDir)\$(InputName).obj $(InputPath)"
|
CommandLine="nasm -I$(InputDir) -I$(InputDir)/../../../common/x86/ -f win32 -DPREFIX -DX86_32 -o $(IntDir)\$(InputName).obj $(InputPath)
"
|
||||||
Outputs="$(IntDir)\$(InputName).obj"
|
Outputs="$(IntDir)\$(InputName).obj"
|
||||||
/>
|
/>
|
||||||
</FileConfiguration>
|
</FileConfiguration>
|
||||||
@@ -503,7 +493,7 @@
|
|||||||
>
|
>
|
||||||
<Tool
|
<Tool
|
||||||
Name="VCCustomBuildTool"
|
Name="VCCustomBuildTool"
|
||||||
CommandLine="nasm -I$(InputDir) -I$(InputDir)/../../../common/x86/ -f win64 -DWIN64 -o $(IntDir)\$(InputName).obj $(InputPath)"
|
CommandLine="nasm -I$(InputDir) -I$(InputDir)/../../../common/x86/ -f win64 -DWIN64 -o $(IntDir)\$(InputName).obj $(InputPath)
"
|
||||||
Outputs="$(IntDir)\$(InputName).obj"
|
Outputs="$(IntDir)\$(InputName).obj"
|
||||||
/>
|
/>
|
||||||
</FileConfiguration>
|
</FileConfiguration>
|
||||||
@@ -516,7 +506,7 @@
|
|||||||
>
|
>
|
||||||
<Tool
|
<Tool
|
||||||
Name="VCCustomBuildTool"
|
Name="VCCustomBuildTool"
|
||||||
CommandLine="nasm -I$(InputDir) -I$(InputDir)/../../../common/x86/ -f win32 -DPREFIX -DX86_32 -o $(IntDir)\$(InputName).obj $(InputPath)"
|
CommandLine="nasm -I$(InputDir) -I$(InputDir)/../../../common/x86/ -f win32 -DPREFIX -DX86_32 -o $(IntDir)\$(InputName).obj $(InputPath)
"
|
||||||
Outputs="$(IntDir)\$(InputName).obj"
|
Outputs="$(IntDir)\$(InputName).obj"
|
||||||
/>
|
/>
|
||||||
</FileConfiguration>
|
</FileConfiguration>
|
||||||
@@ -525,7 +515,7 @@
|
|||||||
>
|
>
|
||||||
<Tool
|
<Tool
|
||||||
Name="VCCustomBuildTool"
|
Name="VCCustomBuildTool"
|
||||||
CommandLine="nasm -I$(InputDir) -I$(InputDir)/../../../common/x86/ -f win64 -DWIN64 -o $(IntDir)\$(InputName).obj $(InputPath)"
|
CommandLine="nasm -I$(InputDir) -I$(InputDir)/../../../common/x86/ -f win64 -DWIN64 -o $(IntDir)\$(InputName).obj $(InputPath)
"
|
||||||
Outputs="$(IntDir)\$(InputName).obj"
|
Outputs="$(IntDir)\$(InputName).obj"
|
||||||
/>
|
/>
|
||||||
</FileConfiguration>
|
</FileConfiguration>
|
||||||
@@ -534,7 +524,7 @@
|
|||||||
>
|
>
|
||||||
<Tool
|
<Tool
|
||||||
Name="VCCustomBuildTool"
|
Name="VCCustomBuildTool"
|
||||||
CommandLine="nasm -I$(InputDir) -I$(InputDir)/../../../common/x86/ -f win32 -DPREFIX -DX86_32 -o $(IntDir)\$(InputName).obj $(InputPath)"
|
CommandLine="nasm -I$(InputDir) -I$(InputDir)/../../../common/x86/ -f win32 -DPREFIX -DX86_32 -o $(IntDir)\$(InputName).obj $(InputPath)
"
|
||||||
Outputs="$(IntDir)\$(InputName).obj"
|
Outputs="$(IntDir)\$(InputName).obj"
|
||||||
/>
|
/>
|
||||||
</FileConfiguration>
|
</FileConfiguration>
|
||||||
@@ -543,7 +533,7 @@
|
|||||||
>
|
>
|
||||||
<Tool
|
<Tool
|
||||||
Name="VCCustomBuildTool"
|
Name="VCCustomBuildTool"
|
||||||
CommandLine="nasm -I$(InputDir) -I$(InputDir)/../../../common/x86/ -f win64 -DWIN64 -o $(IntDir)\$(InputName).obj $(InputPath)"
|
CommandLine="nasm -I$(InputDir) -I$(InputDir)/../../../common/x86/ -f win64 -DWIN64 -o $(IntDir)\$(InputName).obj $(InputPath)
"
|
||||||
Outputs="$(IntDir)\$(InputName).obj"
|
Outputs="$(IntDir)\$(InputName).obj"
|
||||||
/>
|
/>
|
||||||
</FileConfiguration>
|
</FileConfiguration>
|
||||||
@@ -556,7 +546,7 @@
|
|||||||
>
|
>
|
||||||
<Tool
|
<Tool
|
||||||
Name="VCCustomBuildTool"
|
Name="VCCustomBuildTool"
|
||||||
CommandLine="nasm -I$(InputDir) -I$(InputDir)/../../../common/x86/ -f win32 -DPREFIX -DX86_32 -o $(IntDir)\$(InputName).obj $(InputPath)"
|
CommandLine="nasm -I$(InputDir) -I$(InputDir)/../../../common/x86/ -f win32 -DPREFIX -DX86_32 -o $(IntDir)\$(InputName).obj $(InputPath)
"
|
||||||
Outputs="$(IntDir)\$(InputName).obj"
|
Outputs="$(IntDir)\$(InputName).obj"
|
||||||
/>
|
/>
|
||||||
</FileConfiguration>
|
</FileConfiguration>
|
||||||
@@ -565,7 +555,7 @@
|
|||||||
>
|
>
|
||||||
<Tool
|
<Tool
|
||||||
Name="VCCustomBuildTool"
|
Name="VCCustomBuildTool"
|
||||||
CommandLine="nasm -I$(InputDir) -I$(InputDir)/../../../common/x86/ -f win64 -DWIN64 -o $(IntDir)\$(InputName).obj $(InputPath)"
|
CommandLine="nasm -I$(InputDir) -I$(InputDir)/../../../common/x86/ -f win64 -DWIN64 -o $(IntDir)\$(InputName).obj $(InputPath)
"
|
||||||
Outputs="$(IntDir)\$(InputName).obj"
|
Outputs="$(IntDir)\$(InputName).obj"
|
||||||
/>
|
/>
|
||||||
</FileConfiguration>
|
</FileConfiguration>
|
||||||
@@ -574,7 +564,7 @@
|
|||||||
>
|
>
|
||||||
<Tool
|
<Tool
|
||||||
Name="VCCustomBuildTool"
|
Name="VCCustomBuildTool"
|
||||||
CommandLine="nasm -I$(InputDir) -I$(InputDir)/../../../common/x86/ -f win32 -DPREFIX -DX86_32 -o $(IntDir)\$(InputName).obj $(InputPath)"
|
CommandLine="nasm -I$(InputDir) -I$(InputDir)/../../../common/x86/ -f win32 -DPREFIX -DX86_32 -o $(IntDir)\$(InputName).obj $(InputPath)
"
|
||||||
Outputs="$(IntDir)\$(InputName).obj"
|
Outputs="$(IntDir)\$(InputName).obj"
|
||||||
/>
|
/>
|
||||||
</FileConfiguration>
|
</FileConfiguration>
|
||||||
@@ -583,7 +573,7 @@
|
|||||||
>
|
>
|
||||||
<Tool
|
<Tool
|
||||||
Name="VCCustomBuildTool"
|
Name="VCCustomBuildTool"
|
||||||
CommandLine="nasm -I$(InputDir) -I$(InputDir)/../../../common/x86/ -f win64 -DWIN64 -o $(IntDir)\$(InputName).obj $(InputPath)"
|
CommandLine="nasm -I$(InputDir) -I$(InputDir)/../../../common/x86/ -f win64 -DWIN64 -o $(IntDir)\$(InputName).obj $(InputPath)
"
|
||||||
Outputs="$(IntDir)\$(InputName).obj"
|
Outputs="$(IntDir)\$(InputName).obj"
|
||||||
/>
|
/>
|
||||||
</FileConfiguration>
|
</FileConfiguration>
|
||||||
@@ -596,7 +586,7 @@
|
|||||||
>
|
>
|
||||||
<Tool
|
<Tool
|
||||||
Name="VCCustomBuildTool"
|
Name="VCCustomBuildTool"
|
||||||
CommandLine="nasm -I$(InputDir) -I$(InputDir)/../../../common/x86/ -f win32 -DPREFIX -DX86_32 -o $(IntDir)\$(InputName).obj $(InputPath)"
|
CommandLine="nasm -I$(InputDir) -I$(InputDir)/../../../common/x86/ -f win32 -DPREFIX -DX86_32 -o $(IntDir)\$(InputName).obj $(InputPath)
"
|
||||||
Outputs="$(IntDir)\$(InputName).obj"
|
Outputs="$(IntDir)\$(InputName).obj"
|
||||||
/>
|
/>
|
||||||
</FileConfiguration>
|
</FileConfiguration>
|
||||||
@@ -605,7 +595,7 @@
|
|||||||
>
|
>
|
||||||
<Tool
|
<Tool
|
||||||
Name="VCCustomBuildTool"
|
Name="VCCustomBuildTool"
|
||||||
CommandLine="nasm -I$(InputDir) -I$(InputDir)/../../../common/x86/ -f win64 -DWIN64 -o $(IntDir)\$(InputName).obj $(InputPath)"
|
CommandLine="nasm -I$(InputDir) -I$(InputDir)/../../../common/x86/ -f win64 -DWIN64 -o $(IntDir)\$(InputName).obj $(InputPath)
"
|
||||||
Outputs="$(IntDir)\$(InputName).obj"
|
Outputs="$(IntDir)\$(InputName).obj"
|
||||||
/>
|
/>
|
||||||
</FileConfiguration>
|
</FileConfiguration>
|
||||||
@@ -614,7 +604,7 @@
|
|||||||
>
|
>
|
||||||
<Tool
|
<Tool
|
||||||
Name="VCCustomBuildTool"
|
Name="VCCustomBuildTool"
|
||||||
CommandLine="nasm -I$(InputDir) -I$(InputDir)/../../../common/x86/ -f win32 -DPREFIX -DX86_32 -o $(IntDir)\$(InputName).obj $(InputPath)"
|
CommandLine="nasm -I$(InputDir) -I$(InputDir)/../../../common/x86/ -f win32 -DPREFIX -DX86_32 -o $(IntDir)\$(InputName).obj $(InputPath)
"
|
||||||
Outputs="$(IntDir)\$(InputName).obj"
|
Outputs="$(IntDir)\$(InputName).obj"
|
||||||
/>
|
/>
|
||||||
</FileConfiguration>
|
</FileConfiguration>
|
||||||
@@ -623,7 +613,7 @@
|
|||||||
>
|
>
|
||||||
<Tool
|
<Tool
|
||||||
Name="VCCustomBuildTool"
|
Name="VCCustomBuildTool"
|
||||||
CommandLine="nasm -I$(InputDir) -I$(InputDir)/../../../common/x86/ -f win64 -DWIN64 -o $(IntDir)\$(InputName).obj $(InputPath)"
|
CommandLine="nasm -I$(InputDir) -I$(InputDir)/../../../common/x86/ -f win64 -DWIN64 -o $(IntDir)\$(InputName).obj $(InputPath)
"
|
||||||
Outputs="$(IntDir)\$(InputName).obj"
|
Outputs="$(IntDir)\$(InputName).obj"
|
||||||
/>
|
/>
|
||||||
</FileConfiguration>
|
</FileConfiguration>
|
||||||
@@ -636,7 +626,7 @@
|
|||||||
>
|
>
|
||||||
<Tool
|
<Tool
|
||||||
Name="VCCustomBuildTool"
|
Name="VCCustomBuildTool"
|
||||||
CommandLine="nasm -I$(InputDir) -I$(InputDir)/../../../common/x86/ -f win32 -DPREFIX -DX86_32 -o $(IntDir)\$(InputName).obj $(InputPath)"
|
CommandLine="nasm -I$(InputDir) -I$(InputDir)/../../../common/x86/ -f win32 -DPREFIX -DX86_32 -o $(IntDir)\$(InputName).obj $(InputPath)
"
|
||||||
Outputs="$(IntDir)\$(InputName).obj"
|
Outputs="$(IntDir)\$(InputName).obj"
|
||||||
/>
|
/>
|
||||||
</FileConfiguration>
|
</FileConfiguration>
|
||||||
@@ -645,7 +635,7 @@
|
|||||||
>
|
>
|
||||||
<Tool
|
<Tool
|
||||||
Name="VCCustomBuildTool"
|
Name="VCCustomBuildTool"
|
||||||
CommandLine="nasm -I$(InputDir) -I$(InputDir)/../../../common/x86/ -f win64 -DWIN64 -o $(IntDir)\$(InputName).obj $(InputPath)"
|
CommandLine="nasm -I$(InputDir) -I$(InputDir)/../../../common/x86/ -f win64 -DWIN64 -o $(IntDir)\$(InputName).obj $(InputPath)
"
|
||||||
Outputs="$(IntDir)\$(InputName).obj"
|
Outputs="$(IntDir)\$(InputName).obj"
|
||||||
/>
|
/>
|
||||||
</FileConfiguration>
|
</FileConfiguration>
|
||||||
@@ -654,7 +644,7 @@
|
|||||||
>
|
>
|
||||||
<Tool
|
<Tool
|
||||||
Name="VCCustomBuildTool"
|
Name="VCCustomBuildTool"
|
||||||
CommandLine="nasm -I$(InputDir) -I$(InputDir)/../../../common/x86/ -f win32 -DPREFIX -DX86_32 -o $(IntDir)\$(InputName).obj $(InputPath)"
|
CommandLine="nasm -I$(InputDir) -I$(InputDir)/../../../common/x86/ -f win32 -DPREFIX -DX86_32 -o $(IntDir)\$(InputName).obj $(InputPath)
"
|
||||||
Outputs="$(IntDir)\$(InputName).obj"
|
Outputs="$(IntDir)\$(InputName).obj"
|
||||||
/>
|
/>
|
||||||
</FileConfiguration>
|
</FileConfiguration>
|
||||||
@@ -663,7 +653,7 @@
|
|||||||
>
|
>
|
||||||
<Tool
|
<Tool
|
||||||
Name="VCCustomBuildTool"
|
Name="VCCustomBuildTool"
|
||||||
CommandLine="nasm -I$(InputDir) -I$(InputDir)/../../../common/x86/ -f win64 -DWIN64 -o $(IntDir)\$(InputName).obj $(InputPath)"
|
CommandLine="nasm -I$(InputDir) -I$(InputDir)/../../../common/x86/ -f win64 -DWIN64 -o $(IntDir)\$(InputName).obj $(InputPath)
"
|
||||||
Outputs="$(IntDir)\$(InputName).obj"
|
Outputs="$(IntDir)\$(InputName).obj"
|
||||||
/>
|
/>
|
||||||
</FileConfiguration>
|
</FileConfiguration>
|
||||||
@@ -742,11 +732,7 @@
|
|||||||
>
|
>
|
||||||
</File>
|
</File>
|
||||||
<File
|
<File
|
||||||
RelativePath="..\..\..\decoder\core\inc\expand_pic.h"
|
RelativePath="..\..\..\common\inc\expand_pic.h"
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\..\..\common\inc\expand_picture_common.h"
|
|
||||||
>
|
>
|
||||||
</File>
|
</File>
|
||||||
<File
|
<File
|
||||||
@@ -834,7 +820,7 @@
|
|||||||
>
|
>
|
||||||
</File>
|
</File>
|
||||||
<File
|
<File
|
||||||
RelativePath="..\..\..\decoder\core\inc\utils.h"
|
RelativePath="..\..\..\common\inc\utils.h"
|
||||||
>
|
>
|
||||||
</File>
|
</File>
|
||||||
<File
|
<File
|
||||||
@@ -845,6 +831,10 @@
|
|||||||
RelativePath="..\..\..\decoder\core\inc\wels_common_basis.h"
|
RelativePath="..\..\..\decoder\core\inc\wels_common_basis.h"
|
||||||
>
|
>
|
||||||
</File>
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath="..\..\..\common\inc\wels_common_defs.h"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
<File
|
<File
|
||||||
RelativePath="..\..\..\decoder\core\inc\wels_const.h"
|
RelativePath="..\..\..\decoder\core\inc\wels_const.h"
|
||||||
>
|
>
|
||||||
@@ -862,6 +852,10 @@
|
|||||||
RelativePath="..\..\..\decoder\core\src\bit_stream.cpp"
|
RelativePath="..\..\..\decoder\core\src\bit_stream.cpp"
|
||||||
>
|
>
|
||||||
</File>
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath="..\..\..\common\src\common_tables.cpp"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
<File
|
<File
|
||||||
RelativePath="..\..\..\common\src\copy_mb.cpp"
|
RelativePath="..\..\..\common\src\copy_mb.cpp"
|
||||||
>
|
>
|
||||||
@@ -907,7 +901,7 @@
|
|||||||
>
|
>
|
||||||
</File>
|
</File>
|
||||||
<File
|
<File
|
||||||
RelativePath="..\..\..\decoder\core\src\expand_pic.cpp"
|
RelativePath="..\..\..\common\src\expand_pic.cpp"
|
||||||
>
|
>
|
||||||
</File>
|
</File>
|
||||||
<File
|
<File
|
||||||
@@ -918,10 +912,6 @@
|
|||||||
RelativePath="..\..\..\decoder\core\src\get_intra_predictor.cpp"
|
RelativePath="..\..\..\decoder\core\src\get_intra_predictor.cpp"
|
||||||
>
|
>
|
||||||
</File>
|
</File>
|
||||||
<File
|
|
||||||
RelativePath="..\..\..\common\src\logging.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
<File
|
||||||
RelativePath="..\..\..\decoder\core\src\manage_dec_ref.cpp"
|
RelativePath="..\..\..\decoder\core\src\manage_dec_ref.cpp"
|
||||||
>
|
>
|
||||||
@@ -955,7 +945,7 @@
|
|||||||
>
|
>
|
||||||
</File>
|
</File>
|
||||||
<File
|
<File
|
||||||
RelativePath="..\..\..\decoder\core\src\utils.cpp"
|
RelativePath="..\..\..\common\src\utils.cpp"
|
||||||
>
|
>
|
||||||
</File>
|
</File>
|
||||||
</Filter>
|
</Filter>
|
||||||
|
|||||||
@@ -27,6 +27,7 @@
|
|||||||
UseOfMFC="0"
|
UseOfMFC="0"
|
||||||
ATLMinimizesCRunTimeLibraryUsage="false"
|
ATLMinimizesCRunTimeLibraryUsage="false"
|
||||||
CharacterSet="2"
|
CharacterSet="2"
|
||||||
|
WholeProgramOptimization="1"
|
||||||
>
|
>
|
||||||
<Tool
|
<Tool
|
||||||
Name="VCPreBuildEventTool"
|
Name="VCPreBuildEventTool"
|
||||||
@@ -44,7 +45,6 @@
|
|||||||
Name="VCMIDLTool"
|
Name="VCMIDLTool"
|
||||||
PreprocessorDefinitions="NDEBUG"
|
PreprocessorDefinitions="NDEBUG"
|
||||||
MkTypLibCompatible="true"
|
MkTypLibCompatible="true"
|
||||||
SuppressStartupBanner="true"
|
|
||||||
TargetEnvironment="1"
|
TargetEnvironment="1"
|
||||||
TypeLibraryName=".\..\..\..\..\..\bin\win32\Release/WelsDecPlus.tlb"
|
TypeLibraryName=".\..\..\..\..\..\bin\win32\Release/WelsDecPlus.tlb"
|
||||||
HeaderFileName=""
|
HeaderFileName=""
|
||||||
@@ -53,8 +53,8 @@
|
|||||||
Name="VCCLCompilerTool"
|
Name="VCCLCompilerTool"
|
||||||
Optimization="2"
|
Optimization="2"
|
||||||
InlineFunctionExpansion="1"
|
InlineFunctionExpansion="1"
|
||||||
AdditionalIncludeDirectories="..\..\..\decoder\plus\inc;..\..\..\decoder\core\inc;..\..\..\api\svc;..\..\..\common\inc;..\..\..\hwDecoder\plus\inc;..\..\..\hwDecoder\core\inc"
|
AdditionalIncludeDirectories="..\..\..\decoder\plus\inc;..\..\..\decoder\core\inc;..\..\..\api\svc;..\..\..\common\inc"
|
||||||
PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS;_USRDLL;WELSDECPLUS_EXPORTS;HAVE_CACHE_LINE_ALIGN;X86_ASM"
|
PreprocessorDefinitions="NDEBUG;_USRDLL;X86_ASM"
|
||||||
StringPooling="true"
|
StringPooling="true"
|
||||||
RuntimeLibrary="0"
|
RuntimeLibrary="0"
|
||||||
EnableFunctionLevelLinking="true"
|
EnableFunctionLevelLinking="true"
|
||||||
@@ -63,7 +63,6 @@
|
|||||||
ObjectFile=".\..\..\..\obj\decoder\plus\Release/"
|
ObjectFile=".\..\..\..\obj\decoder\plus\Release/"
|
||||||
ProgramDataBaseFileName=".\..\..\..\obj\decoder\plus\Release/"
|
ProgramDataBaseFileName=".\..\..\..\obj\decoder\plus\Release/"
|
||||||
WarningLevel="3"
|
WarningLevel="3"
|
||||||
SuppressStartupBanner="true"
|
|
||||||
DebugInformationFormat="3"
|
DebugInformationFormat="3"
|
||||||
/>
|
/>
|
||||||
<Tool
|
<Tool
|
||||||
@@ -82,13 +81,12 @@
|
|||||||
AdditionalDependencies=".\..\..\..\..\bin\win32\Release\welsdcore.lib"
|
AdditionalDependencies=".\..\..\..\..\bin\win32\Release\welsdcore.lib"
|
||||||
OutputFile="$(OutDir)\welsdec.dll"
|
OutputFile="$(OutDir)\welsdec.dll"
|
||||||
LinkIncremental="1"
|
LinkIncremental="1"
|
||||||
SuppressStartupBanner="true"
|
|
||||||
AdditionalLibraryDirectories=".\..\..\..\libs\Release\"
|
AdditionalLibraryDirectories=".\..\..\..\libs\Release\"
|
||||||
ModuleDefinitionFile="..\..\..\decoder\plus\src\wels_dec_export.def"
|
ModuleDefinitionFile="..\..\..\decoder\plus\src\wels_dec_export.def"
|
||||||
GenerateDebugInformation="true"
|
GenerateDebugInformation="true"
|
||||||
ProgramDatabaseFile=".\..\..\..\maps\Release\welsdec.pdb"
|
ProgramDatabaseFile="$(OutDir)\welsdec.pdb"
|
||||||
GenerateMapFile="true"
|
GenerateMapFile="true"
|
||||||
MapFileName=".\..\..\..\maps\Release\welsdec.map"
|
MapFileName="$(OutDir)\welsdec.map"
|
||||||
RandomizedBaseAddress="1"
|
RandomizedBaseAddress="1"
|
||||||
DataExecutionPrevention="2"
|
DataExecutionPrevention="2"
|
||||||
ImportLibrary="$(OutDir)\welsdec.lib"
|
ImportLibrary="$(OutDir)\welsdec.lib"
|
||||||
@@ -105,7 +103,6 @@
|
|||||||
/>
|
/>
|
||||||
<Tool
|
<Tool
|
||||||
Name="VCBscMakeTool"
|
Name="VCBscMakeTool"
|
||||||
SuppressStartupBanner="true"
|
|
||||||
OutputFile=".\..\..\..\..\bin\win32\Release/WelsDecPlus.bsc"
|
OutputFile=".\..\..\..\..\bin\win32\Release/WelsDecPlus.bsc"
|
||||||
/>
|
/>
|
||||||
<Tool
|
<Tool
|
||||||
@@ -127,6 +124,7 @@
|
|||||||
UseOfMFC="0"
|
UseOfMFC="0"
|
||||||
ATLMinimizesCRunTimeLibraryUsage="false"
|
ATLMinimizesCRunTimeLibraryUsage="false"
|
||||||
CharacterSet="2"
|
CharacterSet="2"
|
||||||
|
WholeProgramOptimization="1"
|
||||||
>
|
>
|
||||||
<Tool
|
<Tool
|
||||||
Name="VCPreBuildEventTool"
|
Name="VCPreBuildEventTool"
|
||||||
@@ -144,7 +142,6 @@
|
|||||||
Name="VCMIDLTool"
|
Name="VCMIDLTool"
|
||||||
PreprocessorDefinitions="NDEBUG"
|
PreprocessorDefinitions="NDEBUG"
|
||||||
MkTypLibCompatible="true"
|
MkTypLibCompatible="true"
|
||||||
SuppressStartupBanner="true"
|
|
||||||
TargetEnvironment="3"
|
TargetEnvironment="3"
|
||||||
TypeLibraryName=".\..\..\..\..\..\bin\win32\Release/WelsDecPlus.tlb"
|
TypeLibraryName=".\..\..\..\..\..\bin\win32\Release/WelsDecPlus.tlb"
|
||||||
HeaderFileName=""
|
HeaderFileName=""
|
||||||
@@ -153,8 +150,8 @@
|
|||||||
Name="VCCLCompilerTool"
|
Name="VCCLCompilerTool"
|
||||||
Optimization="2"
|
Optimization="2"
|
||||||
InlineFunctionExpansion="1"
|
InlineFunctionExpansion="1"
|
||||||
AdditionalIncludeDirectories="..\..\..\decoder\plus\inc;..\..\..\decoder\core\inc;..\..\..\api\svc;..\..\..\common\inc;..\..\..\hwDecoder\plus\inc;..\..\..\hwDecoder\core\inc"
|
AdditionalIncludeDirectories="..\..\..\decoder\plus\inc;..\..\..\decoder\core\inc;..\..\..\api\svc;..\..\..\common\inc"
|
||||||
PreprocessorDefinitions="WIN64;NDEBUG;_WINDOWS;_USRDLL;WELSDECPLUS_EXPORTS;HAVE_CACHE_LINE_ALIGN;X86_ASM"
|
PreprocessorDefinitions="NDEBUG;_USRDLL;X86_ASM"
|
||||||
StringPooling="true"
|
StringPooling="true"
|
||||||
RuntimeLibrary="0"
|
RuntimeLibrary="0"
|
||||||
EnableFunctionLevelLinking="true"
|
EnableFunctionLevelLinking="true"
|
||||||
@@ -163,7 +160,6 @@
|
|||||||
ObjectFile=".\..\..\..\obj\decoder\plus\Release/"
|
ObjectFile=".\..\..\..\obj\decoder\plus\Release/"
|
||||||
ProgramDataBaseFileName=".\..\..\..\obj\decoder\plus\Release/"
|
ProgramDataBaseFileName=".\..\..\..\obj\decoder\plus\Release/"
|
||||||
WarningLevel="3"
|
WarningLevel="3"
|
||||||
SuppressStartupBanner="true"
|
|
||||||
DebugInformationFormat="3"
|
DebugInformationFormat="3"
|
||||||
/>
|
/>
|
||||||
<Tool
|
<Tool
|
||||||
@@ -182,13 +178,12 @@
|
|||||||
AdditionalDependencies=".\..\..\..\..\bin\win64\Release\welsdcore.lib"
|
AdditionalDependencies=".\..\..\..\..\bin\win64\Release\welsdcore.lib"
|
||||||
OutputFile="$(OutDir)\welsdec.dll"
|
OutputFile="$(OutDir)\welsdec.dll"
|
||||||
LinkIncremental="1"
|
LinkIncremental="1"
|
||||||
SuppressStartupBanner="true"
|
|
||||||
AdditionalLibraryDirectories=".\..\..\..\libs\Release\"
|
AdditionalLibraryDirectories=".\..\..\..\libs\Release\"
|
||||||
ModuleDefinitionFile="..\..\..\decoder\plus\src\wels_dec_export.def"
|
ModuleDefinitionFile="..\..\..\decoder\plus\src\wels_dec_export.def"
|
||||||
GenerateDebugInformation="true"
|
GenerateDebugInformation="true"
|
||||||
ProgramDatabaseFile=".\..\..\..\maps\Release\welsdec.pdb"
|
ProgramDatabaseFile="$(OutDir)\welsdec.pdb"
|
||||||
GenerateMapFile="true"
|
GenerateMapFile="true"
|
||||||
MapFileName=".\..\..\..\maps\Release\welsdec.map"
|
MapFileName="$(OutDir)\welsdec.map"
|
||||||
RandomizedBaseAddress="1"
|
RandomizedBaseAddress="1"
|
||||||
DataExecutionPrevention="2"
|
DataExecutionPrevention="2"
|
||||||
ImportLibrary="$(OutDir)\welsdec.lib"
|
ImportLibrary="$(OutDir)\welsdec.lib"
|
||||||
@@ -205,7 +200,6 @@
|
|||||||
/>
|
/>
|
||||||
<Tool
|
<Tool
|
||||||
Name="VCBscMakeTool"
|
Name="VCBscMakeTool"
|
||||||
SuppressStartupBanner="true"
|
|
||||||
OutputFile=".\..\..\..\..\bin\win32\Release/WelsDecPlus.bsc"
|
OutputFile=".\..\..\..\..\bin\win32\Release/WelsDecPlus.bsc"
|
||||||
/>
|
/>
|
||||||
<Tool
|
<Tool
|
||||||
@@ -244,7 +238,6 @@
|
|||||||
Name="VCMIDLTool"
|
Name="VCMIDLTool"
|
||||||
PreprocessorDefinitions="_DEBUG"
|
PreprocessorDefinitions="_DEBUG"
|
||||||
MkTypLibCompatible="true"
|
MkTypLibCompatible="true"
|
||||||
SuppressStartupBanner="true"
|
|
||||||
TargetEnvironment="1"
|
TargetEnvironment="1"
|
||||||
TypeLibraryName=".\..\..\..\..\..\bin\win32\Debug/WelsDecPlus.tlb"
|
TypeLibraryName=".\..\..\..\..\..\bin\win32\Debug/WelsDecPlus.tlb"
|
||||||
HeaderFileName=""
|
HeaderFileName=""
|
||||||
@@ -252,8 +245,8 @@
|
|||||||
<Tool
|
<Tool
|
||||||
Name="VCCLCompilerTool"
|
Name="VCCLCompilerTool"
|
||||||
Optimization="0"
|
Optimization="0"
|
||||||
AdditionalIncludeDirectories="..\..\..\decoder\plus\inc;..\..\..\decoder\core\inc;..\..\..\api\svc;..\..\..\common\inc;..\..\..\hwDecoder\plus\inc;..\..\..\hwDecoder\core\inc"
|
AdditionalIncludeDirectories="..\..\..\decoder\plus\inc;..\..\..\decoder\core\inc;..\..\..\api\svc;..\..\..\common\inc"
|
||||||
PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_USRDLL;WELSDECPLUS_EXPORTS;HAVE_CACHE_LINE_ALIGN;X86_ASM"
|
PreprocessorDefinitions="_DEBUG;_USRDLL;X86_ASM"
|
||||||
MinimalRebuild="true"
|
MinimalRebuild="true"
|
||||||
BasicRuntimeChecks="3"
|
BasicRuntimeChecks="3"
|
||||||
RuntimeLibrary="1"
|
RuntimeLibrary="1"
|
||||||
@@ -262,7 +255,6 @@
|
|||||||
ObjectFile=".\..\..\..\obj\decoder\plus\debug/"
|
ObjectFile=".\..\..\..\obj\decoder\plus\debug/"
|
||||||
ProgramDataBaseFileName=".\..\..\..\obj\decoder\plus\debug/"
|
ProgramDataBaseFileName=".\..\..\..\obj\decoder\plus\debug/"
|
||||||
WarningLevel="3"
|
WarningLevel="3"
|
||||||
SuppressStartupBanner="true"
|
|
||||||
DebugInformationFormat="4"
|
DebugInformationFormat="4"
|
||||||
/>
|
/>
|
||||||
<Tool
|
<Tool
|
||||||
@@ -281,11 +273,10 @@
|
|||||||
AdditionalDependencies=".\..\..\..\..\bin\win32\Debug\welsdcore.lib"
|
AdditionalDependencies=".\..\..\..\..\bin\win32\Debug\welsdcore.lib"
|
||||||
OutputFile="$(OutDir)\welsdec.dll"
|
OutputFile="$(OutDir)\welsdec.dll"
|
||||||
LinkIncremental="2"
|
LinkIncremental="2"
|
||||||
SuppressStartupBanner="true"
|
|
||||||
AdditionalLibraryDirectories="..\..\..\libs\debug"
|
AdditionalLibraryDirectories="..\..\..\libs\debug"
|
||||||
ModuleDefinitionFile="..\..\..\decoder\plus\src\wels_dec_export.def"
|
ModuleDefinitionFile="..\..\..\decoder\plus\src\wels_dec_export.def"
|
||||||
GenerateDebugInformation="true"
|
GenerateDebugInformation="true"
|
||||||
ProgramDatabaseFile=".\..\..\..\..\bin\win32\Debug/welsdec.pdb"
|
ProgramDatabaseFile="$(OutDir)\welsdec.pdb"
|
||||||
RandomizedBaseAddress="1"
|
RandomizedBaseAddress="1"
|
||||||
DataExecutionPrevention="2"
|
DataExecutionPrevention="2"
|
||||||
ImportLibrary="$(OutDir)\welsdec.lib"
|
ImportLibrary="$(OutDir)\welsdec.lib"
|
||||||
@@ -302,7 +293,6 @@
|
|||||||
/>
|
/>
|
||||||
<Tool
|
<Tool
|
||||||
Name="VCBscMakeTool"
|
Name="VCBscMakeTool"
|
||||||
SuppressStartupBanner="true"
|
|
||||||
OutputFile=".\..\..\..\..\bin\win32\Debug/WelsDecPlus.bsc"
|
OutputFile=".\..\..\..\..\bin\win32\Debug/WelsDecPlus.bsc"
|
||||||
/>
|
/>
|
||||||
<Tool
|
<Tool
|
||||||
@@ -341,7 +331,6 @@
|
|||||||
Name="VCMIDLTool"
|
Name="VCMIDLTool"
|
||||||
PreprocessorDefinitions="_DEBUG"
|
PreprocessorDefinitions="_DEBUG"
|
||||||
MkTypLibCompatible="true"
|
MkTypLibCompatible="true"
|
||||||
SuppressStartupBanner="true"
|
|
||||||
TargetEnvironment="3"
|
TargetEnvironment="3"
|
||||||
TypeLibraryName=".\..\..\..\..\..\bin\win32\Debug/WelsDecPlus.tlb"
|
TypeLibraryName=".\..\..\..\..\..\bin\win32\Debug/WelsDecPlus.tlb"
|
||||||
HeaderFileName=""
|
HeaderFileName=""
|
||||||
@@ -349,8 +338,8 @@
|
|||||||
<Tool
|
<Tool
|
||||||
Name="VCCLCompilerTool"
|
Name="VCCLCompilerTool"
|
||||||
Optimization="0"
|
Optimization="0"
|
||||||
AdditionalIncludeDirectories="..\..\..\decoder\plus\inc;..\..\..\decoder\core\inc;..\..\..\api\svc;..\..\..\common\inc;..\..\..\hwDecoder\plus\inc;..\..\..\hwDecoder\core\inc"
|
AdditionalIncludeDirectories="..\..\..\decoder\plus\inc;..\..\..\decoder\core\inc;..\..\..\api\svc;..\..\..\common\inc"
|
||||||
PreprocessorDefinitions="WIN64;_DEBUG;_WINDOWS;_USRDLL;WELSDECPLUS_EXPORTS;HAVE_CACHE_LINE_ALIGN;X86_ASM"
|
PreprocessorDefinitions="_DEBUG;_USRDLL;X86_ASM"
|
||||||
MinimalRebuild="true"
|
MinimalRebuild="true"
|
||||||
BasicRuntimeChecks="3"
|
BasicRuntimeChecks="3"
|
||||||
RuntimeLibrary="1"
|
RuntimeLibrary="1"
|
||||||
@@ -359,7 +348,6 @@
|
|||||||
ObjectFile=".\..\..\..\obj\decoder\plus\debug/"
|
ObjectFile=".\..\..\..\obj\decoder\plus\debug/"
|
||||||
ProgramDataBaseFileName=".\..\..\..\obj\decoder\plus\debug/"
|
ProgramDataBaseFileName=".\..\..\..\obj\decoder\plus\debug/"
|
||||||
WarningLevel="3"
|
WarningLevel="3"
|
||||||
SuppressStartupBanner="true"
|
|
||||||
DebugInformationFormat="3"
|
DebugInformationFormat="3"
|
||||||
/>
|
/>
|
||||||
<Tool
|
<Tool
|
||||||
@@ -378,11 +366,10 @@
|
|||||||
AdditionalDependencies=".\..\..\..\..\bin\win64\Debug\welsdcore.lib"
|
AdditionalDependencies=".\..\..\..\..\bin\win64\Debug\welsdcore.lib"
|
||||||
OutputFile="$(OutDir)\welsdec.dll"
|
OutputFile="$(OutDir)\welsdec.dll"
|
||||||
LinkIncremental="2"
|
LinkIncremental="2"
|
||||||
SuppressStartupBanner="true"
|
|
||||||
AdditionalLibraryDirectories="..\..\..\libs\debug"
|
AdditionalLibraryDirectories="..\..\..\libs\debug"
|
||||||
ModuleDefinitionFile="..\..\..\decoder\plus\src\wels_dec_export.def"
|
ModuleDefinitionFile="..\..\..\decoder\plus\src\wels_dec_export.def"
|
||||||
GenerateDebugInformation="true"
|
GenerateDebugInformation="true"
|
||||||
ProgramDatabaseFile=".\..\..\..\..\bin\win32\Debug/welsdec.pdb"
|
ProgramDatabaseFile="$(OutDir)\welsdec.pdb"
|
||||||
RandomizedBaseAddress="1"
|
RandomizedBaseAddress="1"
|
||||||
DataExecutionPrevention="2"
|
DataExecutionPrevention="2"
|
||||||
ImportLibrary="$(OutDir)\welsdec.lib"
|
ImportLibrary="$(OutDir)\welsdec.lib"
|
||||||
@@ -399,7 +386,6 @@
|
|||||||
/>
|
/>
|
||||||
<Tool
|
<Tool
|
||||||
Name="VCBscMakeTool"
|
Name="VCBscMakeTool"
|
||||||
SuppressStartupBanner="true"
|
|
||||||
OutputFile=".\..\..\..\..\bin\win32\Debug/WelsDecPlus.bsc"
|
OutputFile=".\..\..\..\..\bin\win32\Debug/WelsDecPlus.bsc"
|
||||||
/>
|
/>
|
||||||
<Tool
|
<Tool
|
||||||
@@ -426,42 +412,6 @@
|
|||||||
<File
|
<File
|
||||||
RelativePath="..\..\..\decoder\plus\res\welsdec.rc"
|
RelativePath="..\..\..\decoder\plus\res\welsdec.rc"
|
||||||
>
|
>
|
||||||
<FileConfiguration
|
|
||||||
Name="Release|Win32"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCResourceCompilerTool"
|
|
||||||
PreprocessorDefinitions=""
|
|
||||||
AdditionalIncludeDirectories="\SVN_project_https\trunk\codec\Wels\project\decoder\plus\res"
|
|
||||||
/>
|
|
||||||
</FileConfiguration>
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Release|x64"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCResourceCompilerTool"
|
|
||||||
PreprocessorDefinitions=""
|
|
||||||
AdditionalIncludeDirectories="\SVN_project_https\trunk\codec\Wels\project\decoder\plus\res"
|
|
||||||
/>
|
|
||||||
</FileConfiguration>
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Debug|Win32"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCResourceCompilerTool"
|
|
||||||
PreprocessorDefinitions=""
|
|
||||||
AdditionalIncludeDirectories="\SVN_project_https\trunk\codec\Wels\project\decoder\plus\res"
|
|
||||||
/>
|
|
||||||
</FileConfiguration>
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Debug|x64"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCResourceCompilerTool"
|
|
||||||
PreprocessorDefinitions=""
|
|
||||||
AdditionalIncludeDirectories="\SVN_project_https\trunk\codec\Wels\project\decoder\plus\res"
|
|
||||||
/>
|
|
||||||
</FileConfiguration>
|
|
||||||
</File>
|
</File>
|
||||||
</Filter>
|
</Filter>
|
||||||
<Filter
|
<Filter
|
||||||
@@ -473,84 +423,12 @@
|
|||||||
>
|
>
|
||||||
</File>
|
</File>
|
||||||
<File
|
<File
|
||||||
RelativePath="..\..\..\decoder\plus\src\welsCodecTrace.cpp"
|
RelativePath="..\..\..\common\src\welsCodecTrace.cpp"
|
||||||
>
|
>
|
||||||
<FileConfiguration
|
|
||||||
Name="Release|Win32"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
AdditionalIncludeDirectories=""
|
|
||||||
PreprocessorDefinitions=""
|
|
||||||
/>
|
|
||||||
</FileConfiguration>
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Release|x64"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
AdditionalIncludeDirectories=""
|
|
||||||
PreprocessorDefinitions=""
|
|
||||||
/>
|
|
||||||
</FileConfiguration>
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Debug|Win32"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
AdditionalIncludeDirectories=""
|
|
||||||
PreprocessorDefinitions=""
|
|
||||||
/>
|
|
||||||
</FileConfiguration>
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Debug|x64"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
AdditionalIncludeDirectories=""
|
|
||||||
PreprocessorDefinitions=""
|
|
||||||
/>
|
|
||||||
</FileConfiguration>
|
|
||||||
</File>
|
</File>
|
||||||
<File
|
<File
|
||||||
RelativePath="..\..\..\decoder\plus\src\welsDecoderExt.cpp"
|
RelativePath="..\..\..\decoder\plus\src\welsDecoderExt.cpp"
|
||||||
>
|
>
|
||||||
<FileConfiguration
|
|
||||||
Name="Release|Win32"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
AdditionalIncludeDirectories=""
|
|
||||||
PreprocessorDefinitions=""
|
|
||||||
/>
|
|
||||||
</FileConfiguration>
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Release|x64"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
AdditionalIncludeDirectories=""
|
|
||||||
PreprocessorDefinitions=""
|
|
||||||
/>
|
|
||||||
</FileConfiguration>
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Debug|Win32"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
AdditionalIncludeDirectories=""
|
|
||||||
PreprocessorDefinitions=""
|
|
||||||
/>
|
|
||||||
</FileConfiguration>
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Debug|x64"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
AdditionalIncludeDirectories=""
|
|
||||||
PreprocessorDefinitions=""
|
|
||||||
/>
|
|
||||||
</FileConfiguration>
|
|
||||||
</File>
|
</File>
|
||||||
</Filter>
|
</Filter>
|
||||||
<Filter
|
<Filter
|
||||||
@@ -562,7 +440,7 @@
|
|||||||
>
|
>
|
||||||
</File>
|
</File>
|
||||||
<File
|
<File
|
||||||
RelativePath="..\..\..\decoder\plus\inc\welsCodecTrace.h"
|
RelativePath="..\..\..\common\inc\welsCodecTrace.h"
|
||||||
>
|
>
|
||||||
</File>
|
</File>
|
||||||
<File
|
<File
|
||||||
|
|||||||
@@ -49,8 +49,8 @@
|
|||||||
Name="VCCLCompilerTool"
|
Name="VCCLCompilerTool"
|
||||||
Optimization="2"
|
Optimization="2"
|
||||||
InlineFunctionExpansion="1"
|
InlineFunctionExpansion="1"
|
||||||
AdditionalIncludeDirectories="..\..\..\console\dec\inc,..\..\..\api\svc,..\..\..\common\inc,..\..\..\encoder\core\inc"
|
AdditionalIncludeDirectories="..\..\..\console\dec\inc,..\..\..\console\common\inc,..\..\..\api\svc,..\..\..\common\inc"
|
||||||
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
|
PreprocessorDefinitions="NDEBUG;_CONSOLE"
|
||||||
StringPooling="true"
|
StringPooling="true"
|
||||||
RuntimeLibrary="0"
|
RuntimeLibrary="0"
|
||||||
EnableFunctionLevelLinking="true"
|
EnableFunctionLevelLinking="true"
|
||||||
@@ -59,7 +59,6 @@
|
|||||||
ObjectFile=".\..\..\..\obj\decConsole\Release/"
|
ObjectFile=".\..\..\..\obj\decConsole\Release/"
|
||||||
ProgramDataBaseFileName=".\..\..\..\obj\decConsole\Release/"
|
ProgramDataBaseFileName=".\..\..\..\obj\decConsole\Release/"
|
||||||
WarningLevel="3"
|
WarningLevel="3"
|
||||||
SuppressStartupBanner="true"
|
|
||||||
/>
|
/>
|
||||||
<Tool
|
<Tool
|
||||||
Name="VCManagedResourceCompilerTool"
|
Name="VCManagedResourceCompilerTool"
|
||||||
@@ -77,7 +76,6 @@
|
|||||||
AdditionalDependencies="$(OutDir)\welsdec.lib"
|
AdditionalDependencies="$(OutDir)\welsdec.lib"
|
||||||
OutputFile="$(OutDir)\decConsole.exe"
|
OutputFile="$(OutDir)\decConsole.exe"
|
||||||
LinkIncremental="1"
|
LinkIncremental="1"
|
||||||
SuppressStartupBanner="true"
|
|
||||||
AdditionalLibraryDirectories="..\..\..\..\bin\win32"
|
AdditionalLibraryDirectories="..\..\..\..\bin\win32"
|
||||||
ProgramDatabaseFile="$(OutDir)\decConsole.pdb"
|
ProgramDatabaseFile="$(OutDir)\decConsole.pdb"
|
||||||
GenerateMapFile="false"
|
GenerateMapFile="false"
|
||||||
@@ -97,7 +95,6 @@
|
|||||||
/>
|
/>
|
||||||
<Tool
|
<Tool
|
||||||
Name="VCBscMakeTool"
|
Name="VCBscMakeTool"
|
||||||
SuppressStartupBanner="true"
|
|
||||||
OutputFile="$(OutDir)\decConsole.bsc"
|
OutputFile="$(OutDir)\decConsole.bsc"
|
||||||
/>
|
/>
|
||||||
<Tool
|
<Tool
|
||||||
@@ -142,8 +139,8 @@
|
|||||||
Name="VCCLCompilerTool"
|
Name="VCCLCompilerTool"
|
||||||
Optimization="2"
|
Optimization="2"
|
||||||
InlineFunctionExpansion="1"
|
InlineFunctionExpansion="1"
|
||||||
AdditionalIncludeDirectories="..\..\..\console\dec\inc,..\..\..\api\svc,..\..\..\common\inc,..\..\..\encoder\core\inc"
|
AdditionalIncludeDirectories="..\..\..\console\dec\inc,..\..\..\console\common\inc,..\..\..\api\svc,..\..\..\common\inc"
|
||||||
PreprocessorDefinitions="WIN64;NDEBUG;_CONSOLE"
|
PreprocessorDefinitions="NDEBUG;_CONSOLE"
|
||||||
StringPooling="true"
|
StringPooling="true"
|
||||||
RuntimeLibrary="0"
|
RuntimeLibrary="0"
|
||||||
EnableFunctionLevelLinking="true"
|
EnableFunctionLevelLinking="true"
|
||||||
@@ -152,7 +149,6 @@
|
|||||||
ObjectFile=".\..\..\..\obj\decConsole\Release/"
|
ObjectFile=".\..\..\..\obj\decConsole\Release/"
|
||||||
ProgramDataBaseFileName=".\..\..\..\obj\decConsole\Release/"
|
ProgramDataBaseFileName=".\..\..\..\obj\decConsole\Release/"
|
||||||
WarningLevel="3"
|
WarningLevel="3"
|
||||||
SuppressStartupBanner="true"
|
|
||||||
/>
|
/>
|
||||||
<Tool
|
<Tool
|
||||||
Name="VCManagedResourceCompilerTool"
|
Name="VCManagedResourceCompilerTool"
|
||||||
@@ -170,7 +166,6 @@
|
|||||||
AdditionalDependencies="$(OutDir)\welsdec.lib"
|
AdditionalDependencies="$(OutDir)\welsdec.lib"
|
||||||
OutputFile="$(OutDir)\decConsole.exe"
|
OutputFile="$(OutDir)\decConsole.exe"
|
||||||
LinkIncremental="1"
|
LinkIncremental="1"
|
||||||
SuppressStartupBanner="true"
|
|
||||||
AdditionalLibraryDirectories="..\..\..\..\bin\win64"
|
AdditionalLibraryDirectories="..\..\..\..\bin\win64"
|
||||||
ProgramDatabaseFile="$(OutDir)\decConsole.pdb"
|
ProgramDatabaseFile="$(OutDir)\decConsole.pdb"
|
||||||
GenerateMapFile="false"
|
GenerateMapFile="false"
|
||||||
@@ -190,7 +185,6 @@
|
|||||||
/>
|
/>
|
||||||
<Tool
|
<Tool
|
||||||
Name="VCBscMakeTool"
|
Name="VCBscMakeTool"
|
||||||
SuppressStartupBanner="true"
|
|
||||||
OutputFile="$(OutDir)\decConsole.bsc"
|
OutputFile="$(OutDir)\decConsole.bsc"
|
||||||
/>
|
/>
|
||||||
<Tool
|
<Tool
|
||||||
@@ -233,8 +227,8 @@
|
|||||||
<Tool
|
<Tool
|
||||||
Name="VCCLCompilerTool"
|
Name="VCCLCompilerTool"
|
||||||
Optimization="0"
|
Optimization="0"
|
||||||
AdditionalIncludeDirectories="..\..\..\console\dec\inc,..\..\..\api\svc,..\..\..\common\inc,..\..\..\decoder\core\inc,..\..\..\encoder\core\inc"
|
AdditionalIncludeDirectories="..\..\..\console\dec\inc,..\..\..\console\common\inc,..\..\..\api\svc,..\..\..\common\inc"
|
||||||
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
|
PreprocessorDefinitions="_DEBUG;_CONSOLE"
|
||||||
MinimalRebuild="true"
|
MinimalRebuild="true"
|
||||||
BasicRuntimeChecks="3"
|
BasicRuntimeChecks="3"
|
||||||
RuntimeLibrary="1"
|
RuntimeLibrary="1"
|
||||||
@@ -244,7 +238,6 @@
|
|||||||
ProgramDataBaseFileName=".\..\..\..\obj\decConsole\Debug/"
|
ProgramDataBaseFileName=".\..\..\..\obj\decConsole\Debug/"
|
||||||
BrowseInformation="1"
|
BrowseInformation="1"
|
||||||
WarningLevel="3"
|
WarningLevel="3"
|
||||||
SuppressStartupBanner="true"
|
|
||||||
DebugInformationFormat="4"
|
DebugInformationFormat="4"
|
||||||
/>
|
/>
|
||||||
<Tool
|
<Tool
|
||||||
@@ -263,7 +256,6 @@
|
|||||||
AdditionalDependencies="$(OutDir)\welsdec.lib"
|
AdditionalDependencies="$(OutDir)\welsdec.lib"
|
||||||
OutputFile="$(OutDir)\decConsoled.exe"
|
OutputFile="$(OutDir)\decConsoled.exe"
|
||||||
LinkIncremental="2"
|
LinkIncremental="2"
|
||||||
SuppressStartupBanner="true"
|
|
||||||
AdditionalLibraryDirectories="..\..\..\..\bin\win32"
|
AdditionalLibraryDirectories="..\..\..\..\bin\win32"
|
||||||
GenerateDebugInformation="true"
|
GenerateDebugInformation="true"
|
||||||
ProgramDatabaseFile="$(OutDir)\decConsoled.pdb"
|
ProgramDatabaseFile="$(OutDir)\decConsoled.pdb"
|
||||||
@@ -283,7 +275,6 @@
|
|||||||
/>
|
/>
|
||||||
<Tool
|
<Tool
|
||||||
Name="VCBscMakeTool"
|
Name="VCBscMakeTool"
|
||||||
SuppressStartupBanner="true"
|
|
||||||
OutputFile="$(OutDir)\decConsole.bsc"
|
OutputFile="$(OutDir)\decConsole.bsc"
|
||||||
/>
|
/>
|
||||||
<Tool
|
<Tool
|
||||||
@@ -327,8 +318,8 @@
|
|||||||
<Tool
|
<Tool
|
||||||
Name="VCCLCompilerTool"
|
Name="VCCLCompilerTool"
|
||||||
Optimization="0"
|
Optimization="0"
|
||||||
AdditionalIncludeDirectories="..\..\..\console\dec\inc,..\..\..\api\svc,..\..\..\common\inc,..\..\..\decoder\core\inc,..\..\..\encoder\core\inc"
|
AdditionalIncludeDirectories="..\..\..\console\dec\inc,..\..\..\console\common\inc,..\..\..\api\svc,..\..\..\common\inc"
|
||||||
PreprocessorDefinitions="WIN64;_DEBUG;_CONSOLE"
|
PreprocessorDefinitions="_DEBUG;_CONSOLE"
|
||||||
MinimalRebuild="true"
|
MinimalRebuild="true"
|
||||||
BasicRuntimeChecks="3"
|
BasicRuntimeChecks="3"
|
||||||
RuntimeLibrary="1"
|
RuntimeLibrary="1"
|
||||||
@@ -338,7 +329,6 @@
|
|||||||
ProgramDataBaseFileName=".\..\..\..\obj\decConsole\Debug/"
|
ProgramDataBaseFileName=".\..\..\..\obj\decConsole\Debug/"
|
||||||
BrowseInformation="1"
|
BrowseInformation="1"
|
||||||
WarningLevel="3"
|
WarningLevel="3"
|
||||||
SuppressStartupBanner="true"
|
|
||||||
DebugInformationFormat="3"
|
DebugInformationFormat="3"
|
||||||
/>
|
/>
|
||||||
<Tool
|
<Tool
|
||||||
@@ -357,7 +347,6 @@
|
|||||||
AdditionalDependencies="$(OutDir)\welsdec.lib"
|
AdditionalDependencies="$(OutDir)\welsdec.lib"
|
||||||
OutputFile="$(OutDir)\decConsoled.exe"
|
OutputFile="$(OutDir)\decConsoled.exe"
|
||||||
LinkIncremental="2"
|
LinkIncremental="2"
|
||||||
SuppressStartupBanner="true"
|
|
||||||
AdditionalLibraryDirectories="..\..\..\..\bin\win64"
|
AdditionalLibraryDirectories="..\..\..\..\bin\win64"
|
||||||
GenerateDebugInformation="true"
|
GenerateDebugInformation="true"
|
||||||
ProgramDatabaseFile="$(OutDir)\decConsoled.pdb"
|
ProgramDatabaseFile="$(OutDir)\decConsoled.pdb"
|
||||||
@@ -377,7 +366,6 @@
|
|||||||
/>
|
/>
|
||||||
<Tool
|
<Tool
|
||||||
Name="VCBscMakeTool"
|
Name="VCBscMakeTool"
|
||||||
SuppressStartupBanner="true"
|
|
||||||
OutputFile="$(OutDir)\decConsole.bsc"
|
OutputFile="$(OutDir)\decConsole.bsc"
|
||||||
/>
|
/>
|
||||||
<Tool
|
<Tool
|
||||||
@@ -405,87 +393,11 @@
|
|||||||
<File
|
<File
|
||||||
RelativePath="..\..\..\console\dec\src\h264dec.cpp"
|
RelativePath="..\..\..\console\dec\src\h264dec.cpp"
|
||||||
>
|
>
|
||||||
<FileConfiguration
|
|
||||||
Name="Release|Win32"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
AdditionalIncludeDirectories=""
|
|
||||||
PreprocessorDefinitions=""
|
|
||||||
/>
|
|
||||||
</FileConfiguration>
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Release|x64"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
AdditionalIncludeDirectories=""
|
|
||||||
PreprocessorDefinitions=""
|
|
||||||
/>
|
|
||||||
</FileConfiguration>
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Debug|Win32"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
AdditionalIncludeDirectories=""
|
|
||||||
PreprocessorDefinitions=""
|
|
||||||
/>
|
|
||||||
</FileConfiguration>
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Debug|x64"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
AdditionalIncludeDirectories=""
|
|
||||||
PreprocessorDefinitions=""
|
|
||||||
/>
|
|
||||||
</FileConfiguration>
|
|
||||||
</File>
|
</File>
|
||||||
<File
|
<File
|
||||||
RelativePath="..\..\..\common\src\logging.cpp"
|
RelativePath="..\..\..\console\common\src\read_config.cpp"
|
||||||
>
|
>
|
||||||
</File>
|
</File>
|
||||||
<File
|
|
||||||
RelativePath="..\..\..\console\dec\src\read_config.cpp"
|
|
||||||
>
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Release|Win32"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
AdditionalIncludeDirectories=""
|
|
||||||
PreprocessorDefinitions=""
|
|
||||||
/>
|
|
||||||
</FileConfiguration>
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Release|x64"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
AdditionalIncludeDirectories=""
|
|
||||||
PreprocessorDefinitions=""
|
|
||||||
/>
|
|
||||||
</FileConfiguration>
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Debug|Win32"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
AdditionalIncludeDirectories=""
|
|
||||||
PreprocessorDefinitions=""
|
|
||||||
/>
|
|
||||||
</FileConfiguration>
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Debug|x64"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
AdditionalIncludeDirectories=""
|
|
||||||
PreprocessorDefinitions=""
|
|
||||||
/>
|
|
||||||
</FileConfiguration>
|
|
||||||
</File>
|
|
||||||
</Filter>
|
</Filter>
|
||||||
<Filter
|
<Filter
|
||||||
Name="Header Files"
|
Name="Header Files"
|
||||||
@@ -496,7 +408,7 @@
|
|||||||
>
|
>
|
||||||
</File>
|
</File>
|
||||||
<File
|
<File
|
||||||
RelativePath="..\..\..\console\dec\inc\read_config.h"
|
RelativePath="..\..\..\console\common\inc\read_config.h"
|
||||||
>
|
>
|
||||||
</File>
|
</File>
|
||||||
</Filter>
|
</Filter>
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
@@ -44,7 +44,6 @@
|
|||||||
Name="VCMIDLTool"
|
Name="VCMIDLTool"
|
||||||
PreprocessorDefinitions="_DEBUG"
|
PreprocessorDefinitions="_DEBUG"
|
||||||
MkTypLibCompatible="true"
|
MkTypLibCompatible="true"
|
||||||
SuppressStartupBanner="true"
|
|
||||||
TargetEnvironment="1"
|
TargetEnvironment="1"
|
||||||
TypeLibraryName=".\..\..\..\..\..\bin\Debug/WelsEncPlus.tlb"
|
TypeLibraryName=".\..\..\..\..\..\bin\Debug/WelsEncPlus.tlb"
|
||||||
HeaderFileName=""
|
HeaderFileName=""
|
||||||
@@ -53,7 +52,7 @@
|
|||||||
Name="VCCLCompilerTool"
|
Name="VCCLCompilerTool"
|
||||||
Optimization="0"
|
Optimization="0"
|
||||||
AdditionalIncludeDirectories="..\..\..\encoder\plus\inc;..\..\..\encoder\core\inc;..\..\..\api\svc;..\..\..\common\inc;..\..\..\processing\interface"
|
AdditionalIncludeDirectories="..\..\..\encoder\plus\inc;..\..\..\encoder\core\inc;..\..\..\api\svc;..\..\..\common\inc;..\..\..\processing\interface"
|
||||||
PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_USRDLL;WELSENCPLUS_EXPORTS;X86_ASM"
|
PreprocessorDefinitions="_DEBUG;_USRDLL;X86_ASM"
|
||||||
MinimalRebuild="true"
|
MinimalRebuild="true"
|
||||||
BasicRuntimeChecks="3"
|
BasicRuntimeChecks="3"
|
||||||
RuntimeLibrary="1"
|
RuntimeLibrary="1"
|
||||||
@@ -62,7 +61,6 @@
|
|||||||
ObjectFile=".\..\..\..\obj\encoder\plus\Debug/"
|
ObjectFile=".\..\..\..\obj\encoder\plus\Debug/"
|
||||||
ProgramDataBaseFileName=".\..\..\..\obj\encoder\plus\Debug/"
|
ProgramDataBaseFileName=".\..\..\..\obj\encoder\plus\Debug/"
|
||||||
WarningLevel="3"
|
WarningLevel="3"
|
||||||
SuppressStartupBanner="true"
|
|
||||||
DebugInformationFormat="4"
|
DebugInformationFormat="4"
|
||||||
/>
|
/>
|
||||||
<Tool
|
<Tool
|
||||||
@@ -78,10 +76,9 @@
|
|||||||
/>
|
/>
|
||||||
<Tool
|
<Tool
|
||||||
Name="VCLinkerTool"
|
Name="VCLinkerTool"
|
||||||
AdditionalDependencies="$(OutDir)\welsecore.lib"
|
AdditionalDependencies="$(OutDir)\welsecore.lib $(OutDir)\welsvp.lib"
|
||||||
OutputFile="$(OutDir)\welsenc.dll"
|
OutputFile="$(OutDir)\welsenc.dll"
|
||||||
LinkIncremental="2"
|
LinkIncremental="2"
|
||||||
SuppressStartupBanner="true"
|
|
||||||
AdditionalLibraryDirectories="..\..\..\..\libs"
|
AdditionalLibraryDirectories="..\..\..\..\libs"
|
||||||
ModuleDefinitionFile="..\..\..\encoder\plus\src\wels_enc_export.def"
|
ModuleDefinitionFile="..\..\..\encoder\plus\src\wels_enc_export.def"
|
||||||
GenerateDebugInformation="true"
|
GenerateDebugInformation="true"
|
||||||
@@ -104,7 +101,6 @@
|
|||||||
/>
|
/>
|
||||||
<Tool
|
<Tool
|
||||||
Name="VCBscMakeTool"
|
Name="VCBscMakeTool"
|
||||||
SuppressStartupBanner="true"
|
|
||||||
OutputFile="$(OutDir)/WelsEncPlus.bsc"
|
OutputFile="$(OutDir)/WelsEncPlus.bsc"
|
||||||
/>
|
/>
|
||||||
<Tool
|
<Tool
|
||||||
@@ -143,7 +139,6 @@
|
|||||||
Name="VCMIDLTool"
|
Name="VCMIDLTool"
|
||||||
PreprocessorDefinitions="_DEBUG"
|
PreprocessorDefinitions="_DEBUG"
|
||||||
MkTypLibCompatible="true"
|
MkTypLibCompatible="true"
|
||||||
SuppressStartupBanner="true"
|
|
||||||
TargetEnvironment="3"
|
TargetEnvironment="3"
|
||||||
TypeLibraryName=".\..\..\..\..\..\bin\Debug/WelsEncPlus.tlb"
|
TypeLibraryName=".\..\..\..\..\..\bin\Debug/WelsEncPlus.tlb"
|
||||||
HeaderFileName=""
|
HeaderFileName=""
|
||||||
@@ -152,7 +147,7 @@
|
|||||||
Name="VCCLCompilerTool"
|
Name="VCCLCompilerTool"
|
||||||
Optimization="0"
|
Optimization="0"
|
||||||
AdditionalIncludeDirectories="..\..\..\encoder\plus\inc;..\..\..\encoder\core\inc;..\..\..\api\svc;..\..\..\common\inc;..\..\..\processing\interface"
|
AdditionalIncludeDirectories="..\..\..\encoder\plus\inc;..\..\..\encoder\core\inc;..\..\..\api\svc;..\..\..\common\inc;..\..\..\processing\interface"
|
||||||
PreprocessorDefinitions="WIN64;_DEBUG;_WINDOWS;_USRDLL;WELSENCPLUS_EXPORTS;X86_ASM"
|
PreprocessorDefinitions="_DEBUG;_USRDLL;X86_ASM"
|
||||||
MinimalRebuild="true"
|
MinimalRebuild="true"
|
||||||
BasicRuntimeChecks="3"
|
BasicRuntimeChecks="3"
|
||||||
RuntimeLibrary="1"
|
RuntimeLibrary="1"
|
||||||
@@ -161,7 +156,6 @@
|
|||||||
ObjectFile=".\..\..\..\obj\encoder\plus\Debug/"
|
ObjectFile=".\..\..\..\obj\encoder\plus\Debug/"
|
||||||
ProgramDataBaseFileName=".\..\..\..\obj\encoder\plus\Debug/"
|
ProgramDataBaseFileName=".\..\..\..\obj\encoder\plus\Debug/"
|
||||||
WarningLevel="3"
|
WarningLevel="3"
|
||||||
SuppressStartupBanner="true"
|
|
||||||
DebugInformationFormat="3"
|
DebugInformationFormat="3"
|
||||||
/>
|
/>
|
||||||
<Tool
|
<Tool
|
||||||
@@ -177,10 +171,9 @@
|
|||||||
/>
|
/>
|
||||||
<Tool
|
<Tool
|
||||||
Name="VCLinkerTool"
|
Name="VCLinkerTool"
|
||||||
AdditionalDependencies="$(OutDir)\welsecore.lib"
|
AdditionalDependencies="$(OutDir)\welsecore.lib $(OutDir)\welsvp.lib"
|
||||||
OutputFile="$(OutDir)\welsenc.dll"
|
OutputFile="$(OutDir)\welsenc.dll"
|
||||||
LinkIncremental="2"
|
LinkIncremental="2"
|
||||||
SuppressStartupBanner="true"
|
|
||||||
AdditionalLibraryDirectories="..\..\..\..\libs"
|
AdditionalLibraryDirectories="..\..\..\..\libs"
|
||||||
ModuleDefinitionFile="..\..\..\encoder\plus\src\wels_enc_export.def"
|
ModuleDefinitionFile="..\..\..\encoder\plus\src\wels_enc_export.def"
|
||||||
GenerateDebugInformation="true"
|
GenerateDebugInformation="true"
|
||||||
@@ -203,7 +196,6 @@
|
|||||||
/>
|
/>
|
||||||
<Tool
|
<Tool
|
||||||
Name="VCBscMakeTool"
|
Name="VCBscMakeTool"
|
||||||
SuppressStartupBanner="true"
|
|
||||||
OutputFile="$(OutDir)/WelsEncPlus.bsc"
|
OutputFile="$(OutDir)/WelsEncPlus.bsc"
|
||||||
/>
|
/>
|
||||||
<Tool
|
<Tool
|
||||||
@@ -225,6 +217,7 @@
|
|||||||
UseOfMFC="0"
|
UseOfMFC="0"
|
||||||
ATLMinimizesCRunTimeLibraryUsage="false"
|
ATLMinimizesCRunTimeLibraryUsage="false"
|
||||||
CharacterSet="2"
|
CharacterSet="2"
|
||||||
|
WholeProgramOptimization="1"
|
||||||
>
|
>
|
||||||
<Tool
|
<Tool
|
||||||
Name="VCPreBuildEventTool"
|
Name="VCPreBuildEventTool"
|
||||||
@@ -242,7 +235,6 @@
|
|||||||
Name="VCMIDLTool"
|
Name="VCMIDLTool"
|
||||||
PreprocessorDefinitions="NDEBUG"
|
PreprocessorDefinitions="NDEBUG"
|
||||||
MkTypLibCompatible="true"
|
MkTypLibCompatible="true"
|
||||||
SuppressStartupBanner="true"
|
|
||||||
TargetEnvironment="1"
|
TargetEnvironment="1"
|
||||||
TypeLibraryName=".\..\..\..\..\..\bin\Release/WelsEncPlus.tlb"
|
TypeLibraryName=".\..\..\..\..\..\bin\Release/WelsEncPlus.tlb"
|
||||||
HeaderFileName=""
|
HeaderFileName=""
|
||||||
@@ -253,9 +245,8 @@
|
|||||||
InlineFunctionExpansion="2"
|
InlineFunctionExpansion="2"
|
||||||
FavorSizeOrSpeed="1"
|
FavorSizeOrSpeed="1"
|
||||||
EnableFiberSafeOptimizations="true"
|
EnableFiberSafeOptimizations="true"
|
||||||
WholeProgramOptimization="true"
|
|
||||||
AdditionalIncludeDirectories="..\..\..\encoder\plus\inc;..\..\..\encoder\core\inc;..\..\..\api\svc;..\..\..\common\inc;..\..\..\processing\interface"
|
AdditionalIncludeDirectories="..\..\..\encoder\plus\inc;..\..\..\encoder\core\inc;..\..\..\api\svc;..\..\..\common\inc;..\..\..\processing\interface"
|
||||||
PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS;_USRDLL;WELSENCPLUS_EXPORTS;X86_ASM"
|
PreprocessorDefinitions="NDEBUG;_USRDLL;X86_ASM"
|
||||||
StringPooling="true"
|
StringPooling="true"
|
||||||
RuntimeLibrary="0"
|
RuntimeLibrary="0"
|
||||||
EnableFunctionLevelLinking="true"
|
EnableFunctionLevelLinking="true"
|
||||||
@@ -264,7 +255,6 @@
|
|||||||
ObjectFile=".\..\..\..\obj\encoder\plus\Release/"
|
ObjectFile=".\..\..\..\obj\encoder\plus\Release/"
|
||||||
ProgramDataBaseFileName=".\..\..\..\obj\encoder\plus\Release/"
|
ProgramDataBaseFileName=".\..\..\..\obj\encoder\plus\Release/"
|
||||||
WarningLevel="3"
|
WarningLevel="3"
|
||||||
SuppressStartupBanner="true"
|
|
||||||
DebugInformationFormat="3"
|
DebugInformationFormat="3"
|
||||||
/>
|
/>
|
||||||
<Tool
|
<Tool
|
||||||
@@ -280,11 +270,9 @@
|
|||||||
/>
|
/>
|
||||||
<Tool
|
<Tool
|
||||||
Name="VCLinkerTool"
|
Name="VCLinkerTool"
|
||||||
AdditionalOptions="/MAPINFO:exports /LTCG"
|
AdditionalDependencies="$(OutDir)\welsecore.lib $(OutDir)\welsvp.lib"
|
||||||
AdditionalDependencies="$(OutDir)\welsecore.lib"
|
|
||||||
OutputFile="$(OutDir)\welsenc.dll"
|
OutputFile="$(OutDir)\welsenc.dll"
|
||||||
LinkIncremental="1"
|
LinkIncremental="1"
|
||||||
SuppressStartupBanner="true"
|
|
||||||
AdditionalLibraryDirectories="..\..\..\..\libs"
|
AdditionalLibraryDirectories="..\..\..\..\libs"
|
||||||
ModuleDefinitionFile="..\..\..\encoder\plus\src\wels_enc_export.def"
|
ModuleDefinitionFile="..\..\..\encoder\plus\src\wels_enc_export.def"
|
||||||
GenerateDebugInformation="true"
|
GenerateDebugInformation="true"
|
||||||
@@ -308,7 +296,6 @@
|
|||||||
/>
|
/>
|
||||||
<Tool
|
<Tool
|
||||||
Name="VCBscMakeTool"
|
Name="VCBscMakeTool"
|
||||||
SuppressStartupBanner="true"
|
|
||||||
OutputFile="$(OutDir)/WelsEncPlus.bsc"
|
OutputFile="$(OutDir)/WelsEncPlus.bsc"
|
||||||
/>
|
/>
|
||||||
<Tool
|
<Tool
|
||||||
@@ -330,6 +317,7 @@
|
|||||||
UseOfMFC="0"
|
UseOfMFC="0"
|
||||||
ATLMinimizesCRunTimeLibraryUsage="false"
|
ATLMinimizesCRunTimeLibraryUsage="false"
|
||||||
CharacterSet="2"
|
CharacterSet="2"
|
||||||
|
WholeProgramOptimization="1"
|
||||||
>
|
>
|
||||||
<Tool
|
<Tool
|
||||||
Name="VCPreBuildEventTool"
|
Name="VCPreBuildEventTool"
|
||||||
@@ -347,7 +335,6 @@
|
|||||||
Name="VCMIDLTool"
|
Name="VCMIDLTool"
|
||||||
PreprocessorDefinitions="NDEBUG"
|
PreprocessorDefinitions="NDEBUG"
|
||||||
MkTypLibCompatible="true"
|
MkTypLibCompatible="true"
|
||||||
SuppressStartupBanner="true"
|
|
||||||
TargetEnvironment="3"
|
TargetEnvironment="3"
|
||||||
TypeLibraryName=".\..\..\..\..\..\bin\Release/WelsEncPlus.tlb"
|
TypeLibraryName=".\..\..\..\..\..\bin\Release/WelsEncPlus.tlb"
|
||||||
HeaderFileName=""
|
HeaderFileName=""
|
||||||
@@ -358,9 +345,8 @@
|
|||||||
InlineFunctionExpansion="2"
|
InlineFunctionExpansion="2"
|
||||||
FavorSizeOrSpeed="1"
|
FavorSizeOrSpeed="1"
|
||||||
EnableFiberSafeOptimizations="true"
|
EnableFiberSafeOptimizations="true"
|
||||||
WholeProgramOptimization="true"
|
|
||||||
AdditionalIncludeDirectories="..\..\..\encoder\plus\inc;..\..\..\encoder\core\inc;..\..\..\api\svc;..\..\..\common\inc;..\..\..\processing\interface"
|
AdditionalIncludeDirectories="..\..\..\encoder\plus\inc;..\..\..\encoder\core\inc;..\..\..\api\svc;..\..\..\common\inc;..\..\..\processing\interface"
|
||||||
PreprocessorDefinitions="WIN64;NDEBUG;_WINDOWS;_USRDLL;WELSENCPLUS_EXPORTS;X86_ASM"
|
PreprocessorDefinitions="NDEBUG;_USRDLL;X86_ASM"
|
||||||
StringPooling="true"
|
StringPooling="true"
|
||||||
RuntimeLibrary="0"
|
RuntimeLibrary="0"
|
||||||
EnableFunctionLevelLinking="true"
|
EnableFunctionLevelLinking="true"
|
||||||
@@ -369,7 +355,6 @@
|
|||||||
ObjectFile=".\..\..\..\obj\encoder\plus\Release/"
|
ObjectFile=".\..\..\..\obj\encoder\plus\Release/"
|
||||||
ProgramDataBaseFileName=".\..\..\..\obj\encoder\plus\Release/"
|
ProgramDataBaseFileName=".\..\..\..\obj\encoder\plus\Release/"
|
||||||
WarningLevel="3"
|
WarningLevel="3"
|
||||||
SuppressStartupBanner="true"
|
|
||||||
DebugInformationFormat="3"
|
DebugInformationFormat="3"
|
||||||
/>
|
/>
|
||||||
<Tool
|
<Tool
|
||||||
@@ -385,11 +370,9 @@
|
|||||||
/>
|
/>
|
||||||
<Tool
|
<Tool
|
||||||
Name="VCLinkerTool"
|
Name="VCLinkerTool"
|
||||||
AdditionalOptions="/MAPINFO:exports /LTCG"
|
AdditionalDependencies="$(OutDir)\welsecore.lib $(OutDir)\welsvp.lib"
|
||||||
AdditionalDependencies="$(OutDir)\welsecore.lib"
|
|
||||||
OutputFile="$(OutDir)\welsenc.dll"
|
OutputFile="$(OutDir)\welsenc.dll"
|
||||||
LinkIncremental="1"
|
LinkIncremental="1"
|
||||||
SuppressStartupBanner="true"
|
|
||||||
AdditionalLibraryDirectories="..\..\..\..\libs"
|
AdditionalLibraryDirectories="..\..\..\..\libs"
|
||||||
ModuleDefinitionFile="..\..\..\encoder\plus\src\wels_enc_export.def"
|
ModuleDefinitionFile="..\..\..\encoder\plus\src\wels_enc_export.def"
|
||||||
GenerateDebugInformation="true"
|
GenerateDebugInformation="true"
|
||||||
@@ -413,7 +396,6 @@
|
|||||||
/>
|
/>
|
||||||
<Tool
|
<Tool
|
||||||
Name="VCBscMakeTool"
|
Name="VCBscMakeTool"
|
||||||
SuppressStartupBanner="true"
|
|
||||||
OutputFile="$(OutDir)/WelsEncPlus.bsc"
|
OutputFile="$(OutDir)/WelsEncPlus.bsc"
|
||||||
/>
|
/>
|
||||||
<Tool
|
<Tool
|
||||||
@@ -437,126 +419,18 @@
|
|||||||
<File
|
<File
|
||||||
RelativePath="..\..\..\encoder\plus\src\DllEntry.cpp"
|
RelativePath="..\..\..\encoder\plus\src\DllEntry.cpp"
|
||||||
>
|
>
|
||||||
<FileConfiguration
|
|
||||||
Name="Debug|Win32"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
AdditionalIncludeDirectories=""
|
|
||||||
PreprocessorDefinitions=""
|
|
||||||
/>
|
|
||||||
</FileConfiguration>
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Debug|x64"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
AdditionalIncludeDirectories=""
|
|
||||||
PreprocessorDefinitions=""
|
|
||||||
/>
|
|
||||||
</FileConfiguration>
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Release|Win32"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
AdditionalIncludeDirectories=""
|
|
||||||
PreprocessorDefinitions=""
|
|
||||||
/>
|
|
||||||
</FileConfiguration>
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Release|x64"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
AdditionalIncludeDirectories=""
|
|
||||||
PreprocessorDefinitions=""
|
|
||||||
/>
|
|
||||||
</FileConfiguration>
|
|
||||||
</File>
|
</File>
|
||||||
<File
|
<File
|
||||||
RelativePath="..\..\..\encoder\plus\src\wels_enc_export.def"
|
RelativePath="..\..\..\encoder\plus\src\wels_enc_export.def"
|
||||||
>
|
>
|
||||||
</File>
|
</File>
|
||||||
<File
|
<File
|
||||||
RelativePath="..\..\..\encoder\plus\src\welsCodecTrace.cpp"
|
RelativePath="..\..\..\common\src\welsCodecTrace.cpp"
|
||||||
>
|
>
|
||||||
<FileConfiguration
|
|
||||||
Name="Debug|Win32"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
AdditionalIncludeDirectories=""
|
|
||||||
PreprocessorDefinitions=""
|
|
||||||
/>
|
|
||||||
</FileConfiguration>
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Debug|x64"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
AdditionalIncludeDirectories=""
|
|
||||||
PreprocessorDefinitions=""
|
|
||||||
/>
|
|
||||||
</FileConfiguration>
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Release|Win32"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
AdditionalIncludeDirectories=""
|
|
||||||
PreprocessorDefinitions=""
|
|
||||||
/>
|
|
||||||
</FileConfiguration>
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Release|x64"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
AdditionalIncludeDirectories=""
|
|
||||||
PreprocessorDefinitions=""
|
|
||||||
/>
|
|
||||||
</FileConfiguration>
|
|
||||||
</File>
|
</File>
|
||||||
<File
|
<File
|
||||||
RelativePath="..\..\..\encoder\plus\src\welsEncoderExt.cpp"
|
RelativePath="..\..\..\encoder\plus\src\welsEncoderExt.cpp"
|
||||||
>
|
>
|
||||||
<FileConfiguration
|
|
||||||
Name="Debug|Win32"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
AdditionalIncludeDirectories=""
|
|
||||||
PreprocessorDefinitions=""
|
|
||||||
/>
|
|
||||||
</FileConfiguration>
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Debug|x64"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
AdditionalIncludeDirectories=""
|
|
||||||
PreprocessorDefinitions=""
|
|
||||||
/>
|
|
||||||
</FileConfiguration>
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Release|Win32"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
AdditionalIncludeDirectories=""
|
|
||||||
PreprocessorDefinitions=""
|
|
||||||
/>
|
|
||||||
</FileConfiguration>
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Release|x64"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
AdditionalIncludeDirectories=""
|
|
||||||
PreprocessorDefinitions=""
|
|
||||||
/>
|
|
||||||
</FileConfiguration>
|
|
||||||
</File>
|
</File>
|
||||||
</Filter>
|
</Filter>
|
||||||
<Filter
|
<Filter
|
||||||
@@ -564,7 +438,7 @@
|
|||||||
Filter="h;hpp;hxx;hm;inl"
|
Filter="h;hpp;hxx;hm;inl"
|
||||||
>
|
>
|
||||||
<File
|
<File
|
||||||
RelativePath="..\..\..\encoder\plus\inc\welsCodecTrace.h"
|
RelativePath="..\..\..\common\inc\welsCodecTrace.h"
|
||||||
>
|
>
|
||||||
</File>
|
</File>
|
||||||
<File
|
<File
|
||||||
@@ -579,42 +453,6 @@
|
|||||||
<File
|
<File
|
||||||
RelativePath="..\..\..\encoder\plus\res\welsenc.rc"
|
RelativePath="..\..\..\encoder\plus\res\welsenc.rc"
|
||||||
>
|
>
|
||||||
<FileConfiguration
|
|
||||||
Name="Debug|Win32"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCResourceCompilerTool"
|
|
||||||
PreprocessorDefinitions=""
|
|
||||||
AdditionalIncludeDirectories="\Project\svc_perf_opt_b\codec\Wels\project\encoder\plus\res"
|
|
||||||
/>
|
|
||||||
</FileConfiguration>
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Debug|x64"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCResourceCompilerTool"
|
|
||||||
PreprocessorDefinitions=""
|
|
||||||
AdditionalIncludeDirectories="\Project\svc_perf_opt_b\codec\Wels\project\encoder\plus\res"
|
|
||||||
/>
|
|
||||||
</FileConfiguration>
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Release|Win32"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCResourceCompilerTool"
|
|
||||||
PreprocessorDefinitions=""
|
|
||||||
AdditionalIncludeDirectories="\Project\svc_perf_opt_b\codec\Wels\project\encoder\plus\res"
|
|
||||||
/>
|
|
||||||
</FileConfiguration>
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Release|x64"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCResourceCompilerTool"
|
|
||||||
PreprocessorDefinitions=""
|
|
||||||
AdditionalIncludeDirectories="\Project\svc_perf_opt_b\codec\Wels\project\encoder\plus\res"
|
|
||||||
/>
|
|
||||||
</FileConfiguration>
|
|
||||||
</File>
|
</File>
|
||||||
</Filter>
|
</Filter>
|
||||||
</Files>
|
</Files>
|
||||||
|
|||||||
@@ -17,7 +17,7 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "encConsole", "encConsole.vc
|
|||||||
{E8DFAFA1-8DAC-4127-8D27-FBD5819EE562} = {E8DFAFA1-8DAC-4127-8D27-FBD5819EE562}
|
{E8DFAFA1-8DAC-4127-8D27-FBD5819EE562} = {E8DFAFA1-8DAC-4127-8D27-FBD5819EE562}
|
||||||
EndProjectSection
|
EndProjectSection
|
||||||
EndProject
|
EndProject
|
||||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "WelsVP", "..\..\..\processing\build\win32\WelsVP_2008.vcproj", "{E8DFAFA1-8DAC-4127-8D27-FBD5819EE562}"
|
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "WelsVP", "..\..\..\processing\build\win32\WelsVP.vcproj", "{E8DFAFA1-8DAC-4127-8D27-FBD5819EE562}"
|
||||||
EndProject
|
EndProject
|
||||||
Global
|
Global
|
||||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||||
@@ -48,8 +48,8 @@
|
|||||||
<Tool
|
<Tool
|
||||||
Name="VCCLCompilerTool"
|
Name="VCCLCompilerTool"
|
||||||
Optimization="0"
|
Optimization="0"
|
||||||
AdditionalIncludeDirectories="..\..\..\console\enc\inc,..\..\..\api\svc,..\..\..\WelsThreadLib\api,..\..\..\encoder\core\inc,..\..\..\common\inc,..\..\..\processing\interface"
|
AdditionalIncludeDirectories="..\..\..\console\enc\inc,..\..\..\console\common\inc,..\..\..\api\svc,..\..\..\encoder\core\inc,..\..\..\common\inc,..\..\..\processing\interface"
|
||||||
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE;"
|
PreprocessorDefinitions="_DEBUG;_CONSOLE;"
|
||||||
MinimalRebuild="true"
|
MinimalRebuild="true"
|
||||||
BasicRuntimeChecks="3"
|
BasicRuntimeChecks="3"
|
||||||
RuntimeLibrary="1"
|
RuntimeLibrary="1"
|
||||||
@@ -58,7 +58,6 @@
|
|||||||
ObjectFile=".\..\..\..\obj\encConsole\Debug/"
|
ObjectFile=".\..\..\..\obj\encConsole\Debug/"
|
||||||
ProgramDataBaseFileName=".\..\..\..\obj\encConsole\Debug/"
|
ProgramDataBaseFileName=".\..\..\..\obj\encConsole\Debug/"
|
||||||
WarningLevel="3"
|
WarningLevel="3"
|
||||||
SuppressStartupBanner="true"
|
|
||||||
DebugInformationFormat="4"
|
DebugInformationFormat="4"
|
||||||
/>
|
/>
|
||||||
<Tool
|
<Tool
|
||||||
@@ -77,7 +76,6 @@
|
|||||||
AdditionalDependencies="$(OutDir)\welsenc.lib"
|
AdditionalDependencies="$(OutDir)\welsenc.lib"
|
||||||
OutputFile="$(OutDir)\encConsole.exe"
|
OutputFile="$(OutDir)\encConsole.exe"
|
||||||
LinkIncremental="2"
|
LinkIncremental="2"
|
||||||
SuppressStartupBanner="true"
|
|
||||||
AdditionalLibraryDirectories="..\..\..\bin"
|
AdditionalLibraryDirectories="..\..\..\bin"
|
||||||
GenerateDebugInformation="true"
|
GenerateDebugInformation="true"
|
||||||
ProgramDatabaseFile="$(OutDir)\encConsole.pdb"
|
ProgramDatabaseFile="$(OutDir)\encConsole.pdb"
|
||||||
@@ -99,102 +97,6 @@
|
|||||||
/>
|
/>
|
||||||
<Tool
|
<Tool
|
||||||
Name="VCBscMakeTool"
|
Name="VCBscMakeTool"
|
||||||
SuppressStartupBanner="true"
|
|
||||||
OutputFile="$(OutDir)\encConsole.bsc"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCFxCopTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCAppVerifierTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCPostBuildEventTool"
|
|
||||||
/>
|
|
||||||
</Configuration>
|
|
||||||
<Configuration
|
|
||||||
Name="Release|Win32"
|
|
||||||
OutputDirectory=".\..\..\..\..\bin\win32\Release"
|
|
||||||
IntermediateDirectory=".\..\..\..\obj\encConsole\Release"
|
|
||||||
ConfigurationType="1"
|
|
||||||
InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"
|
|
||||||
UseOfMFC="0"
|
|
||||||
ATLMinimizesCRunTimeLibraryUsage="false"
|
|
||||||
CharacterSet="2"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCPreBuildEventTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCCustomBuildTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCXMLDataGeneratorTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCWebServiceProxyGeneratorTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCMIDLTool"
|
|
||||||
TypeLibraryName=".\..\..\..\..\..\bin\Release/encConsole.tlb"
|
|
||||||
HeaderFileName=""
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
Optimization="2"
|
|
||||||
InlineFunctionExpansion="1"
|
|
||||||
AdditionalIncludeDirectories="..\..\..\console\enc\inc,..\..\..\api\svc,..\..\..\WelsThreadLib\api,..\..\..\encoder\core\inc,..\..\..\common\inc,..\..\..\processing\interface"
|
|
||||||
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE;X86_ASM;"
|
|
||||||
StringPooling="true"
|
|
||||||
RuntimeLibrary="0"
|
|
||||||
EnableFunctionLevelLinking="true"
|
|
||||||
PrecompiledHeaderFile=".\..\..\..\obj\encConsole\Release/encConsole.pch"
|
|
||||||
AssemblerListingLocation=".\..\..\..\obj\encConsole\Release/"
|
|
||||||
ObjectFile=".\..\..\..\obj\encConsole\Release/"
|
|
||||||
ProgramDataBaseFileName=".\..\..\..\obj\encConsole\Release/"
|
|
||||||
WarningLevel="3"
|
|
||||||
SuppressStartupBanner="true"
|
|
||||||
DebugInformationFormat="3"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCManagedResourceCompilerTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCResourceCompilerTool"
|
|
||||||
PreprocessorDefinitions="NDEBUG"
|
|
||||||
Culture="1033"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCPreLinkEventTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCLinkerTool"
|
|
||||||
AdditionalDependencies="$(OutDir)\welsenc.lib"
|
|
||||||
OutputFile="$(OutDir)\encConsole.exe"
|
|
||||||
LinkIncremental="1"
|
|
||||||
SuppressStartupBanner="true"
|
|
||||||
AdditionalLibraryDirectories="..\..\..\bin"
|
|
||||||
GenerateDebugInformation="true"
|
|
||||||
ProgramDatabaseFile="$(OutDir)\encConsole.pdb"
|
|
||||||
GenerateMapFile="false"
|
|
||||||
MapExports="false"
|
|
||||||
SubSystem="1"
|
|
||||||
RandomizedBaseAddress="1"
|
|
||||||
DataExecutionPrevention="2"
|
|
||||||
TargetMachine="1"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCALinkTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCManifestTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCXDCMakeTool"
|
|
||||||
/>
|
|
||||||
<Tool
|
|
||||||
Name="VCBscMakeTool"
|
|
||||||
SuppressStartupBanner="true"
|
|
||||||
OutputFile="$(OutDir)\encConsole.bsc"
|
OutputFile="$(OutDir)\encConsole.bsc"
|
||||||
/>
|
/>
|
||||||
<Tool
|
<Tool
|
||||||
@@ -238,8 +140,8 @@
|
|||||||
<Tool
|
<Tool
|
||||||
Name="VCCLCompilerTool"
|
Name="VCCLCompilerTool"
|
||||||
Optimization="0"
|
Optimization="0"
|
||||||
AdditionalIncludeDirectories="..\..\..\console\enc\inc,..\..\..\api\svc,..\..\..\WelsThreadLib\api,..\..\..\encoder\core\inc,..\..\..\common\inc,..\..\..\processing\interface"
|
AdditionalIncludeDirectories="..\..\..\console\enc\inc,..\..\..\console\common\inc,..\..\..\api\svc,..\..\..\encoder\core\inc,..\..\..\common\inc,..\..\..\processing\interface"
|
||||||
PreprocessorDefinitions="WIN64;_DEBUG;_CONSOLE"
|
PreprocessorDefinitions="_DEBUG;_CONSOLE"
|
||||||
MinimalRebuild="true"
|
MinimalRebuild="true"
|
||||||
BasicRuntimeChecks="3"
|
BasicRuntimeChecks="3"
|
||||||
RuntimeLibrary="1"
|
RuntimeLibrary="1"
|
||||||
@@ -248,7 +150,6 @@
|
|||||||
ObjectFile=".\..\..\..\obj\encConsole\Debug/"
|
ObjectFile=".\..\..\..\obj\encConsole\Debug/"
|
||||||
ProgramDataBaseFileName=".\..\..\..\obj\encConsole\Debug/"
|
ProgramDataBaseFileName=".\..\..\..\obj\encConsole\Debug/"
|
||||||
WarningLevel="3"
|
WarningLevel="3"
|
||||||
SuppressStartupBanner="true"
|
|
||||||
DebugInformationFormat="3"
|
DebugInformationFormat="3"
|
||||||
/>
|
/>
|
||||||
<Tool
|
<Tool
|
||||||
@@ -267,7 +168,6 @@
|
|||||||
AdditionalDependencies="$(OutDir)\welsenc.lib"
|
AdditionalDependencies="$(OutDir)\welsenc.lib"
|
||||||
OutputFile="$(OutDir)\encConsole.exe"
|
OutputFile="$(OutDir)\encConsole.exe"
|
||||||
LinkIncremental="2"
|
LinkIncremental="2"
|
||||||
SuppressStartupBanner="true"
|
|
||||||
AdditionalLibraryDirectories="..\..\..\bin"
|
AdditionalLibraryDirectories="..\..\..\bin"
|
||||||
GenerateDebugInformation="true"
|
GenerateDebugInformation="true"
|
||||||
ProgramDatabaseFile="$(OutDir)\encConsole.pdb"
|
ProgramDatabaseFile="$(OutDir)\encConsole.pdb"
|
||||||
@@ -289,7 +189,98 @@
|
|||||||
/>
|
/>
|
||||||
<Tool
|
<Tool
|
||||||
Name="VCBscMakeTool"
|
Name="VCBscMakeTool"
|
||||||
SuppressStartupBanner="true"
|
OutputFile="$(OutDir)\encConsole.bsc"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCFxCopTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCAppVerifierTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCPostBuildEventTool"
|
||||||
|
/>
|
||||||
|
</Configuration>
|
||||||
|
<Configuration
|
||||||
|
Name="Release|Win32"
|
||||||
|
OutputDirectory=".\..\..\..\..\bin\win32\Release"
|
||||||
|
IntermediateDirectory=".\..\..\..\obj\encConsole\Release"
|
||||||
|
ConfigurationType="1"
|
||||||
|
InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"
|
||||||
|
UseOfMFC="0"
|
||||||
|
ATLMinimizesCRunTimeLibraryUsage="false"
|
||||||
|
CharacterSet="2"
|
||||||
|
>
|
||||||
|
<Tool
|
||||||
|
Name="VCPreBuildEventTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCCustomBuildTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCXMLDataGeneratorTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCWebServiceProxyGeneratorTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCMIDLTool"
|
||||||
|
TypeLibraryName=".\..\..\..\..\..\bin\Release/encConsole.tlb"
|
||||||
|
HeaderFileName=""
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCCLCompilerTool"
|
||||||
|
Optimization="2"
|
||||||
|
InlineFunctionExpansion="1"
|
||||||
|
AdditionalIncludeDirectories="..\..\..\console\enc\inc,..\..\..\console\common\inc,..\..\..\api\svc,..\..\..\encoder\core\inc,..\..\..\common\inc,..\..\..\processing\interface"
|
||||||
|
PreprocessorDefinitions="NDEBUG;_CONSOLE;X86_ASM;"
|
||||||
|
StringPooling="true"
|
||||||
|
RuntimeLibrary="0"
|
||||||
|
EnableFunctionLevelLinking="true"
|
||||||
|
PrecompiledHeaderFile=".\..\..\..\obj\encConsole\Release/encConsole.pch"
|
||||||
|
AssemblerListingLocation=".\..\..\..\obj\encConsole\Release/"
|
||||||
|
ObjectFile=".\..\..\..\obj\encConsole\Release/"
|
||||||
|
ProgramDataBaseFileName=".\..\..\..\obj\encConsole\Release/"
|
||||||
|
WarningLevel="3"
|
||||||
|
DebugInformationFormat="3"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCManagedResourceCompilerTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCResourceCompilerTool"
|
||||||
|
PreprocessorDefinitions="NDEBUG"
|
||||||
|
Culture="1033"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCPreLinkEventTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCLinkerTool"
|
||||||
|
AdditionalDependencies="$(OutDir)\welsenc.lib"
|
||||||
|
OutputFile="$(OutDir)\encConsole.exe"
|
||||||
|
LinkIncremental="1"
|
||||||
|
AdditionalLibraryDirectories="..\..\..\bin"
|
||||||
|
GenerateDebugInformation="true"
|
||||||
|
ProgramDatabaseFile="$(OutDir)\encConsole.pdb"
|
||||||
|
GenerateMapFile="false"
|
||||||
|
MapExports="false"
|
||||||
|
SubSystem="1"
|
||||||
|
RandomizedBaseAddress="1"
|
||||||
|
DataExecutionPrevention="2"
|
||||||
|
TargetMachine="1"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCALinkTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCManifestTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCXDCMakeTool"
|
||||||
|
/>
|
||||||
|
<Tool
|
||||||
|
Name="VCBscMakeTool"
|
||||||
OutputFile="$(OutDir)\encConsole.bsc"
|
OutputFile="$(OutDir)\encConsole.bsc"
|
||||||
/>
|
/>
|
||||||
<Tool
|
<Tool
|
||||||
@@ -334,8 +325,8 @@
|
|||||||
Name="VCCLCompilerTool"
|
Name="VCCLCompilerTool"
|
||||||
Optimization="2"
|
Optimization="2"
|
||||||
InlineFunctionExpansion="1"
|
InlineFunctionExpansion="1"
|
||||||
AdditionalIncludeDirectories="..\..\..\console\enc\inc,..\..\..\api\svc,..\..\..\WelsThreadLib\api,..\..\..\encoder\core\inc,..\..\..\common\inc,..\..\..\processing\interface"
|
AdditionalIncludeDirectories="..\..\..\console\enc\inc,..\..\..\console\common\inc,..\..\..\api\svc,..\..\..\encoder\core\inc,..\..\..\common\inc,..\..\..\processing\interface"
|
||||||
PreprocessorDefinitions="WIN64;NDEBUG;_CONSOLE"
|
PreprocessorDefinitions="NDEBUG;_CONSOLE"
|
||||||
StringPooling="true"
|
StringPooling="true"
|
||||||
RuntimeLibrary="0"
|
RuntimeLibrary="0"
|
||||||
EnableFunctionLevelLinking="true"
|
EnableFunctionLevelLinking="true"
|
||||||
@@ -344,7 +335,6 @@
|
|||||||
ObjectFile=".\..\..\..\obj\encConsole\Release/"
|
ObjectFile=".\..\..\..\obj\encConsole\Release/"
|
||||||
ProgramDataBaseFileName=".\..\..\..\obj\encConsole\Release/"
|
ProgramDataBaseFileName=".\..\..\..\obj\encConsole\Release/"
|
||||||
WarningLevel="3"
|
WarningLevel="3"
|
||||||
SuppressStartupBanner="true"
|
|
||||||
DebugInformationFormat="3"
|
DebugInformationFormat="3"
|
||||||
/>
|
/>
|
||||||
<Tool
|
<Tool
|
||||||
@@ -363,7 +353,6 @@
|
|||||||
AdditionalDependencies="$(OutDir)\welsenc.lib"
|
AdditionalDependencies="$(OutDir)\welsenc.lib"
|
||||||
OutputFile="$(OutDir)\encConsole.exe"
|
OutputFile="$(OutDir)\encConsole.exe"
|
||||||
LinkIncremental="1"
|
LinkIncremental="1"
|
||||||
SuppressStartupBanner="true"
|
|
||||||
AdditionalLibraryDirectories="..\..\..\bin"
|
AdditionalLibraryDirectories="..\..\..\bin"
|
||||||
GenerateDebugInformation="true"
|
GenerateDebugInformation="true"
|
||||||
ProgramDatabaseFile="$(OutDir)\encConsole.pdb"
|
ProgramDatabaseFile="$(OutDir)\encConsole.pdb"
|
||||||
@@ -385,7 +374,6 @@
|
|||||||
/>
|
/>
|
||||||
<Tool
|
<Tool
|
||||||
Name="VCBscMakeTool"
|
Name="VCBscMakeTool"
|
||||||
SuppressStartupBanner="true"
|
|
||||||
OutputFile="$(OutDir)\encConsole.bsc"
|
OutputFile="$(OutDir)\encConsole.bsc"
|
||||||
/>
|
/>
|
||||||
<Tool
|
<Tool
|
||||||
@@ -407,88 +395,12 @@
|
|||||||
Filter="cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
|
Filter="cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
|
||||||
>
|
>
|
||||||
<File
|
<File
|
||||||
RelativePath="..\..\..\common\src\logging.cpp"
|
RelativePath="..\..\..\console\common\src\read_config.cpp"
|
||||||
>
|
>
|
||||||
</File>
|
</File>
|
||||||
<File
|
|
||||||
RelativePath="..\..\..\console\enc\src\read_config.cpp"
|
|
||||||
>
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Debug|Win32"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
AdditionalIncludeDirectories=""
|
|
||||||
PreprocessorDefinitions=""
|
|
||||||
/>
|
|
||||||
</FileConfiguration>
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Release|Win32"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
AdditionalIncludeDirectories=""
|
|
||||||
PreprocessorDefinitions=""
|
|
||||||
/>
|
|
||||||
</FileConfiguration>
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Debug|x64"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
AdditionalIncludeDirectories=""
|
|
||||||
PreprocessorDefinitions=""
|
|
||||||
/>
|
|
||||||
</FileConfiguration>
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Release|x64"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
AdditionalIncludeDirectories=""
|
|
||||||
PreprocessorDefinitions=""
|
|
||||||
/>
|
|
||||||
</FileConfiguration>
|
|
||||||
</File>
|
|
||||||
<File
|
<File
|
||||||
RelativePath="..\..\..\console\enc\src\welsenc.cpp"
|
RelativePath="..\..\..\console\enc\src\welsenc.cpp"
|
||||||
>
|
>
|
||||||
<FileConfiguration
|
|
||||||
Name="Debug|Win32"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
AdditionalIncludeDirectories=""
|
|
||||||
PreprocessorDefinitions=""
|
|
||||||
/>
|
|
||||||
</FileConfiguration>
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Release|Win32"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
AdditionalIncludeDirectories=""
|
|
||||||
PreprocessorDefinitions=""
|
|
||||||
/>
|
|
||||||
</FileConfiguration>
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Debug|x64"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
AdditionalIncludeDirectories=""
|
|
||||||
PreprocessorDefinitions=""
|
|
||||||
/>
|
|
||||||
</FileConfiguration>
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Release|x64"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
AdditionalIncludeDirectories=""
|
|
||||||
PreprocessorDefinitions=""
|
|
||||||
/>
|
|
||||||
</FileConfiguration>
|
|
||||||
</File>
|
</File>
|
||||||
</Filter>
|
</Filter>
|
||||||
<Filter
|
<Filter
|
||||||
@@ -496,7 +408,7 @@
|
|||||||
Filter="h;hpp;hxx;hm;inl"
|
Filter="h;hpp;hxx;hm;inl"
|
||||||
>
|
>
|
||||||
<File
|
<File
|
||||||
RelativePath="..\..\..\console\enc\inc\read_config.h"
|
RelativePath="..\..\..\console\common\inc\read_config.h"
|
||||||
>
|
>
|
||||||
</File>
|
</File>
|
||||||
</Filter>
|
</Filter>
|
||||||
|
|||||||
@@ -1,34 +1,34 @@
|
|||||||
/*!
|
/*!
|
||||||
* \copy
|
* \copy
|
||||||
* Copyright (c) 2013, Cisco Systems
|
* Copyright (c) 2013, Cisco Systems
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
|
*
|
||||||
* Redistribution and use in source and binary forms, with or without
|
* Redistribution and use in source and binary forms, with or without
|
||||||
* modification, are permitted provided that the following conditions
|
* modification, are permitted provided that the following conditions
|
||||||
* are met:
|
* are met:
|
||||||
|
*
|
||||||
* * Redistributions of source code must retain the above copyright
|
* * Redistributions of source code must retain the above copyright
|
||||||
* notice, this list of conditions and the following disclaimer.
|
* notice, this list of conditions and the following disclaimer.
|
||||||
|
*
|
||||||
* * Redistributions in binary form must reproduce the above copyright
|
* * Redistributions in binary form must reproduce the above copyright
|
||||||
* notice, this list of conditions and the following disclaimer in
|
* notice, this list of conditions and the following disclaimer in
|
||||||
* the documentation and/or other materials provided with the
|
* the documentation and/or other materials provided with the
|
||||||
* distribution.
|
* distribution.
|
||||||
|
*
|
||||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||||
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||||||
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
|
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
|
||||||
* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
|
* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
|
||||||
* COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
|
* COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
|
||||||
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
|
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
|
||||||
* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
||||||
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
|
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
|
||||||
* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||||||
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
|
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
|
||||||
* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
||||||
* POSSIBILITY OF SUCH DAMAGE.
|
* POSSIBILITY OF SUCH DAMAGE.
|
||||||
|
*
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifdef HAVE_NEON
|
#ifdef HAVE_NEON
|
||||||
.text
|
.text
|
||||||
|
|||||||
@@ -32,13 +32,13 @@
|
|||||||
|
|
||||||
#ifdef __APPLE__
|
#ifdef __APPLE__
|
||||||
|
|
||||||
.macro WELS_ASM_ARCH64_FUNC_BEGIN
|
.macro WELS_ASM_AARCH64_FUNC_BEGIN
|
||||||
.align 2
|
.align 2
|
||||||
.globl _$0
|
.globl _$0
|
||||||
_$0:
|
_$0:
|
||||||
.endm
|
.endm
|
||||||
|
|
||||||
.macro WELS_ASM_ARCH64_FUNC_END
|
.macro WELS_ASM_AARCH64_FUNC_END
|
||||||
ret
|
ret
|
||||||
.endm
|
.endm
|
||||||
#else
|
#else
|
||||||
@@ -46,7 +46,7 @@ ret
|
|||||||
.section .note.GNU-stack,"",%progbits // Mark stack as non-executable
|
.section .note.GNU-stack,"",%progbits // Mark stack as non-executable
|
||||||
.text
|
.text
|
||||||
|
|
||||||
.macro WELS_ASM_ARCH64_FUNC_BEGIN funcName
|
.macro WELS_ASM_AARCH64_FUNC_BEGIN funcName
|
||||||
.align 2
|
.align 2
|
||||||
.global \funcName
|
.global \funcName
|
||||||
.type \funcName, %function
|
.type \funcName, %function
|
||||||
@@ -54,7 +54,7 @@ ret
|
|||||||
\funcName:
|
\funcName:
|
||||||
.endm
|
.endm
|
||||||
|
|
||||||
.macro WELS_ASM_ARCH64_FUNC_END
|
.macro WELS_ASM_AARCH64_FUNC_END
|
||||||
ret
|
ret
|
||||||
.endfunc
|
.endfunc
|
||||||
.endm
|
.endm
|
||||||
|
|||||||
274
codec/common/arm64/copy_mb_aarch64_neon.S
Normal file
274
codec/common/arm64/copy_mb_aarch64_neon.S
Normal file
@@ -0,0 +1,274 @@
|
|||||||
|
/*!
|
||||||
|
* \copy
|
||||||
|
* Copyright (c) 2013, Cisco Systems
|
||||||
|
* All rights reserved.
|
||||||
|
*
|
||||||
|
* Redistribution and use in source and binary forms, with or without
|
||||||
|
* modification, are permitted provided that the following conditions
|
||||||
|
* are met:
|
||||||
|
*
|
||||||
|
* * Redistributions of source code must retain the above copyright
|
||||||
|
* notice, this list of conditions and the following disclaimer.
|
||||||
|
*
|
||||||
|
* * Redistributions in binary form must reproduce the above copyright
|
||||||
|
* notice, this list of conditions and the following disclaimer in
|
||||||
|
* the documentation and/or other materials provided with the
|
||||||
|
* distribution.
|
||||||
|
*
|
||||||
|
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||||
|
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||||||
|
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
|
||||||
|
* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
|
||||||
|
* COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
|
||||||
|
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
|
||||||
|
* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
||||||
|
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
|
||||||
|
* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||||||
|
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
|
||||||
|
* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
||||||
|
* POSSIBILITY OF SUCH DAMAGE.
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifdef HAVE_NEON_AARCH64
|
||||||
|
.text
|
||||||
|
#include "arm_arch64_common_macro.S"
|
||||||
|
|
||||||
|
#ifdef __APPLE__
|
||||||
|
.macro LOAD_ALIGNED_DATA_WITH_STRIDE
|
||||||
|
// { // input: $0~$3, src*, src_stride
|
||||||
|
ld1 {$0.d}[0], [$4], $5
|
||||||
|
ld1 {$1.d}[0], [$4], $5
|
||||||
|
ld1 {$2.d}[0], [$4], $5
|
||||||
|
ld1 {$3.d}[0], [$4], $5
|
||||||
|
// }
|
||||||
|
.endm
|
||||||
|
|
||||||
|
.macro STORE_ALIGNED_DATA_WITH_STRIDE
|
||||||
|
// { // input: $0~$3, dst*, dst_stride
|
||||||
|
st1 {$0.d}[0], [$4], $5
|
||||||
|
st1 {$1.d}[0], [$4], $5
|
||||||
|
st1 {$2.d}[0], [$4], $5
|
||||||
|
st1 {$3.d}[0], [$4], $5
|
||||||
|
// }
|
||||||
|
.endm
|
||||||
|
|
||||||
|
.macro LOAD_UNALIGNED_DATA_WITH_STRIDE
|
||||||
|
// { // input: $0~$3, src*, src_stride
|
||||||
|
ld1 {$0.8b}, [$4], $5
|
||||||
|
ld1 {$1.8b}, [$4], $5
|
||||||
|
ld1 {$2.8b}, [$4], $5
|
||||||
|
ld1 {$3.8b}, [$4], $5
|
||||||
|
// }
|
||||||
|
.endm
|
||||||
|
|
||||||
|
.macro STORE_UNALIGNED_DATA_WITH_STRIDE
|
||||||
|
// { // input: $0~$3, dst*, dst_stride
|
||||||
|
st1 {$0.8b}, [$4], $5
|
||||||
|
st1 {$1.8b}, [$4], $5
|
||||||
|
st1 {$2.8b}, [$4], $5
|
||||||
|
st1 {$3.8b}, [$4], $5
|
||||||
|
// }
|
||||||
|
.endm
|
||||||
|
|
||||||
|
.macro LOAD16_ALIGNED_DATA_WITH_STRIDE
|
||||||
|
// { // input: $0~$3, src*, src_stride
|
||||||
|
ld1 {$0.2d}, [$4], $5
|
||||||
|
ld1 {$1.2d}, [$4], $5
|
||||||
|
ld1 {$2.2d}, [$4], $5
|
||||||
|
ld1 {$3.2d}, [$4], $5
|
||||||
|
// }
|
||||||
|
.endm
|
||||||
|
|
||||||
|
.macro STORE16_ALIGNED_DATA_WITH_STRIDE
|
||||||
|
// { // input: $0~$3, dst*, dst_stride
|
||||||
|
st1 {$0.2d}, [$4], $5
|
||||||
|
st1 {$1.2d}, [$4], $5
|
||||||
|
st1 {$2.2d}, [$4], $5
|
||||||
|
st1 {$3.2d}, [$4], $5
|
||||||
|
// }
|
||||||
|
.endm
|
||||||
|
|
||||||
|
.macro LOAD16_UNALIGNED_DATA_WITH_STRIDE
|
||||||
|
// { // input: $0~$3, src*, src_stride
|
||||||
|
ld1 {$0.16b}, [$4], $5
|
||||||
|
ld1 {$1.16b}, [$4], $5
|
||||||
|
ld1 {$2.16b}, [$4], $5
|
||||||
|
ld1 {$3.16b}, [$4], $5
|
||||||
|
// }
|
||||||
|
.endm
|
||||||
|
|
||||||
|
.macro STORE16_UNALIGNED_DATA_WITH_STRIDE
|
||||||
|
// { // input: $0~$3, dst*, dst_stride
|
||||||
|
st1 {$0.16b}, [$4], $5
|
||||||
|
st1 {$1.16b}, [$4], $5
|
||||||
|
st1 {$2.16b}, [$4], $5
|
||||||
|
st1 {$3.16b}, [$4], $5
|
||||||
|
// }
|
||||||
|
.endm
|
||||||
|
|
||||||
|
#else
|
||||||
|
.macro LOAD_ALIGNED_DATA_WITH_STRIDE arg0, arg1, arg2, arg3, arg4, arg5
|
||||||
|
// { // input: $0~$3, src*, src_stride
|
||||||
|
ld1 {\arg0\().d}[0], [\arg4], \arg5
|
||||||
|
ld1 {\arg1\().d}[0], [\arg4], \arg5
|
||||||
|
ld1 {\arg2\().d}[0], [\arg4], \arg5
|
||||||
|
ld1 {\arg3\().d}[0], [\arg4], \arg5
|
||||||
|
// }
|
||||||
|
.endm
|
||||||
|
|
||||||
|
.macro STORE_ALIGNED_DATA_WITH_STRIDE arg0, arg1, arg2, arg3, arg4, arg5
|
||||||
|
// { // input: $0~$3, dst*, dst_stride
|
||||||
|
st1 {\arg0\().d}[0], [\arg4], \arg5
|
||||||
|
st1 {\arg1\().d}[0], [\arg4], \arg5
|
||||||
|
st1 {\arg2\().d}[0], [\arg4], \arg5
|
||||||
|
st1 {\arg3\().d}[0], [\arg4], \arg5
|
||||||
|
// }
|
||||||
|
.endm
|
||||||
|
|
||||||
|
.macro LOAD_UNALIGNED_DATA_WITH_STRIDE arg0, arg1, arg2, arg3, arg4, arg5
|
||||||
|
// { // input: $0~$3, src*, src_stride
|
||||||
|
ld1 {\arg0\().8b}, [\arg4], \arg5
|
||||||
|
ld1 {\arg1\().8b}, [\arg4], \arg5
|
||||||
|
ld1 {\arg2\().8b}, [\arg4], \arg5
|
||||||
|
ld1 {\arg3\().8b}, [\arg4], \arg5
|
||||||
|
// }
|
||||||
|
.endm
|
||||||
|
|
||||||
|
.macro STORE_UNALIGNED_DATA_WITH_STRIDE arg0, arg1, arg2, arg3, arg4, arg5
|
||||||
|
// { // input: $0~$3, dst*, dst_stride
|
||||||
|
st1 {\arg0\().8b}, [\arg4], \arg5
|
||||||
|
st1 {\arg1\().8b}, [\arg4], \arg5
|
||||||
|
st1 {\arg2\().8b}, [\arg4], \arg5
|
||||||
|
st1 {\arg3\().8b}, [\arg4], \arg5
|
||||||
|
// }
|
||||||
|
.endm
|
||||||
|
|
||||||
|
.macro LOAD16_ALIGNED_DATA_WITH_STRIDE arg0, arg1, arg2, arg3, arg4, arg5
|
||||||
|
// { // input: $0~$3, src*, src_stride
|
||||||
|
ld1 {\arg0\().2d}, [\arg4], \arg5
|
||||||
|
ld1 {\arg1\().2d}, [\arg4], \arg5
|
||||||
|
ld1 {\arg2\().2d}, [\arg4], \arg5
|
||||||
|
ld1 {\arg3\().2d}, [\arg4], \arg5
|
||||||
|
// }
|
||||||
|
.endm
|
||||||
|
|
||||||
|
.macro STORE16_ALIGNED_DATA_WITH_STRIDE arg0, arg1, arg2, arg3, arg4, arg5
|
||||||
|
// { // input: $0~$3, dst*, dst_stride
|
||||||
|
st1 {\arg0\().2d}, [\arg4], \arg5
|
||||||
|
st1 {\arg1\().2d}, [\arg4], \arg5
|
||||||
|
st1 {\arg2\().2d}, [\arg4], \arg5
|
||||||
|
st1 {\arg3\().2d}, [\arg4], \arg5
|
||||||
|
// }
|
||||||
|
.endm
|
||||||
|
|
||||||
|
.macro LOAD16_UNALIGNED_DATA_WITH_STRIDE arg0, arg1, arg2, arg3, arg4, arg5
|
||||||
|
// { // input: $0~$3, src*, src_stride
|
||||||
|
ld1 {\arg0\().16b}, [\arg4], \arg5
|
||||||
|
ld1 {\arg1\().16b}, [\arg4], \arg5
|
||||||
|
ld1 {\arg2\().16b}, [\arg4], \arg5
|
||||||
|
ld1 {\arg3\().16b}, [\arg4], \arg5
|
||||||
|
// }
|
||||||
|
.endm
|
||||||
|
|
||||||
|
.macro STORE16_UNALIGNED_DATA_WITH_STRIDE arg0, arg1, arg2, arg3, arg4, arg5
|
||||||
|
// { // input: $0~$3, dst*, dst_stride
|
||||||
|
st1 {\arg0\().16b}, [\arg4], \arg5
|
||||||
|
st1 {\arg1\().16b}, [\arg4], \arg5
|
||||||
|
st1 {\arg2\().16b}, [\arg4], \arg5
|
||||||
|
st1 {\arg3\().16b}, [\arg4], \arg5
|
||||||
|
// }
|
||||||
|
.endm
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
WELS_ASM_AARCH64_FUNC_BEGIN WelsCopy8x8_AArch64_neon
|
||||||
|
|
||||||
|
LOAD_UNALIGNED_DATA_WITH_STRIDE v0, v1, v2, v3, x2, x3
|
||||||
|
|
||||||
|
STORE_UNALIGNED_DATA_WITH_STRIDE v0, v1, v2, v3, x0, x1
|
||||||
|
|
||||||
|
LOAD_UNALIGNED_DATA_WITH_STRIDE v4, v5, v6, v7, x2, x3
|
||||||
|
|
||||||
|
STORE_UNALIGNED_DATA_WITH_STRIDE v4, v5, v6, v7, x0, x1
|
||||||
|
|
||||||
|
WELS_ASM_AARCH64_FUNC_END
|
||||||
|
|
||||||
|
|
||||||
|
WELS_ASM_AARCH64_FUNC_BEGIN WelsCopy16x16_AArch64_neon
|
||||||
|
|
||||||
|
LOAD16_ALIGNED_DATA_WITH_STRIDE v0, v1, v2, v3, x2, x3
|
||||||
|
|
||||||
|
STORE16_ALIGNED_DATA_WITH_STRIDE v0, v1, v2, v3, x0, x1
|
||||||
|
|
||||||
|
LOAD16_ALIGNED_DATA_WITH_STRIDE v16, v17, v18, v19, x2, x3
|
||||||
|
|
||||||
|
STORE16_ALIGNED_DATA_WITH_STRIDE v16, v17, v18, v19, x0, x1
|
||||||
|
|
||||||
|
LOAD16_ALIGNED_DATA_WITH_STRIDE v0, v1, v2, v3, x2, x3
|
||||||
|
|
||||||
|
STORE16_ALIGNED_DATA_WITH_STRIDE v0, v1, v2, v3, x0, x1
|
||||||
|
|
||||||
|
LOAD16_ALIGNED_DATA_WITH_STRIDE v16, v17, v18, v19, x2, x3
|
||||||
|
|
||||||
|
STORE16_ALIGNED_DATA_WITH_STRIDE v16, v17, v18, v19, x0, x1
|
||||||
|
|
||||||
|
WELS_ASM_AARCH64_FUNC_END
|
||||||
|
|
||||||
|
|
||||||
|
WELS_ASM_AARCH64_FUNC_BEGIN WelsCopy16x16NotAligned_AArch64_neon
|
||||||
|
|
||||||
|
LOAD16_UNALIGNED_DATA_WITH_STRIDE v0, v1, v2, v3, x2, x3
|
||||||
|
|
||||||
|
STORE16_UNALIGNED_DATA_WITH_STRIDE v0, v1, v2, v3, x0, x1
|
||||||
|
|
||||||
|
LOAD16_UNALIGNED_DATA_WITH_STRIDE v16, v17, v18, v19, x2, x3
|
||||||
|
|
||||||
|
STORE16_UNALIGNED_DATA_WITH_STRIDE v16, v17, v18, v19, x0, x1
|
||||||
|
|
||||||
|
LOAD16_UNALIGNED_DATA_WITH_STRIDE v0, v1, v2, v3, x2, x3
|
||||||
|
|
||||||
|
STORE16_UNALIGNED_DATA_WITH_STRIDE v0, v1, v2, v3, x0, x1
|
||||||
|
|
||||||
|
LOAD16_UNALIGNED_DATA_WITH_STRIDE v16, v17, v18, v19, x2, x3
|
||||||
|
|
||||||
|
STORE16_UNALIGNED_DATA_WITH_STRIDE v16, v17, v18, v19, x0, x1
|
||||||
|
|
||||||
|
WELS_ASM_AARCH64_FUNC_END
|
||||||
|
|
||||||
|
|
||||||
|
WELS_ASM_AARCH64_FUNC_BEGIN WelsCopy16x8NotAligned_AArch64_neon
|
||||||
|
|
||||||
|
LOAD16_UNALIGNED_DATA_WITH_STRIDE v0, v1, v2, v3, x2, x3
|
||||||
|
|
||||||
|
STORE16_UNALIGNED_DATA_WITH_STRIDE v0, v1, v2, v3, x0, x1
|
||||||
|
|
||||||
|
LOAD16_UNALIGNED_DATA_WITH_STRIDE v16, v17, v18, v19, x2, x3
|
||||||
|
|
||||||
|
STORE16_UNALIGNED_DATA_WITH_STRIDE v16, v17, v18, v19, x0, x1
|
||||||
|
|
||||||
|
WELS_ASM_AARCH64_FUNC_END
|
||||||
|
|
||||||
|
|
||||||
|
WELS_ASM_AARCH64_FUNC_BEGIN WelsCopy8x16_AArch64_neon
|
||||||
|
|
||||||
|
LOAD_UNALIGNED_DATA_WITH_STRIDE v0, v1, v2, v3, x2, x3
|
||||||
|
|
||||||
|
STORE_UNALIGNED_DATA_WITH_STRIDE v0, v1, v2, v3, x0, x1
|
||||||
|
|
||||||
|
LOAD_UNALIGNED_DATA_WITH_STRIDE v4, v5, v6, v7, x2, x3
|
||||||
|
|
||||||
|
STORE_UNALIGNED_DATA_WITH_STRIDE v4, v5, v6, v7, x0, x1
|
||||||
|
|
||||||
|
LOAD_UNALIGNED_DATA_WITH_STRIDE v0, v1, v2, v3, x2, x3
|
||||||
|
|
||||||
|
STORE_UNALIGNED_DATA_WITH_STRIDE v0, v1, v2, v3, x0, x1
|
||||||
|
|
||||||
|
LOAD_UNALIGNED_DATA_WITH_STRIDE v4, v5, v6, v7, x2, x3
|
||||||
|
|
||||||
|
STORE_UNALIGNED_DATA_WITH_STRIDE v4, v5, v6, v7, x0, x1
|
||||||
|
|
||||||
|
WELS_ASM_AARCH64_FUNC_END
|
||||||
|
|
||||||
|
#endif
|
||||||
1116
codec/common/arm64/deblocking_aarch64_neon.S
Normal file
1116
codec/common/arm64/deblocking_aarch64_neon.S
Normal file
File diff suppressed because it is too large
Load Diff
@@ -34,7 +34,7 @@
|
|||||||
.text
|
.text
|
||||||
#include "arm_arch64_common_macro.S"
|
#include "arm_arch64_common_macro.S"
|
||||||
|
|
||||||
WELS_ASM_ARCH64_FUNC_BEGIN ExpandPictureLuma_AArch64_neon
|
WELS_ASM_AARCH64_FUNC_BEGIN ExpandPictureLuma_AArch64_neon
|
||||||
mov x7, x0
|
mov x7, x0
|
||||||
mov x8, x3
|
mov x8, x3
|
||||||
add x4, x7, x2
|
add x4, x7, x2
|
||||||
@@ -72,9 +72,9 @@ _expand_picture_luma_loop1:
|
|||||||
|
|
||||||
sub x2, x2, #16
|
sub x2, x2, #16
|
||||||
cbnz x2, _expand_picture_luma_loop0
|
cbnz x2, _expand_picture_luma_loop0
|
||||||
WELS_ASM_ARCH64_FUNC_END
|
WELS_ASM_AARCH64_FUNC_END
|
||||||
|
|
||||||
WELS_ASM_ARCH64_FUNC_BEGIN ExpandPictureChroma_AArch64_neon
|
WELS_ASM_AARCH64_FUNC_BEGIN ExpandPictureChroma_AArch64_neon
|
||||||
//Save the dst
|
//Save the dst
|
||||||
mov x7, x0
|
mov x7, x0
|
||||||
mov x8, x3
|
mov x8, x3
|
||||||
@@ -138,6 +138,6 @@ _expand_picture_chroma_loop3:
|
|||||||
cbnz x8, _expand_picture_chroma_loop3
|
cbnz x8, _expand_picture_chroma_loop3
|
||||||
_expand_picture_chroma_end:
|
_expand_picture_chroma_end:
|
||||||
|
|
||||||
WELS_ASM_ARCH64_FUNC_END
|
WELS_ASM_AARCH64_FUNC_END
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|||||||
@@ -386,7 +386,7 @@ filter_para: .short 0, 1, -5, 20, 0, 0, 0, 0
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
//(const uint8_t* pSrc {x0}, int32_t iSrcStride{x1}, uint8_t* pDst{x2}, int32_t iDstStride{x3}, int32_t iHeight{x4})
|
//(const uint8_t* pSrc {x0}, int32_t iSrcStride{x1}, uint8_t* pDst{x2}, int32_t iDstStride{x3}, int32_t iHeight{x4})
|
||||||
WELS_ASM_ARCH64_FUNC_BEGIN McHorVer20WidthEq16_AArch64_neon
|
WELS_ASM_AARCH64_FUNC_BEGIN McHorVer20WidthEq16_AArch64_neon
|
||||||
sub x0, x0, #2
|
sub x0, x0, #2
|
||||||
movi v0.8h, #20, lsl #0
|
movi v0.8h, #20, lsl #0
|
||||||
movi v1.8h, #5, lsl #0
|
movi v1.8h, #5, lsl #0
|
||||||
@@ -406,9 +406,9 @@ w16_h_mc_luma_loop:
|
|||||||
sub x4, x4, #1
|
sub x4, x4, #1
|
||||||
st1 {v20.16b}, [x2], x3 //write 16Byte
|
st1 {v20.16b}, [x2], x3 //write 16Byte
|
||||||
cbnz x4, w16_h_mc_luma_loop
|
cbnz x4, w16_h_mc_luma_loop
|
||||||
WELS_ASM_ARCH64_FUNC_END
|
WELS_ASM_AARCH64_FUNC_END
|
||||||
|
|
||||||
WELS_ASM_ARCH64_FUNC_BEGIN McHorVer20WidthEq8_AArch64_neon
|
WELS_ASM_AARCH64_FUNC_BEGIN McHorVer20WidthEq8_AArch64_neon
|
||||||
sub x0, x0, #2
|
sub x0, x0, #2
|
||||||
movi v0.8h, #20, lsl #0
|
movi v0.8h, #20, lsl #0
|
||||||
movi v1.8h, #5, lsl #0
|
movi v1.8h, #5, lsl #0
|
||||||
@@ -427,9 +427,9 @@ w8_h_mc_luma_loop:
|
|||||||
sub x4, x4, #1
|
sub x4, x4, #1
|
||||||
st1 {v20.8b}, [x2], x3 //write 8Byte
|
st1 {v20.8b}, [x2], x3 //write 8Byte
|
||||||
cbnz x4, w8_h_mc_luma_loop
|
cbnz x4, w8_h_mc_luma_loop
|
||||||
WELS_ASM_ARCH64_FUNC_END
|
WELS_ASM_AARCH64_FUNC_END
|
||||||
|
|
||||||
WELS_ASM_ARCH64_FUNC_BEGIN McHorVer20WidthEq4_AArch64_neon
|
WELS_ASM_AARCH64_FUNC_BEGIN McHorVer20WidthEq4_AArch64_neon
|
||||||
sub x0, x0, #2
|
sub x0, x0, #2
|
||||||
movi v0.8h, #20, lsl #0
|
movi v0.8h, #20, lsl #0
|
||||||
movi v1.8h, #5, lsl #0
|
movi v1.8h, #5, lsl #0
|
||||||
@@ -462,9 +462,9 @@ w4_h_mc_luma_loop:
|
|||||||
st1 {v20.s}[1], [x2], x3 //write 4Byte
|
st1 {v20.s}[1], [x2], x3 //write 4Byte
|
||||||
sub x4, x4, #1
|
sub x4, x4, #1
|
||||||
cbnz x4, w4_h_mc_luma_loop
|
cbnz x4, w4_h_mc_luma_loop
|
||||||
WELS_ASM_ARCH64_FUNC_END
|
WELS_ASM_AARCH64_FUNC_END
|
||||||
|
|
||||||
WELS_ASM_ARCH64_FUNC_BEGIN McHorVer10WidthEq16_AArch64_neon
|
WELS_ASM_AARCH64_FUNC_BEGIN McHorVer10WidthEq16_AArch64_neon
|
||||||
sub x0, x0, #2
|
sub x0, x0, #2
|
||||||
movi v0.8h, #20, lsl #0
|
movi v0.8h, #20, lsl #0
|
||||||
movi v1.8h, #5, lsl #0
|
movi v1.8h, #5, lsl #0
|
||||||
@@ -484,10 +484,10 @@ w16_xy_10_mc_luma_loop:
|
|||||||
sub x4, x4, #1
|
sub x4, x4, #1
|
||||||
st1 {v20.16b}, [x2], x3 //write 16Byte
|
st1 {v20.16b}, [x2], x3 //write 16Byte
|
||||||
cbnz x4, w16_xy_10_mc_luma_loop
|
cbnz x4, w16_xy_10_mc_luma_loop
|
||||||
WELS_ASM_ARCH64_FUNC_END
|
WELS_ASM_AARCH64_FUNC_END
|
||||||
|
|
||||||
|
|
||||||
WELS_ASM_ARCH64_FUNC_BEGIN McHorVer10WidthEq8_AArch64_neon
|
WELS_ASM_AARCH64_FUNC_BEGIN McHorVer10WidthEq8_AArch64_neon
|
||||||
sub x0, x0, #2
|
sub x0, x0, #2
|
||||||
movi v0.8h, #20, lsl #0
|
movi v0.8h, #20, lsl #0
|
||||||
movi v1.8h, #5, lsl #0
|
movi v1.8h, #5, lsl #0
|
||||||
@@ -506,9 +506,9 @@ w8_xy_10_mc_luma_loop:
|
|||||||
sub x4, x4, #1
|
sub x4, x4, #1
|
||||||
st1 {v20.8b}, [x2], x3 //write 8Byte
|
st1 {v20.8b}, [x2], x3 //write 8Byte
|
||||||
cbnz x4, w8_xy_10_mc_luma_loop
|
cbnz x4, w8_xy_10_mc_luma_loop
|
||||||
WELS_ASM_ARCH64_FUNC_END
|
WELS_ASM_AARCH64_FUNC_END
|
||||||
|
|
||||||
WELS_ASM_ARCH64_FUNC_BEGIN McHorVer10WidthEq4_AArch64_neon
|
WELS_ASM_AARCH64_FUNC_BEGIN McHorVer10WidthEq4_AArch64_neon
|
||||||
sub x0, x0, #2
|
sub x0, x0, #2
|
||||||
movi v0.8h, #20, lsl #0
|
movi v0.8h, #20, lsl #0
|
||||||
movi v1.8h, #5, lsl #0
|
movi v1.8h, #5, lsl #0
|
||||||
@@ -541,10 +541,10 @@ w4_xy_10_mc_luma_loop:
|
|||||||
st1 {v20.s}[1], [x2], x3 //write 4Byte
|
st1 {v20.s}[1], [x2], x3 //write 4Byte
|
||||||
sub x4, x4, #1
|
sub x4, x4, #1
|
||||||
cbnz x4, w4_xy_10_mc_luma_loop
|
cbnz x4, w4_xy_10_mc_luma_loop
|
||||||
WELS_ASM_ARCH64_FUNC_END
|
WELS_ASM_AARCH64_FUNC_END
|
||||||
|
|
||||||
|
|
||||||
WELS_ASM_ARCH64_FUNC_BEGIN McHorVer30WidthEq16_AArch64_neon
|
WELS_ASM_AARCH64_FUNC_BEGIN McHorVer30WidthEq16_AArch64_neon
|
||||||
sub x0, x0, #2
|
sub x0, x0, #2
|
||||||
movi v0.8h, #20, lsl #0
|
movi v0.8h, #20, lsl #0
|
||||||
movi v1.8h, #5, lsl #0
|
movi v1.8h, #5, lsl #0
|
||||||
@@ -564,10 +564,10 @@ w16_xy_30_mc_luma_loop:
|
|||||||
sub x4, x4, #1
|
sub x4, x4, #1
|
||||||
st1 {v20.16b}, [x2], x3 //write 16Byte
|
st1 {v20.16b}, [x2], x3 //write 16Byte
|
||||||
cbnz x4, w16_xy_30_mc_luma_loop
|
cbnz x4, w16_xy_30_mc_luma_loop
|
||||||
WELS_ASM_ARCH64_FUNC_END
|
WELS_ASM_AARCH64_FUNC_END
|
||||||
|
|
||||||
|
|
||||||
WELS_ASM_ARCH64_FUNC_BEGIN McHorVer30WidthEq8_AArch64_neon
|
WELS_ASM_AARCH64_FUNC_BEGIN McHorVer30WidthEq8_AArch64_neon
|
||||||
sub x0, x0, #2
|
sub x0, x0, #2
|
||||||
movi v0.8h, #20, lsl #0
|
movi v0.8h, #20, lsl #0
|
||||||
movi v1.8h, #5, lsl #0
|
movi v1.8h, #5, lsl #0
|
||||||
@@ -586,9 +586,9 @@ w8_xy_30_mc_luma_loop:
|
|||||||
sub x4, x4, #1
|
sub x4, x4, #1
|
||||||
st1 {v20.8b}, [x2], x3 //write 8Byte
|
st1 {v20.8b}, [x2], x3 //write 8Byte
|
||||||
cbnz x4, w8_xy_30_mc_luma_loop
|
cbnz x4, w8_xy_30_mc_luma_loop
|
||||||
WELS_ASM_ARCH64_FUNC_END
|
WELS_ASM_AARCH64_FUNC_END
|
||||||
|
|
||||||
WELS_ASM_ARCH64_FUNC_BEGIN McHorVer30WidthEq4_AArch64_neon
|
WELS_ASM_AARCH64_FUNC_BEGIN McHorVer30WidthEq4_AArch64_neon
|
||||||
sub x0, x0, #2
|
sub x0, x0, #2
|
||||||
movi v0.8h, #20, lsl #0
|
movi v0.8h, #20, lsl #0
|
||||||
movi v1.8h, #5, lsl #0
|
movi v1.8h, #5, lsl #0
|
||||||
@@ -621,10 +621,10 @@ w4_xy_30_mc_luma_loop:
|
|||||||
st1 {v20.s}[1], [x2], x3 //write 4Byte
|
st1 {v20.s}[1], [x2], x3 //write 4Byte
|
||||||
sub x4, x4, #1
|
sub x4, x4, #1
|
||||||
cbnz x4, w4_xy_30_mc_luma_loop
|
cbnz x4, w4_xy_30_mc_luma_loop
|
||||||
WELS_ASM_ARCH64_FUNC_END
|
WELS_ASM_AARCH64_FUNC_END
|
||||||
|
|
||||||
|
|
||||||
WELS_ASM_ARCH64_FUNC_BEGIN McHorVer01WidthEq16_AArch64_neon
|
WELS_ASM_AARCH64_FUNC_BEGIN McHorVer01WidthEq16_AArch64_neon
|
||||||
sub x0, x0, x1, lsl #1
|
sub x0, x0, x1, lsl #1
|
||||||
movi v0.8h, #20, lsl #0
|
movi v0.8h, #20, lsl #0
|
||||||
movi v1.8h, #5, lsl #0
|
movi v1.8h, #5, lsl #0
|
||||||
@@ -704,10 +704,10 @@ w16_xy_01_mc_luma_loop:
|
|||||||
mov.16b v6, v7
|
mov.16b v6, v7
|
||||||
sub x4, x4, #8
|
sub x4, x4, #8
|
||||||
cbnz x4, w16_xy_01_mc_luma_loop
|
cbnz x4, w16_xy_01_mc_luma_loop
|
||||||
WELS_ASM_ARCH64_FUNC_END
|
WELS_ASM_AARCH64_FUNC_END
|
||||||
|
|
||||||
|
|
||||||
WELS_ASM_ARCH64_FUNC_BEGIN McHorVer01WidthEq8_AArch64_neon
|
WELS_ASM_AARCH64_FUNC_BEGIN McHorVer01WidthEq8_AArch64_neon
|
||||||
sub x0, x0, x1, lsl #1
|
sub x0, x0, x1, lsl #1
|
||||||
movi v0.8h, #20, lsl #0
|
movi v0.8h, #20, lsl #0
|
||||||
movi v1.8h, #5, lsl #0
|
movi v1.8h, #5, lsl #0
|
||||||
@@ -754,10 +754,10 @@ w8_xy_01_mc_luma_loop:
|
|||||||
mov.16b v4, v7
|
mov.16b v4, v7
|
||||||
sub x4, x4, #4
|
sub x4, x4, #4
|
||||||
cbnz x4, w8_xy_01_mc_luma_loop
|
cbnz x4, w8_xy_01_mc_luma_loop
|
||||||
WELS_ASM_ARCH64_FUNC_END
|
WELS_ASM_AARCH64_FUNC_END
|
||||||
|
|
||||||
|
|
||||||
WELS_ASM_ARCH64_FUNC_BEGIN McHorVer01WidthEq4_AArch64_neon
|
WELS_ASM_AARCH64_FUNC_BEGIN McHorVer01WidthEq4_AArch64_neon
|
||||||
sub x0, x0, x1, lsl #1
|
sub x0, x0, x1, lsl #1
|
||||||
movi v0.8h, #20, lsl #0
|
movi v0.8h, #20, lsl #0
|
||||||
movi v1.8h, #5, lsl #0
|
movi v1.8h, #5, lsl #0
|
||||||
@@ -810,10 +810,10 @@ w4_xy_01_mc_luma_loop:
|
|||||||
|
|
||||||
sub x4, x4, #4
|
sub x4, x4, #4
|
||||||
cbnz x4, w4_xy_01_mc_luma_loop
|
cbnz x4, w4_xy_01_mc_luma_loop
|
||||||
WELS_ASM_ARCH64_FUNC_END
|
WELS_ASM_AARCH64_FUNC_END
|
||||||
|
|
||||||
|
|
||||||
WELS_ASM_ARCH64_FUNC_BEGIN McHorVer03WidthEq16_AArch64_neon
|
WELS_ASM_AARCH64_FUNC_BEGIN McHorVer03WidthEq16_AArch64_neon
|
||||||
sub x0, x0, x1, lsl #1
|
sub x0, x0, x1, lsl #1
|
||||||
movi v0.8h, #20, lsl #0
|
movi v0.8h, #20, lsl #0
|
||||||
movi v1.8h, #5, lsl #0
|
movi v1.8h, #5, lsl #0
|
||||||
@@ -893,10 +893,10 @@ w16_xy_03_mc_luma_loop:
|
|||||||
mov.16b v6, v7
|
mov.16b v6, v7
|
||||||
sub x4, x4, #8
|
sub x4, x4, #8
|
||||||
cbnz x4, w16_xy_03_mc_luma_loop
|
cbnz x4, w16_xy_03_mc_luma_loop
|
||||||
WELS_ASM_ARCH64_FUNC_END
|
WELS_ASM_AARCH64_FUNC_END
|
||||||
|
|
||||||
|
|
||||||
WELS_ASM_ARCH64_FUNC_BEGIN McHorVer03WidthEq8_AArch64_neon
|
WELS_ASM_AARCH64_FUNC_BEGIN McHorVer03WidthEq8_AArch64_neon
|
||||||
sub x0, x0, x1, lsl #1
|
sub x0, x0, x1, lsl #1
|
||||||
movi v0.8h, #20, lsl #0
|
movi v0.8h, #20, lsl #0
|
||||||
movi v1.8h, #5, lsl #0
|
movi v1.8h, #5, lsl #0
|
||||||
@@ -943,10 +943,10 @@ w8_xy_03_mc_luma_loop:
|
|||||||
mov.16b v4, v7
|
mov.16b v4, v7
|
||||||
sub x4, x4, #4
|
sub x4, x4, #4
|
||||||
cbnz x4, w8_xy_03_mc_luma_loop
|
cbnz x4, w8_xy_03_mc_luma_loop
|
||||||
WELS_ASM_ARCH64_FUNC_END
|
WELS_ASM_AARCH64_FUNC_END
|
||||||
|
|
||||||
|
|
||||||
WELS_ASM_ARCH64_FUNC_BEGIN McHorVer03WidthEq4_AArch64_neon
|
WELS_ASM_AARCH64_FUNC_BEGIN McHorVer03WidthEq4_AArch64_neon
|
||||||
sub x0, x0, x1, lsl #1
|
sub x0, x0, x1, lsl #1
|
||||||
movi v0.8h, #20, lsl #0
|
movi v0.8h, #20, lsl #0
|
||||||
movi v1.8h, #5, lsl #0
|
movi v1.8h, #5, lsl #0
|
||||||
@@ -999,10 +999,10 @@ w4_xy_03_mc_luma_loop:
|
|||||||
|
|
||||||
sub x4, x4, #4
|
sub x4, x4, #4
|
||||||
cbnz x4, w4_xy_03_mc_luma_loop
|
cbnz x4, w4_xy_03_mc_luma_loop
|
||||||
WELS_ASM_ARCH64_FUNC_END
|
WELS_ASM_AARCH64_FUNC_END
|
||||||
|
|
||||||
|
|
||||||
WELS_ASM_ARCH64_FUNC_BEGIN McHorVer02WidthEq16_AArch64_neon
|
WELS_ASM_AARCH64_FUNC_BEGIN McHorVer02WidthEq16_AArch64_neon
|
||||||
sub x0, x0, x1, lsl #1
|
sub x0, x0, x1, lsl #1
|
||||||
movi v0.8h, #20, lsl #0
|
movi v0.8h, #20, lsl #0
|
||||||
movi v1.8h, #5, lsl #0
|
movi v1.8h, #5, lsl #0
|
||||||
@@ -1082,10 +1082,10 @@ w16_xy_02_mc_luma_loop:
|
|||||||
mov.16b v6, v7
|
mov.16b v6, v7
|
||||||
sub x4, x4, #8
|
sub x4, x4, #8
|
||||||
cbnz x4, w16_xy_02_mc_luma_loop
|
cbnz x4, w16_xy_02_mc_luma_loop
|
||||||
WELS_ASM_ARCH64_FUNC_END
|
WELS_ASM_AARCH64_FUNC_END
|
||||||
|
|
||||||
|
|
||||||
WELS_ASM_ARCH64_FUNC_BEGIN McHorVer02WidthEq8_AArch64_neon
|
WELS_ASM_AARCH64_FUNC_BEGIN McHorVer02WidthEq8_AArch64_neon
|
||||||
sub x0, x0, x1, lsl #1
|
sub x0, x0, x1, lsl #1
|
||||||
movi v0.8h, #20, lsl #0
|
movi v0.8h, #20, lsl #0
|
||||||
movi v1.8h, #5, lsl #0
|
movi v1.8h, #5, lsl #0
|
||||||
@@ -1132,10 +1132,10 @@ w8_xy_02_mc_luma_loop:
|
|||||||
mov.16b v4, v7
|
mov.16b v4, v7
|
||||||
sub x4, x4, #4
|
sub x4, x4, #4
|
||||||
cbnz x4, w8_xy_02_mc_luma_loop
|
cbnz x4, w8_xy_02_mc_luma_loop
|
||||||
WELS_ASM_ARCH64_FUNC_END
|
WELS_ASM_AARCH64_FUNC_END
|
||||||
|
|
||||||
|
|
||||||
WELS_ASM_ARCH64_FUNC_BEGIN McHorVer02WidthEq4_AArch64_neon
|
WELS_ASM_AARCH64_FUNC_BEGIN McHorVer02WidthEq4_AArch64_neon
|
||||||
sub x0, x0, x1, lsl #1
|
sub x0, x0, x1, lsl #1
|
||||||
movi v0.8h, #20, lsl #0
|
movi v0.8h, #20, lsl #0
|
||||||
movi v1.8h, #5, lsl #0
|
movi v1.8h, #5, lsl #0
|
||||||
@@ -1188,10 +1188,10 @@ w4_xy_02_mc_luma_loop:
|
|||||||
|
|
||||||
sub x4, x4, #4
|
sub x4, x4, #4
|
||||||
cbnz x4, w4_xy_02_mc_luma_loop
|
cbnz x4, w4_xy_02_mc_luma_loop
|
||||||
WELS_ASM_ARCH64_FUNC_END
|
WELS_ASM_AARCH64_FUNC_END
|
||||||
|
|
||||||
|
|
||||||
WELS_ASM_ARCH64_FUNC_BEGIN McHorVer22WidthEq16_AArch64_neon
|
WELS_ASM_AARCH64_FUNC_BEGIN McHorVer22WidthEq16_AArch64_neon
|
||||||
stp d8, d9, [sp,#-16]!
|
stp d8, d9, [sp,#-16]!
|
||||||
stp d10, d11, [sp,#-16]!
|
stp d10, d11, [sp,#-16]!
|
||||||
stp d12, d13, [sp,#-16]!
|
stp d12, d13, [sp,#-16]!
|
||||||
@@ -1354,9 +1354,9 @@ w16_hv_mc_luma_loop:
|
|||||||
ldp d12, d13, [sp], #16
|
ldp d12, d13, [sp], #16
|
||||||
ldp d10, d11, [sp], #16
|
ldp d10, d11, [sp], #16
|
||||||
ldp d8, d9, [sp], #16
|
ldp d8, d9, [sp], #16
|
||||||
WELS_ASM_ARCH64_FUNC_END
|
WELS_ASM_AARCH64_FUNC_END
|
||||||
|
|
||||||
WELS_ASM_ARCH64_FUNC_BEGIN McHorVer22WidthEq8_AArch64_neon
|
WELS_ASM_AARCH64_FUNC_BEGIN McHorVer22WidthEq8_AArch64_neon
|
||||||
sub x0, x0, #2
|
sub x0, x0, #2
|
||||||
sub x0, x0, x1, lsl #1
|
sub x0, x0, x1, lsl #1
|
||||||
movi v0.8h, #20, lsl #0
|
movi v0.8h, #20, lsl #0
|
||||||
@@ -1425,10 +1425,10 @@ w8_hv_mc_luma_loop:
|
|||||||
|
|
||||||
sub x4, x4, #4
|
sub x4, x4, #4
|
||||||
cbnz x4, w8_hv_mc_luma_loop
|
cbnz x4, w8_hv_mc_luma_loop
|
||||||
WELS_ASM_ARCH64_FUNC_END
|
WELS_ASM_AARCH64_FUNC_END
|
||||||
|
|
||||||
|
|
||||||
WELS_ASM_ARCH64_FUNC_BEGIN McHorVer22WidthEq4_AArch64_neon
|
WELS_ASM_AARCH64_FUNC_BEGIN McHorVer22WidthEq4_AArch64_neon
|
||||||
sub x0, x0, #2
|
sub x0, x0, #2
|
||||||
sub x0, x0, x1, lsl #1
|
sub x0, x0, x1, lsl #1
|
||||||
movi v0.8h, #20, lsl #0
|
movi v0.8h, #20, lsl #0
|
||||||
@@ -1496,9 +1496,9 @@ w4_hv_mc_luma_loop:
|
|||||||
|
|
||||||
sub x4, x4, #4
|
sub x4, x4, #4
|
||||||
cbnz x4, w4_hv_mc_luma_loop
|
cbnz x4, w4_hv_mc_luma_loop
|
||||||
WELS_ASM_ARCH64_FUNC_END
|
WELS_ASM_AARCH64_FUNC_END
|
||||||
|
|
||||||
WELS_ASM_ARCH64_FUNC_BEGIN McCopyWidthEq16_AArch64_neon
|
WELS_ASM_AARCH64_FUNC_BEGIN McCopyWidthEq16_AArch64_neon
|
||||||
//prfm pldl1strm, [x0]
|
//prfm pldl1strm, [x0]
|
||||||
w16_copy_loop:
|
w16_copy_loop:
|
||||||
//prfm pldl1strm, [x0, x1]
|
//prfm pldl1strm, [x0, x1]
|
||||||
@@ -1510,9 +1510,9 @@ w16_copy_loop:
|
|||||||
|
|
||||||
sub x4, x4, #2
|
sub x4, x4, #2
|
||||||
cbnz x4, w16_copy_loop
|
cbnz x4, w16_copy_loop
|
||||||
WELS_ASM_ARCH64_FUNC_END
|
WELS_ASM_AARCH64_FUNC_END
|
||||||
|
|
||||||
WELS_ASM_ARCH64_FUNC_BEGIN McCopyWidthEq8_AArch64_neon
|
WELS_ASM_AARCH64_FUNC_BEGIN McCopyWidthEq8_AArch64_neon
|
||||||
//prfm pldl1strm, [x0]
|
//prfm pldl1strm, [x0]
|
||||||
w8_copy_loop:
|
w8_copy_loop:
|
||||||
//prfm pldl1strm, [x0, x1]
|
//prfm pldl1strm, [x0, x1]
|
||||||
@@ -1524,9 +1524,9 @@ w8_copy_loop:
|
|||||||
|
|
||||||
sub x4, x4, #2
|
sub x4, x4, #2
|
||||||
cbnz x4, w8_copy_loop
|
cbnz x4, w8_copy_loop
|
||||||
WELS_ASM_ARCH64_FUNC_END
|
WELS_ASM_AARCH64_FUNC_END
|
||||||
|
|
||||||
WELS_ASM_ARCH64_FUNC_BEGIN McCopyWidthEq4_AArch64_neon
|
WELS_ASM_AARCH64_FUNC_BEGIN McCopyWidthEq4_AArch64_neon
|
||||||
//prfm pldl1strm, [x0]
|
//prfm pldl1strm, [x0]
|
||||||
w4_copy_loop:
|
w4_copy_loop:
|
||||||
//prfm pldl1strm, [x0, x1]
|
//prfm pldl1strm, [x0, x1]
|
||||||
@@ -1538,9 +1538,9 @@ w4_copy_loop:
|
|||||||
|
|
||||||
sub x4, x4, #2
|
sub x4, x4, #2
|
||||||
cbnz x4, w4_copy_loop
|
cbnz x4, w4_copy_loop
|
||||||
WELS_ASM_ARCH64_FUNC_END
|
WELS_ASM_AARCH64_FUNC_END
|
||||||
|
|
||||||
WELS_ASM_ARCH64_FUNC_BEGIN PixStrideAvgWidthEq16_AArch64_neon
|
WELS_ASM_AARCH64_FUNC_BEGIN PixStrideAvgWidthEq16_AArch64_neon
|
||||||
|
|
||||||
enc_w16_pix_avg_loop:
|
enc_w16_pix_avg_loop:
|
||||||
ld1 {v0.16b}, [x2], x3 //read 16Byte : src0: 0 line
|
ld1 {v0.16b}, [x2], x3 //read 16Byte : src0: 0 line
|
||||||
@@ -1571,9 +1571,9 @@ enc_w16_pix_avg_loop:
|
|||||||
|
|
||||||
sub x6, x6, #4
|
sub x6, x6, #4
|
||||||
cbnz x6, enc_w16_pix_avg_loop
|
cbnz x6, enc_w16_pix_avg_loop
|
||||||
WELS_ASM_ARCH64_FUNC_END
|
WELS_ASM_AARCH64_FUNC_END
|
||||||
|
|
||||||
WELS_ASM_ARCH64_FUNC_BEGIN PixStrideAvgWidthEq8_AArch64_neon
|
WELS_ASM_AARCH64_FUNC_BEGIN PixStrideAvgWidthEq8_AArch64_neon
|
||||||
//prfm pldl1strm, [x2]
|
//prfm pldl1strm, [x2]
|
||||||
//prfm pldl1strm, [x4]
|
//prfm pldl1strm, [x4]
|
||||||
enc_w8_pix_avg_loop:
|
enc_w8_pix_avg_loop:
|
||||||
@@ -1608,9 +1608,9 @@ enc_w8_pix_avg_loop:
|
|||||||
|
|
||||||
sub x6, x6, #4
|
sub x6, x6, #4
|
||||||
cbnz x6, enc_w8_pix_avg_loop
|
cbnz x6, enc_w8_pix_avg_loop
|
||||||
WELS_ASM_ARCH64_FUNC_END
|
WELS_ASM_AARCH64_FUNC_END
|
||||||
|
|
||||||
WELS_ASM_ARCH64_FUNC_BEGIN PixelAvgWidthEq16_AArch64_neon
|
WELS_ASM_AARCH64_FUNC_BEGIN PixelAvgWidthEq16_AArch64_neon
|
||||||
//prfm pldl1strm, [x2]
|
//prfm pldl1strm, [x2]
|
||||||
//prfm pldl1strm, [x4]
|
//prfm pldl1strm, [x4]
|
||||||
w16_pix_avg_loop:
|
w16_pix_avg_loop:
|
||||||
@@ -1650,9 +1650,9 @@ w16_pix_avg_loop:
|
|||||||
|
|
||||||
sub x6, x6, #4
|
sub x6, x6, #4
|
||||||
cbnz x6, w16_pix_avg_loop
|
cbnz x6, w16_pix_avg_loop
|
||||||
WELS_ASM_ARCH64_FUNC_END
|
WELS_ASM_AARCH64_FUNC_END
|
||||||
|
|
||||||
WELS_ASM_ARCH64_FUNC_BEGIN PixelAvgWidthEq8_AArch64_neon
|
WELS_ASM_AARCH64_FUNC_BEGIN PixelAvgWidthEq8_AArch64_neon
|
||||||
//prfm pldl1strm, [x2]
|
//prfm pldl1strm, [x2]
|
||||||
//prfm pldl1strm, [x4]
|
//prfm pldl1strm, [x4]
|
||||||
w8_pix_avg_loop:
|
w8_pix_avg_loop:
|
||||||
@@ -1687,10 +1687,10 @@ w8_pix_avg_loop:
|
|||||||
|
|
||||||
sub x6, x6, #4
|
sub x6, x6, #4
|
||||||
cbnz x6, w8_pix_avg_loop
|
cbnz x6, w8_pix_avg_loop
|
||||||
WELS_ASM_ARCH64_FUNC_END
|
WELS_ASM_AARCH64_FUNC_END
|
||||||
|
|
||||||
|
|
||||||
WELS_ASM_ARCH64_FUNC_BEGIN PixelAvgWidthEq4_AArch64_neon
|
WELS_ASM_AARCH64_FUNC_BEGIN PixelAvgWidthEq4_AArch64_neon
|
||||||
//prfm pldl1strm, [x2]
|
//prfm pldl1strm, [x2]
|
||||||
//prfm pldl1strm, [x4]
|
//prfm pldl1strm, [x4]
|
||||||
w4_pix_avg_loop:
|
w4_pix_avg_loop:
|
||||||
@@ -1708,9 +1708,9 @@ w4_pix_avg_loop:
|
|||||||
|
|
||||||
sub x6, x6, #2
|
sub x6, x6, #2
|
||||||
cbnz x6, w4_pix_avg_loop
|
cbnz x6, w4_pix_avg_loop
|
||||||
WELS_ASM_ARCH64_FUNC_END
|
WELS_ASM_AARCH64_FUNC_END
|
||||||
|
|
||||||
WELS_ASM_ARCH64_FUNC_BEGIN McChromaWidthEq8_AArch64_neon
|
WELS_ASM_AARCH64_FUNC_BEGIN McChromaWidthEq8_AArch64_neon
|
||||||
ld4r {v4.8b, v5.8b, v6.8b, v7.8b}, [x4] //load A/B/C/D
|
ld4r {v4.8b, v5.8b, v6.8b, v7.8b}, [x4] //load A/B/C/D
|
||||||
ld1 {v0.16b}, [x0], x1 // src[x]
|
ld1 {v0.16b}, [x0], x1 // src[x]
|
||||||
ext.16b v1, v0, v0, #1 // src[x+1]
|
ext.16b v1, v0, v0, #1 // src[x+1]
|
||||||
@@ -1739,9 +1739,9 @@ w8_mc_chroma_loop:
|
|||||||
mov.16b v1, v19
|
mov.16b v1, v19
|
||||||
sub x5, x5, #2
|
sub x5, x5, #2
|
||||||
cbnz x5, w8_mc_chroma_loop
|
cbnz x5, w8_mc_chroma_loop
|
||||||
WELS_ASM_ARCH64_FUNC_END
|
WELS_ASM_AARCH64_FUNC_END
|
||||||
|
|
||||||
WELS_ASM_ARCH64_FUNC_BEGIN McChromaWidthEq4_AArch64_neon
|
WELS_ASM_AARCH64_FUNC_BEGIN McChromaWidthEq4_AArch64_neon
|
||||||
ld4r {v4.8b, v5.8b, v6.8b, v7.8b}, [x4] //load A/B/C/D
|
ld4r {v4.8b, v5.8b, v6.8b, v7.8b}, [x4] //load A/B/C/D
|
||||||
ld1 {v0.8b}, [x0], x1 // src[x]
|
ld1 {v0.8b}, [x0], x1 // src[x]
|
||||||
ext.8b v1, v0, v0, #1 // src[x+1]
|
ext.8b v1, v0, v0, #1 // src[x+1]
|
||||||
@@ -1768,10 +1768,10 @@ w4_mc_chroma_loop:
|
|||||||
mov.8b v1, v19
|
mov.8b v1, v19
|
||||||
sub x5, x5, #2
|
sub x5, x5, #2
|
||||||
cbnz x5, w4_mc_chroma_loop
|
cbnz x5, w4_mc_chroma_loop
|
||||||
WELS_ASM_ARCH64_FUNC_END
|
WELS_ASM_AARCH64_FUNC_END
|
||||||
|
|
||||||
|
|
||||||
WELS_ASM_ARCH64_FUNC_BEGIN McHorVer20Width17_AArch64_neon
|
WELS_ASM_AARCH64_FUNC_BEGIN McHorVer20Width17_AArch64_neon
|
||||||
sub x0, x0, #2
|
sub x0, x0, #2
|
||||||
sub x3, x3, #16
|
sub x3, x3, #16
|
||||||
mov x5, #16
|
mov x5, #16
|
||||||
@@ -1798,9 +1798,9 @@ w17_h_mc_luma_loop:
|
|||||||
|
|
||||||
sub x4, x4, #1
|
sub x4, x4, #1
|
||||||
cbnz x4, w17_h_mc_luma_loop
|
cbnz x4, w17_h_mc_luma_loop
|
||||||
WELS_ASM_ARCH64_FUNC_END
|
WELS_ASM_AARCH64_FUNC_END
|
||||||
|
|
||||||
WELS_ASM_ARCH64_FUNC_BEGIN McHorVer20Width9_AArch64_neon
|
WELS_ASM_AARCH64_FUNC_BEGIN McHorVer20Width9_AArch64_neon
|
||||||
sub x0, x0, #2
|
sub x0, x0, #2
|
||||||
sub x3, x3, #8
|
sub x3, x3, #8
|
||||||
mov x5, #8
|
mov x5, #8
|
||||||
@@ -1826,10 +1826,10 @@ w9_h_mc_luma_loop:
|
|||||||
|
|
||||||
sub x4, x4, #1
|
sub x4, x4, #1
|
||||||
cbnz x4, w9_h_mc_luma_loop
|
cbnz x4, w9_h_mc_luma_loop
|
||||||
WELS_ASM_ARCH64_FUNC_END
|
WELS_ASM_AARCH64_FUNC_END
|
||||||
|
|
||||||
|
|
||||||
WELS_ASM_ARCH64_FUNC_BEGIN McHorVer22Width17_AArch64_neon
|
WELS_ASM_AARCH64_FUNC_BEGIN McHorVer22Width17_AArch64_neon
|
||||||
stp d8, d9, [sp,#-16]!
|
stp d8, d9, [sp,#-16]!
|
||||||
stp d10, d11, [sp,#-16]!
|
stp d10, d11, [sp,#-16]!
|
||||||
stp d12, d13, [sp,#-16]!
|
stp d12, d13, [sp,#-16]!
|
||||||
@@ -2029,10 +2029,10 @@ w17_hv_mc_luma_loop:
|
|||||||
ldp d12, d13, [sp], #16
|
ldp d12, d13, [sp], #16
|
||||||
ldp d10, d11, [sp], #16
|
ldp d10, d11, [sp], #16
|
||||||
ldp d8, d9, [sp], #16
|
ldp d8, d9, [sp], #16
|
||||||
WELS_ASM_ARCH64_FUNC_END
|
WELS_ASM_AARCH64_FUNC_END
|
||||||
|
|
||||||
|
|
||||||
WELS_ASM_ARCH64_FUNC_BEGIN McHorVer22Width9_AArch64_neon
|
WELS_ASM_AARCH64_FUNC_BEGIN McHorVer22Width9_AArch64_neon
|
||||||
sub x0, x0, #2
|
sub x0, x0, #2
|
||||||
sub x0, x0, x1, lsl #1
|
sub x0, x0, x1, lsl #1
|
||||||
movi v0.8h, #20, lsl #0
|
movi v0.8h, #20, lsl #0
|
||||||
@@ -2125,9 +2125,9 @@ w9_hv_mc_luma_loop:
|
|||||||
st1 {v26.8b}, [x2], x5 //write 0:7Byte : 0 line
|
st1 {v26.8b}, [x2], x5 //write 0:7Byte : 0 line
|
||||||
UNPACK_FILTER_SINGLE_TAG_16BITS v26, v21, v29, v27, v28, d26
|
UNPACK_FILTER_SINGLE_TAG_16BITS v26, v21, v29, v27, v28, d26
|
||||||
st1 {v26.b}[0], [x2], x3 //write 8th Byte : 0 line
|
st1 {v26.b}[0], [x2], x3 //write 8th Byte : 0 line
|
||||||
WELS_ASM_ARCH64_FUNC_END
|
WELS_ASM_AARCH64_FUNC_END
|
||||||
|
|
||||||
WELS_ASM_ARCH64_FUNC_BEGIN McHorVer02Height17_AArch64_neon
|
WELS_ASM_AARCH64_FUNC_BEGIN McHorVer02Height17_AArch64_neon
|
||||||
sub x0, x0, x1, lsl #1
|
sub x0, x0, x1, lsl #1
|
||||||
movi v0.8h, #20, lsl #0
|
movi v0.8h, #20, lsl #0
|
||||||
movi v1.8h, #5, lsl #0
|
movi v1.8h, #5, lsl #0
|
||||||
@@ -2214,9 +2214,9 @@ w17_v_mc_luma_loop:
|
|||||||
FILTER_6TAG_8BITS1 v2, v3, v4, v5, v6, v7, v20, v0, v1
|
FILTER_6TAG_8BITS1 v2, v3, v4, v5, v6, v7, v20, v0, v1
|
||||||
FILTER_6TAG_8BITS2 v2, v3, v4, v5, v6, v7, v20, v0, v1
|
FILTER_6TAG_8BITS2 v2, v3, v4, v5, v6, v7, v20, v0, v1
|
||||||
st1 {v20.16b}, [x2], x3 //write 16Byte : last line
|
st1 {v20.16b}, [x2], x3 //write 16Byte : last line
|
||||||
WELS_ASM_ARCH64_FUNC_END
|
WELS_ASM_AARCH64_FUNC_END
|
||||||
|
|
||||||
WELS_ASM_ARCH64_FUNC_BEGIN McHorVer02Height9_AArch64_neon
|
WELS_ASM_AARCH64_FUNC_BEGIN McHorVer02Height9_AArch64_neon
|
||||||
sub x0, x0, x1, lsl #1
|
sub x0, x0, x1, lsl #1
|
||||||
movi v0.8h, #20, lsl #0
|
movi v0.8h, #20, lsl #0
|
||||||
movi v1.8h, #5, lsl #0
|
movi v1.8h, #5, lsl #0
|
||||||
@@ -2268,7 +2268,7 @@ w9_v_mc_luma_loop:
|
|||||||
ld1 {v7.8b}, [x0], x1 // v7=src[3*stride]
|
ld1 {v7.8b}, [x0], x1 // v7=src[3*stride]
|
||||||
FILTER_6TAG_8BITS1 v2, v3, v4, v5, v6, v7, v20, v0, v1
|
FILTER_6TAG_8BITS1 v2, v3, v4, v5, v6, v7, v20, v0, v1
|
||||||
st1 {v20.8b}, [x2], x3 //write 8Byte : 0 line
|
st1 {v20.8b}, [x2], x3 //write 8Byte : 0 line
|
||||||
WELS_ASM_ARCH64_FUNC_END
|
WELS_ASM_AARCH64_FUNC_END
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|||||||
@@ -65,6 +65,14 @@ void WelsCopy16x8NotAligned_neon (uint8_t* pDst, int32_t iStrideD, uint8_t* pSrc
|
|||||||
void WelsCopy8x16_neon (uint8_t* pDst, int32_t iStrideD, uint8_t* pSrc, int32_t iStrideS);
|
void WelsCopy8x16_neon (uint8_t* pDst, int32_t iStrideD, uint8_t* pSrc, int32_t iStrideS);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#if defined (HAVE_NEON_AARCH64)
|
||||||
|
void WelsCopy8x8_AArch64_neon (uint8_t* pDst, int32_t iStrideD, uint8_t* pSrc, int32_t iStrideS);
|
||||||
|
void WelsCopy16x16_AArch64_neon (uint8_t* pDst, int32_t iStrideD, uint8_t* pSrc, int32_t iStrideS);
|
||||||
|
void WelsCopy16x16NotAligned_AArch64_neon (uint8_t* pDst, int32_t iStrideD, uint8_t* pSrc, int32_t iStrideS);
|
||||||
|
void WelsCopy16x8NotAligned_AArch64_neon (uint8_t* pDst, int32_t iStrideD, uint8_t* pSrc, int32_t iStrideS);
|
||||||
|
void WelsCopy8x16_AArch64_neon (uint8_t* pDst, int32_t iStrideD, uint8_t* pSrc, int32_t iStrideS);
|
||||||
|
#endif
|
||||||
|
|
||||||
#if defined(__cplusplus)
|
#if defined(__cplusplus)
|
||||||
}
|
}
|
||||||
#endif//__cplusplus
|
#endif//__cplusplus
|
||||||
|
|||||||
@@ -50,6 +50,18 @@ void DeblockChromaLt4H_neon (uint8_t* pPixCb, uint8_t* pPixCr, int32_t iStride,
|
|||||||
void DeblockChromaEq4H_neon (uint8_t* pPixCb, uint8_t* pPixCr, int32_t iStride, int32_t iAlpha, int32_t iBeta);
|
void DeblockChromaEq4H_neon (uint8_t* pPixCb, uint8_t* pPixCr, int32_t iStride, int32_t iAlpha, int32_t iBeta);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#if defined(HAVE_NEON_AARCH64)
|
||||||
|
void DeblockLumaLt4V_AArch64_neon (uint8_t* pPixY, int32_t iStride, int32_t iAlpha, int32_t iBeta, int8_t* pTc);
|
||||||
|
void DeblockLumaEq4V_AArch64_neon (uint8_t* pPixY, int32_t iStride, int32_t iAlpha, int32_t iBeta);
|
||||||
|
void DeblockLumaLt4H_AArch64_neon (uint8_t* pPixY, int32_t iStride, int32_t iAlpha, int32_t iBeta, int8_t* pTc);
|
||||||
|
void DeblockLumaEq4H_AArch64_neon (uint8_t* pPixY, int32_t iStride, int32_t iAlpha, int32_t iBeta);
|
||||||
|
void DeblockChromaLt4V_AArch64_neon (uint8_t* pPixCb, uint8_t* pPixCr, int32_t iStride, int32_t iAlpha, int32_t iBeta,
|
||||||
|
int8_t* pTC);
|
||||||
|
void DeblockChromaEq4V_AArch64_neon (uint8_t* pPixCb, uint8_t* pPixCr, int32_t iStride, int32_t iAlpha, int32_t iBeta);
|
||||||
|
void DeblockChromaLt4H_AArch64_neon (uint8_t* pPixCb, uint8_t* pPixCr, int32_t iStride, int32_t iAlpha, int32_t iBeta,
|
||||||
|
int8_t* pTC);
|
||||||
|
void DeblockChromaEq4H_AArch64_neon (uint8_t* pPixCb, uint8_t* pPixCr, int32_t iStride, int32_t iAlpha, int32_t iBeta);
|
||||||
|
#endif
|
||||||
#if defined(__cplusplus)
|
#if defined(__cplusplus)
|
||||||
}
|
}
|
||||||
#endif//__cplusplus
|
#endif//__cplusplus
|
||||||
|
|||||||
@@ -37,8 +37,8 @@
|
|||||||
*************************************************************************************
|
*************************************************************************************
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef EXPAND_PICTURE_COMMON_H
|
#ifndef EXPAND_PICTURE_H
|
||||||
#define EXPAND_PICTURE_COMMON_H
|
#define EXPAND_PICTURE_H
|
||||||
|
|
||||||
#include "typedefs.h"
|
#include "typedefs.h"
|
||||||
|
|
||||||
@@ -46,6 +46,8 @@
|
|||||||
extern "C" {
|
extern "C" {
|
||||||
#endif//__cplusplus
|
#endif//__cplusplus
|
||||||
|
|
||||||
|
#define PADDING_LENGTH 32 // reference extension
|
||||||
|
|
||||||
#if defined(X86_ASM)
|
#if defined(X86_ASM)
|
||||||
void ExpandPictureLuma_sse2 (uint8_t* pDst,
|
void ExpandPictureLuma_sse2 (uint8_t* pDst,
|
||||||
const int32_t kiStride,
|
const int32_t kiStride,
|
||||||
@@ -70,6 +72,20 @@ void ExpandPictureLuma_AArch64_neon (uint8_t* pDst, const int32_t kiStride, cons
|
|||||||
void ExpandPictureChroma_AArch64_neon (uint8_t* pDst, const int32_t kiStride, const int32_t kiPicW,
|
void ExpandPictureChroma_AArch64_neon (uint8_t* pDst, const int32_t kiStride, const int32_t kiPicW,
|
||||||
const int32_t kiPicH);
|
const int32_t kiPicH);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
typedef void (*PExpandPictureFunc) (uint8_t* pDst, const int32_t kiStride, const int32_t kiPicW, const int32_t kiPicH);
|
||||||
|
|
||||||
|
typedef struct TagExpandPicFunc {
|
||||||
|
PExpandPictureFunc pfExpandLumaPicture;
|
||||||
|
PExpandPictureFunc pfExpandChromaPicture[2];
|
||||||
|
} SExpandPicFunc;
|
||||||
|
|
||||||
|
|
||||||
|
void ExpandReferencingPicture (uint8_t* pData[3], int32_t iWidth, int32_t iHeight, int32_t iStride[3],
|
||||||
|
PExpandPictureFunc pExpLuma, PExpandPictureFunc pExpChrom[2]);
|
||||||
|
|
||||||
|
void InitExpandPictureFunc (SExpandPicFunc* pExpandPicFunc, const uint32_t kuiCPUFlags);
|
||||||
|
|
||||||
#if defined(__cplusplus)
|
#if defined(__cplusplus)
|
||||||
}
|
}
|
||||||
#endif//__cplusplus
|
#endif//__cplusplus
|
||||||
@@ -44,6 +44,7 @@
|
|||||||
#include <assert.h>
|
#include <assert.h>
|
||||||
#include "typedefs.h"
|
#include "typedefs.h"
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* ENFORCE_STACK_ALIGN_1D: force 1 dimension local data aligned in stack
|
* ENFORCE_STACK_ALIGN_1D: force 1 dimension local data aligned in stack
|
||||||
* _tp: type
|
* _tp: type
|
||||||
@@ -72,20 +73,10 @@
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
#define ALIGNED_DECLARE( type, var, n ) __declspec(align(n)) type var
|
#define ALIGNED_DECLARE( type, var, n ) __declspec(align(n)) type var
|
||||||
#define __align16(t,v) __declspec(align(16)) t v
|
|
||||||
#define ALIGNED_DECLARE_MATRIX_1D(name,size,type,alignment) \
|
|
||||||
__declspec(align(alignment)) type name[(size)]
|
|
||||||
#define ALIGNED_DECLARE_MATRIX_2D(name,sizex,sizey,type,alignment) \
|
|
||||||
__declspec(align(alignment)) type name[(sizex)*(sizey)]
|
|
||||||
|
|
||||||
#elif defined(__GNUC__)
|
#elif defined(__GNUC__)
|
||||||
|
|
||||||
#define ALIGNED_DECLARE( type, var, n ) type var __attribute__((aligned(n)))
|
#define ALIGNED_DECLARE( type, var, n ) type var __attribute__((aligned(n)))
|
||||||
#define __align16(t,v) t v __attribute__ ((aligned (16)))
|
|
||||||
#define ALIGNED_DECLARE_MATRIX_1D(name,size,type,alignment) \
|
|
||||||
type name[size] __attribute__((aligned(alignment)))
|
|
||||||
#define ALIGNED_DECLARE_MATRIX_2D(name,sizex,sizey,type,alignment) \
|
|
||||||
type name[(sizex)*(sizey)] __attribute__((aligned(alignment)))
|
|
||||||
#endif//_MSC_VER
|
#endif//_MSC_VER
|
||||||
|
|
||||||
|
|
||||||
@@ -122,9 +113,17 @@ __declspec(align(alignment)) type name[(sizex)*(sizey)]
|
|||||||
#endif//WELS_FLOOR
|
#endif//WELS_FLOOR
|
||||||
|
|
||||||
#ifndef WELS_ROUND
|
#ifndef WELS_ROUND
|
||||||
#define WELS_ROUND(x) ((int32_t)(0.5f+(x)))
|
#define WELS_ROUND(x) ((int32_t)(0.5+(x)))
|
||||||
#endif//WELS_ROUND
|
#endif//WELS_ROUND
|
||||||
|
|
||||||
|
#ifndef WELS_DIV_ROUND
|
||||||
|
#define WELS_DIV_ROUND(x,y) ((int32_t)((y)==0?((x)/((y)+1)):(((y)/2+(x))/(y))))
|
||||||
|
#endif//WELS_DIV_ROUND
|
||||||
|
|
||||||
|
#ifndef WELS_DIV_ROUND64
|
||||||
|
#define WELS_DIV_ROUND64(x,y) ((int64_t)((y)==0?((x)/((y)+1)):(((y)/2+(x))/(y))))
|
||||||
|
#endif//WELS_DIV_ROUND64
|
||||||
|
|
||||||
#define WELS_NON_ZERO_COUNT_AVERAGE(nC,nA,nB) { \
|
#define WELS_NON_ZERO_COUNT_AVERAGE(nC,nA,nB) { \
|
||||||
nC = nA + nB + 1; \
|
nC = nA + nB + 1; \
|
||||||
nC >>= (uint8_t)( nA != -1 && nB != -1); \
|
nC >>= (uint8_t)( nA != -1 && nB != -1); \
|
||||||
|
|||||||
@@ -79,7 +79,7 @@ static inline int64_t WelsTime (void) {
|
|||||||
QueryPerformanceCounter ((LARGE_INTEGER*)&iMtimeCur);
|
QueryPerformanceCounter ((LARGE_INTEGER*)&iMtimeCur);
|
||||||
iResult = (int64_t) ((double)iMtimeCur * 1e6 / (double)iMtimeFreq + 0.5);
|
iResult = (int64_t) ((double)iMtimeCur * 1e6 / (double)iMtimeFreq + 0.5);
|
||||||
return iResult;
|
return iResult;
|
||||||
#endif//WIN32
|
#endif//_WIN32
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
|
|||||||
@@ -89,6 +89,19 @@ void WelsSampleSadFour4x4_neon (uint8_t*, int32_t, uint8_t*, int32_t, int32_t*);
|
|||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#if defined (HAVE_NEON_AARCH64)
|
||||||
|
int32_t WelsSampleSad4x4_AArch64_neon (uint8_t*, int32_t, uint8_t*, int32_t);
|
||||||
|
int32_t WelsSampleSad16x16_AArch64_neon (uint8_t*, int32_t, uint8_t*, int32_t);
|
||||||
|
int32_t WelsSampleSad16x8_AArch64_neon (uint8_t*, int32_t, uint8_t*, int32_t);
|
||||||
|
int32_t WelsSampleSad8x16_AArch64_neon (uint8_t*, int32_t, uint8_t*, int32_t);
|
||||||
|
int32_t WelsSampleSad8x8_AArch64_neon (uint8_t*, int32_t, uint8_t*, int32_t);
|
||||||
|
|
||||||
|
void WelsSampleSadFour16x16_AArch64_neon (uint8_t*, int32_t, uint8_t*, int32_t, int32_t*);
|
||||||
|
void WelsSampleSadFour16x8_AArch64_neon (uint8_t*, int32_t, uint8_t*, int32_t, int32_t*);
|
||||||
|
void WelsSampleSadFour8x16_AArch64_neon (uint8_t*, int32_t, uint8_t*, int32_t, int32_t*);
|
||||||
|
void WelsSampleSadFour8x8_AArch64_neon (uint8_t*, int32_t, uint8_t*, int32_t, int32_t*);
|
||||||
|
void WelsSampleSadFour4x4_AArch64_neon (uint8_t*, int32_t, uint8_t*, int32_t, int32_t*);
|
||||||
|
#endif
|
||||||
#if defined(__cplusplus)
|
#if defined(__cplusplus)
|
||||||
}
|
}
|
||||||
#endif//__cplusplus
|
#endif//__cplusplus
|
||||||
|
|||||||
@@ -48,6 +48,12 @@
|
|||||||
#include <stdint.h>
|
#include <stdint.h>
|
||||||
#include <inttypes.h>
|
#include <inttypes.h>
|
||||||
|
|
||||||
|
#ifdef __LP64__
|
||||||
|
typedef int64_t intX_t;
|
||||||
|
#else
|
||||||
|
typedef int32_t intX_t;
|
||||||
|
#endif
|
||||||
|
|
||||||
#else
|
#else
|
||||||
|
|
||||||
// FIXME: all singed type should be declared explicit, for example, int8_t should be declared as signed char.
|
// FIXME: all singed type should be declared explicit, for example, int8_t should be declared as signed char.
|
||||||
@@ -61,6 +67,12 @@ typedef __int64 int64_t ;
|
|||||||
typedef unsigned __int64 uint64_t;
|
typedef unsigned __int64 uint64_t;
|
||||||
#define PRId64 "I64d"
|
#define PRId64 "I64d"
|
||||||
|
|
||||||
|
#ifdef _WIN64
|
||||||
|
typedef int64_t intX_t;
|
||||||
|
#else
|
||||||
|
typedef int32_t intX_t;
|
||||||
|
#endif
|
||||||
|
|
||||||
#endif // _MSC_VER defined
|
#endif // _MSC_VER defined
|
||||||
|
|
||||||
// The 'float' type is portable and usable without any need for any extra typedefs.
|
// The 'float' type is portable and usable without any need for any extra typedefs.
|
||||||
|
|||||||
@@ -29,8 +29,6 @@
|
|||||||
* POSSIBILITY OF SUCH DAMAGE.
|
* POSSIBILITY OF SUCH DAMAGE.
|
||||||
*
|
*
|
||||||
*
|
*
|
||||||
* \file utils.h
|
|
||||||
*
|
|
||||||
* \brief Tool kits for decoder
|
* \brief Tool kits for decoder
|
||||||
* ( malloc, realloc, free, log output and PSNR calculation and so on )
|
* ( malloc, realloc, free, log output and PSNR calculation and so on )
|
||||||
*
|
*
|
||||||
@@ -41,50 +39,54 @@
|
|||||||
#ifndef WELS_UTILS_H__
|
#ifndef WELS_UTILS_H__
|
||||||
#define WELS_UTILS_H__
|
#define WELS_UTILS_H__
|
||||||
|
|
||||||
#include <stdio.h>
|
|
||||||
#include <stdlib.h>
|
|
||||||
#include <stdarg.h>
|
#include <stdarg.h>
|
||||||
#include "typedefs.h"
|
#include "typedefs.h"
|
||||||
|
|
||||||
namespace WelsDec {
|
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Function pointer declaration for various tool sets
|
* Function pointer declaration for various tool sets
|
||||||
*/
|
*/
|
||||||
// wels log output
|
// wels log output
|
||||||
typedef void (*PWelsLogCallbackFunc) (void* pPtr, const int32_t kiLevel, const char* kpFmt, va_list pArgv);
|
typedef void (*PWelsLogCallbackFunc) (void* pCtx, const int32_t iLevel, const char* kpFmt, va_list argv);
|
||||||
|
|
||||||
|
typedef struct TagLogContext {
|
||||||
|
PWelsLogCallbackFunc pfLog;
|
||||||
|
void* pLogCtx;
|
||||||
|
} SLogContext;
|
||||||
|
|
||||||
extern PWelsLogCallbackFunc g_pLog;
|
|
||||||
|
|
||||||
#ifdef __GNUC__
|
#ifdef __GNUC__
|
||||||
extern void WelsLog (void* pPtr, int32_t iLevel, const char* kpFmt, ...) __attribute__ ((__format__ (__printf__, 3,
|
extern void WelsLog (SLogContext* pCtx, int32_t iLevel, const char* kpFmt, ...) __attribute__ ((__format__ (__printf__, 3,
|
||||||
4)));
|
4)));
|
||||||
#else
|
#else
|
||||||
extern void WelsLog (void* pPtr, int32_t iLevel, const char* kpFmt, ...);
|
extern void WelsLog (SLogContext* pCtx, int32_t iLevel, const char* kpFmt, ...);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#define BUFFER_STATUS_NAME(a) ((a == 0)?"unvalid":"valid")
|
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Log output routines
|
* PSNR calculation routines
|
||||||
*/
|
*/
|
||||||
|
/*!
|
||||||
|
*************************************************************************************
|
||||||
|
* \brief PSNR calculation utilization in Wels
|
||||||
|
*
|
||||||
|
* \param kpTarPic target picture to be calculated in Picture pData format
|
||||||
|
* \param kiTarStride stride of target picture pData pBuffer
|
||||||
|
* \param kpRefPic base referencing picture samples
|
||||||
|
* \param kiRefStride stride of reference picture pData pBuffer
|
||||||
|
* \param kiWidth picture iWidth in pixel
|
||||||
|
* \param kiHeight picture iHeight in pixel
|
||||||
|
*
|
||||||
|
* \return actual PSNR result;
|
||||||
|
*
|
||||||
|
* \note N/A
|
||||||
|
*************************************************************************************
|
||||||
|
*/
|
||||||
|
float WelsCalcPsnr (const void* kpTarPic,
|
||||||
|
const int32_t kiTarStride,
|
||||||
|
const void* kpRefPic,
|
||||||
|
const int32_t kiRefStride,
|
||||||
|
const int32_t kiWidth,
|
||||||
|
const int32_t kiHeight);
|
||||||
|
|
||||||
typedef int32_t WelsLogLevel;
|
|
||||||
enum {
|
|
||||||
WELS_LOG_QUIET = 0x00, // Quiet mode
|
|
||||||
WELS_LOG_ERROR = 1 << 0, // Error log level
|
|
||||||
WELS_LOG_WARNING = 1 << 1, // Warning log level
|
|
||||||
WELS_LOG_INFO = 1 << 2, // Information log level
|
|
||||||
WELS_LOG_DEBUG = 1 << 3, // Debug log level
|
|
||||||
WELS_LOG_RESV = 1 << 4, // Resversed log level
|
|
||||||
WELS_LOG_LEVEL_COUNT = 5,
|
|
||||||
WELS_LOG_DEFAULT = WELS_LOG_ERROR | WELS_LOG_WARNING | WELS_LOG_INFO | WELS_LOG_DEBUG // Default log level in Wels codec
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
} // namespace WelsDec
|
|
||||||
|
|
||||||
#endif//WELS_UTILS_H__
|
#endif//WELS_UTILS_H__
|
||||||
@@ -35,31 +35,29 @@
|
|||||||
|
|
||||||
#include <stdarg.h>
|
#include <stdarg.h>
|
||||||
#include "typedefs.h"
|
#include "typedefs.h"
|
||||||
|
#include "utils.h"
|
||||||
typedef int32_t (*CM_WELS_TRACE) (const char* format, ...);
|
#include "codec_app_def.h"
|
||||||
|
#include "codec_api.h"
|
||||||
|
|
||||||
class welsCodecTrace {
|
class welsCodecTrace {
|
||||||
public:
|
public:
|
||||||
welsCodecTrace();
|
welsCodecTrace();
|
||||||
~welsCodecTrace();
|
~welsCodecTrace();
|
||||||
|
|
||||||
static void TraceString (int32_t iLevel, const char* kpStrFormat);
|
|
||||||
static void CODEC_TRACE (void* pIgnore, const int32_t kiLevel, const char* kpStrFormat, va_list vl);
|
|
||||||
|
|
||||||
void SetTraceLevel (const int32_t kiLevel);
|
void SetTraceLevel (const int32_t kiLevel);
|
||||||
int32_t WelsTraceModuleIsExist();
|
void SetTraceCallback (WelsTraceCallback func);
|
||||||
|
void SetTraceCallbackContext (void* pCtx);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
static void StaticCodecTrace (void* pCtx, const int32_t kiLevel, const char* kpStrFormat, va_list vl);
|
||||||
|
void CodecTrace (const int32_t kiLevel, const char* kpStrFormat, va_list vl);
|
||||||
|
|
||||||
int32_t m_WelsTraceExistFlag;
|
int32_t m_iTraceLevel;
|
||||||
|
WelsTraceCallback m_fpTrace;
|
||||||
|
void* m_pTraceCtx;
|
||||||
public:
|
public:
|
||||||
static int32_t m_iTraceLevel;
|
|
||||||
static CM_WELS_TRACE m_fpDebugTrace;
|
|
||||||
static CM_WELS_TRACE m_fpInfoTrace;
|
|
||||||
static CM_WELS_TRACE m_fpWarnTrace;
|
|
||||||
static CM_WELS_TRACE m_fpErrorTrace;
|
|
||||||
|
|
||||||
|
SLogContext m_sLogCtx;
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif //WELS_CODEC_TRACE
|
#endif //WELS_CODEC_TRACE
|
||||||
232
codec/common/inc/wels_common_defs.h
Normal file
232
codec/common/inc/wels_common_defs.h
Normal file
@@ -0,0 +1,232 @@
|
|||||||
|
/*!
|
||||||
|
* \copy
|
||||||
|
* Copyright (c) 2013, Cisco Systems
|
||||||
|
* All rights reserved.
|
||||||
|
*
|
||||||
|
* Redistribution and use in source and binary forms, with or without
|
||||||
|
* modification, are permitted provided that the following conditions
|
||||||
|
* are met:
|
||||||
|
*
|
||||||
|
* * Redistributions of source code must retain the above copyright
|
||||||
|
* notice, this list of conditions and the following disclaimer.
|
||||||
|
*
|
||||||
|
* * Redistributions in binary form must reproduce the above copyright
|
||||||
|
* notice, this list of conditions and the following disclaimer in
|
||||||
|
* the documentation and/or other materials provided with the
|
||||||
|
* distribution.
|
||||||
|
*
|
||||||
|
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||||
|
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||||||
|
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
|
||||||
|
* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
|
||||||
|
* COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
|
||||||
|
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
|
||||||
|
* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
||||||
|
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
|
||||||
|
* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||||||
|
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
|
||||||
|
* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
||||||
|
* POSSIBILITY OF SUCH DAMAGE.
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
//wels_common_defs.h
|
||||||
|
#ifndef WELS_COMMON_DEFS_H__
|
||||||
|
#define WELS_COMMON_DEFS_H__
|
||||||
|
|
||||||
|
#include "typedefs.h"
|
||||||
|
#include "macros.h"
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
namespace WelsCommon {
|
||||||
|
/*common use table*/
|
||||||
|
|
||||||
|
extern const uint8_t g_kuiMbCountScan4Idx[24];
|
||||||
|
extern const uint8_t g_kuiCache30ScanIdx[16];
|
||||||
|
extern const uint8_t g_kuiCache48CountScan4Idx[24];
|
||||||
|
|
||||||
|
extern const ALIGNED_DECLARE (uint16_t, g_kuiDequantCoeff[52][8], 16);
|
||||||
|
extern const uint8_t g_kuiChromaQpTable[52];
|
||||||
|
|
||||||
|
/*
|
||||||
|
* NAL Unit Type (5 Bits)
|
||||||
|
*/
|
||||||
|
enum EWelsNalUnitType {
|
||||||
|
NAL_UNIT_UNSPEC_0 = 0,
|
||||||
|
NAL_UNIT_CODED_SLICE = 1,
|
||||||
|
NAL_UNIT_CODED_SLICE_DPA = 2,
|
||||||
|
NAL_UNIT_CODED_SLICE_DPB = 3,
|
||||||
|
NAL_UNIT_CODED_SLICE_DPC = 4,
|
||||||
|
NAL_UNIT_CODED_SLICE_IDR = 5,
|
||||||
|
NAL_UNIT_SEI = 6,
|
||||||
|
NAL_UNIT_SPS = 7,
|
||||||
|
NAL_UNIT_PPS = 8,
|
||||||
|
NAL_UNIT_AU_DELIMITER = 9,
|
||||||
|
NAL_UNIT_END_OF_SEQ = 10,
|
||||||
|
NAL_UNIT_END_OF_STR = 11,
|
||||||
|
NAL_UNIT_FILLER_DATA = 12,
|
||||||
|
NAL_UNIT_SPS_EXT = 13,
|
||||||
|
NAL_UNIT_PREFIX = 14,
|
||||||
|
NAL_UNIT_SUBSET_SPS = 15,
|
||||||
|
NAL_UNIT_RESV_16 = 16,
|
||||||
|
NAL_UNIT_RESV_17 = 17,
|
||||||
|
NAL_UNIT_RESV_18 = 18,
|
||||||
|
NAL_UNIT_AUX_CODED_SLICE = 19,
|
||||||
|
NAL_UNIT_CODED_SLICE_EXT = 20,
|
||||||
|
NAL_UNIT_RESV_21 = 21,
|
||||||
|
NAL_UNIT_RESV_22 = 22,
|
||||||
|
NAL_UNIT_RESV_23 = 23,
|
||||||
|
NAL_UNIT_UNSPEC_24 = 24,
|
||||||
|
NAL_UNIT_UNSPEC_25 = 25,
|
||||||
|
NAL_UNIT_UNSPEC_26 = 26,
|
||||||
|
NAL_UNIT_UNSPEC_27 = 27,
|
||||||
|
NAL_UNIT_UNSPEC_28 = 28,
|
||||||
|
NAL_UNIT_UNSPEC_29 = 29,
|
||||||
|
NAL_UNIT_UNSPEC_30 = 30,
|
||||||
|
NAL_UNIT_UNSPEC_31 = 31
|
||||||
|
};
|
||||||
|
|
||||||
|
/*
|
||||||
|
* NAL Reference IDC (2 Bits)
|
||||||
|
*/
|
||||||
|
|
||||||
|
enum EWelsNalRefIdc {
|
||||||
|
NRI_PRI_LOWEST = 0,
|
||||||
|
NRI_PRI_LOW = 1,
|
||||||
|
NRI_PRI_HIGH = 2,
|
||||||
|
NRI_PRI_HIGHEST = 3
|
||||||
|
};
|
||||||
|
|
||||||
|
/*
|
||||||
|
* VCL TYPE
|
||||||
|
*/
|
||||||
|
|
||||||
|
enum EVclType {
|
||||||
|
NON_VCL = 0,
|
||||||
|
VCL = 1,
|
||||||
|
NOT_APP = 2
|
||||||
|
};
|
||||||
|
|
||||||
|
/*
|
||||||
|
* vcl type map for given NAL unit type and corresponding H264 type (0: AVC; 1: SVC).
|
||||||
|
*/
|
||||||
|
extern const EVclType g_keTypeMap[32][2];
|
||||||
|
|
||||||
|
#define IS_VCL_NAL(t, ext_idx) (g_keTypeMap[t][ext_idx] == VCL)
|
||||||
|
#define IS_PARAM_SETS_NALS(t) ( (t) == NAL_UNIT_SPS || (t) == NAL_UNIT_PPS || (t) == NAL_UNIT_SUBSET_SPS )
|
||||||
|
#define IS_SPS_NAL(t) ( (t) == NAL_UNIT_SPS )
|
||||||
|
#define IS_SUBSET_SPS_NAL(t) ( (t) == NAL_UNIT_SUBSET_SPS )
|
||||||
|
#define IS_PPS_NAL(t) ( (t) == NAL_UNIT_PPS )
|
||||||
|
#define IS_SEI_NAL(t) ( (t) == NAL_UNIT_SEI )
|
||||||
|
#define IS_PREFIX_NAL(t) ( (t) == NAL_UNIT_PREFIX )
|
||||||
|
#define IS_SUBSET_SPS_USED(t) ( (t) == NAL_UNIT_SUBSET_SPS || (t) == NAL_UNIT_CODED_SLICE_EXT )
|
||||||
|
#define IS_VCL_NAL_AVC_BASE(t) ( (t) == NAL_UNIT_CODED_SLICE || (t) == NAL_UNIT_CODED_SLICE_IDR )
|
||||||
|
#define IS_NEW_INTRODUCED_SVC_NAL(t) ( (t) == NAL_UNIT_PREFIX || (t) == NAL_UNIT_CODED_SLICE_EXT )
|
||||||
|
|
||||||
|
|
||||||
|
/* Base SSlice Types
|
||||||
|
* Invalid in case of eSliceType exceeds 9,
|
||||||
|
* Need trim when eSliceType > 4 as fixed SliceType(eSliceType-4),
|
||||||
|
* meaning mapped version after eSliceType minus 4.
|
||||||
|
*/
|
||||||
|
|
||||||
|
enum EWelsSliceType {
|
||||||
|
P_SLICE = 0,
|
||||||
|
B_SLICE = 1,
|
||||||
|
I_SLICE = 2,
|
||||||
|
SP_SLICE = 3,
|
||||||
|
SI_SLICE = 4,
|
||||||
|
UNKNOWN_SLICE = 5
|
||||||
|
};
|
||||||
|
|
||||||
|
/* SSlice Types in scalable extension */ ;
|
||||||
|
enum ESliceTypeExt {
|
||||||
|
EP_SLICE = 0, // EP_SLICE: 0, 5
|
||||||
|
EB_SLICE = 1, // EB_SLICE: 1, 6
|
||||||
|
EI_SLICE = 2 // EI_SLICE: 2, 7
|
||||||
|
};
|
||||||
|
|
||||||
|
/* List Index */
|
||||||
|
enum EListIndex {
|
||||||
|
LIST_0 = 0,
|
||||||
|
LIST_1 = 1,
|
||||||
|
LIST_A = 2
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/* Motion Vector components */
|
||||||
|
enum EMvComp {
|
||||||
|
MV_X = 0,
|
||||||
|
MV_Y = 1,
|
||||||
|
MV_A = 2
|
||||||
|
};
|
||||||
|
|
||||||
|
/* Chroma Components */
|
||||||
|
|
||||||
|
enum EChromaComp {
|
||||||
|
CHROMA_CB = 0,
|
||||||
|
CHROMA_CR = 1,
|
||||||
|
CHROMA_A = 2
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Memory Management Control Operation (MMCO) code
|
||||||
|
*/
|
||||||
|
enum EMmcoCode {
|
||||||
|
MMCO_END = 0,
|
||||||
|
MMCO_SHORT2UNUSED = 1,
|
||||||
|
MMCO_LONG2UNUSED = 2,
|
||||||
|
MMCO_SHORT2LONG = 3,
|
||||||
|
MMCO_SET_MAX_LONG = 4,
|
||||||
|
MMCO_RESET = 5,
|
||||||
|
MMCO_LONG = 6
|
||||||
|
};
|
||||||
|
|
||||||
|
/////////intra16x16 Luma
|
||||||
|
#define I16_PRED_INVALID -1
|
||||||
|
#define I16_PRED_V 0
|
||||||
|
#define I16_PRED_H 1
|
||||||
|
#define I16_PRED_DC 2
|
||||||
|
#define I16_PRED_P 3
|
||||||
|
|
||||||
|
#define I16_PRED_DC_L 4
|
||||||
|
#define I16_PRED_DC_T 5
|
||||||
|
#define I16_PRED_DC_128 6
|
||||||
|
#define I16_PRED_DC_A 7
|
||||||
|
//////////intra4x4 Luma
|
||||||
|
#define I4_PRED_INVALID 0
|
||||||
|
#define I4_PRED_V 0
|
||||||
|
#define I4_PRED_H 1
|
||||||
|
#define I4_PRED_DC 2
|
||||||
|
#define I4_PRED_DDL 3 //diagonal_down_left
|
||||||
|
#define I4_PRED_DDR 4 //diagonal_down_right
|
||||||
|
#define I4_PRED_VR 5 //vertical_right
|
||||||
|
#define I4_PRED_HD 6 //horizon_down
|
||||||
|
#define I4_PRED_VL 7 //vertical_left
|
||||||
|
#define I4_PRED_HU 8 //horizon_up
|
||||||
|
|
||||||
|
#define I4_PRED_DC_L 9
|
||||||
|
#define I4_PRED_DC_T 10
|
||||||
|
#define I4_PRED_DC_128 11
|
||||||
|
|
||||||
|
#define I4_PRED_DDL_TOP 12 //right-top replacing by padding rightmost pixel of top
|
||||||
|
#define I4_PRED_VL_TOP 13 //right-top replacing by padding rightmost pixel of top
|
||||||
|
#define I4_PRED_A 14
|
||||||
|
|
||||||
|
//////////intra Chroma
|
||||||
|
#define C_PRED_INVALID -1
|
||||||
|
#define C_PRED_DC 0
|
||||||
|
#define C_PRED_H 1
|
||||||
|
#define C_PRED_V 2
|
||||||
|
#define C_PRED_P 3
|
||||||
|
|
||||||
|
#define C_PRED_DC_L 4
|
||||||
|
#define C_PRED_DC_T 5
|
||||||
|
#define C_PRED_DC_128 6
|
||||||
|
#define C_PRED_A 7
|
||||||
|
}
|
||||||
|
#endif//WELS_COMMON_DEFS_H__
|
||||||
@@ -39,7 +39,7 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
||||||
#ifdef LINUX
|
#ifdef __linux__
|
||||||
#ifndef _GNU_SOURCE
|
#ifndef _GNU_SOURCE
|
||||||
#define _GNU_SOURCE
|
#define _GNU_SOURCE
|
||||||
#endif
|
#endif
|
||||||
@@ -450,7 +450,7 @@ WELS_THREAD_ERROR_CODE WelsQueryLogicalProcessInfo (WelsLogicalProcessInfo* p
|
|||||||
#ifdef ANDROID_NDK
|
#ifdef ANDROID_NDK
|
||||||
pInfo->ProcessorCount = android_getCpuCount();
|
pInfo->ProcessorCount = android_getCpuCount();
|
||||||
return WELS_THREAD_ERROR_OK;
|
return WELS_THREAD_ERROR_OK;
|
||||||
#elif defined(LINUX)
|
#elif defined(__linux__)
|
||||||
|
|
||||||
cpu_set_t cpuset;
|
cpu_set_t cpuset;
|
||||||
|
|
||||||
@@ -472,7 +472,7 @@ WELS_THREAD_ERROR_CODE WelsQueryLogicalProcessInfo (WelsLogicalProcessInfo* p
|
|||||||
|
|
||||||
return WELS_THREAD_ERROR_OK;
|
return WELS_THREAD_ERROR_OK;
|
||||||
|
|
||||||
#endif//LINUX
|
#endif//__linux__
|
||||||
}
|
}
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|||||||
153
codec/common/src/common_tables.cpp
Normal file
153
codec/common/src/common_tables.cpp
Normal file
@@ -0,0 +1,153 @@
|
|||||||
|
/*!
|
||||||
|
* \copy
|
||||||
|
* Copyright (c) 2013, Cisco Systems
|
||||||
|
* All rights reserved.
|
||||||
|
*
|
||||||
|
* Redistribution and use in source and binary forms, with or without
|
||||||
|
* modification, are permitted provided that the following conditions
|
||||||
|
* are met:
|
||||||
|
*
|
||||||
|
* * Redistributions of source code must retain the above copyright
|
||||||
|
* notice, this list of conditions and the following disclaimer.
|
||||||
|
*
|
||||||
|
* * Redistributions in binary form must reproduce the above copyright
|
||||||
|
* notice, this list of conditions and the following disclaimer in
|
||||||
|
* the documentation and/or other materials provided with the
|
||||||
|
* distribution.
|
||||||
|
*
|
||||||
|
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||||
|
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||||||
|
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
|
||||||
|
* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
|
||||||
|
* COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
|
||||||
|
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
|
||||||
|
* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
||||||
|
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
|
||||||
|
* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||||||
|
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
|
||||||
|
* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
||||||
|
* POSSIBILITY OF SUCH DAMAGE.
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include "wels_common_defs.h"
|
||||||
|
|
||||||
|
namespace WelsCommon {
|
||||||
|
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
|
//////pNonZeroCount[16+8] mapping scan index
|
||||||
|
const uint8_t g_kuiMbCountScan4Idx[24] = {
|
||||||
|
// 0 1 | 4 5 luma 8*8 block pNonZeroCount[16+8]
|
||||||
|
0, 1, 4, 5, // 2 3 | 6 7 0 | 1 0 1 2 3
|
||||||
|
2, 3, 6, 7, //--------------- --------- 4 5 6 7
|
||||||
|
8, 9, 12, 13, // 8 9 | 12 13 2 | 3 8 9 10 11
|
||||||
|
10, 11, 14, 15, // 10 11 | 14 15-----------------------------> 12 13 14 15
|
||||||
|
16, 17, 20, 21, //---------------- chroma 8*8 block 16 17 18 19
|
||||||
|
18, 19, 22, 23 // 16 17 | 20 21 0 1 20 21 22 23
|
||||||
|
};
|
||||||
|
|
||||||
|
const uint8_t g_kuiCache48CountScan4Idx[24] = {
|
||||||
|
/* Luma */
|
||||||
|
9, 10, 17, 18, // 1+1*8, 2+1*8, 1+2*8, 2+2*8,
|
||||||
|
11, 12, 19, 20, // 3+1*8, 4+1*8, 3+2*8, 4+2*8,
|
||||||
|
25, 26, 33, 34, // 1+3*8, 2+3*8, 1+4*8, 2+4*8,
|
||||||
|
27, 28, 35, 36, // 3+3*8, 4+3*8, 3+4*8, 4+4*8,
|
||||||
|
/* Cb */
|
||||||
|
14, 15, // 6+1*8, 7+1*8,
|
||||||
|
22, 23, // 6+2*8, 7+2*8,
|
||||||
|
|
||||||
|
/* Cr */
|
||||||
|
38, 39, // 6+4*8, 7+4*8,
|
||||||
|
46, 47, // 6+5*8, 7+5*8,
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
//cache element equal to 30
|
||||||
|
const uint8_t g_kuiCache30ScanIdx[16] = { //mv or uiRefIndex cache scan index, 4*4 block as basic unit
|
||||||
|
7, 8, 13, 14,
|
||||||
|
9, 10, 15, 16,
|
||||||
|
19, 20, 25, 26,
|
||||||
|
21, 22, 27, 28
|
||||||
|
};
|
||||||
|
|
||||||
|
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
|
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
|
// extern at wels_common_defs.h
|
||||||
|
const uint8_t g_kuiChromaQpTable[52] = {
|
||||||
|
0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11,
|
||||||
|
12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27,
|
||||||
|
28, 29, 29, 30, 31, 32, 32, 33, 34, 34, 35, 35, 36, 36, 37, 37,
|
||||||
|
37, 38, 38, 38, 39, 39, 39, 39
|
||||||
|
};
|
||||||
|
|
||||||
|
/*
|
||||||
|
* vcl type map for given NAL unit type and corresponding H264 type (0: AVC; 1: SVC).
|
||||||
|
*/
|
||||||
|
const EVclType g_keTypeMap[32][2] = {
|
||||||
|
{ NON_VCL, NON_VCL }, // 0: NAL_UNIT_UNSPEC_0
|
||||||
|
{ VCL, VCL, }, // 1: NAL_UNIT_CODED_SLICE
|
||||||
|
{ VCL, NOT_APP }, // 2: NAL_UNIT_CODED_SLICE_DPA
|
||||||
|
{ VCL, NOT_APP }, // 3: NAL_UNIT_CODED_SLICE_DPB
|
||||||
|
{ VCL, NOT_APP }, // 4: NAL_UNIT_CODED_SLICE_DPC
|
||||||
|
{ VCL, VCL }, // 5: NAL_UNIT_CODED_SLICE_IDR
|
||||||
|
{ NON_VCL, NON_VCL }, // 6: NAL_UNIT_SEI
|
||||||
|
{ NON_VCL, NON_VCL }, // 7: NAL_UNIT_SPS
|
||||||
|
{ NON_VCL, NON_VCL }, // 8: NAL_UNIT_PPS
|
||||||
|
{ NON_VCL, NON_VCL }, // 9: NAL_UNIT_AU_DELIMITER
|
||||||
|
{ NON_VCL, NON_VCL }, // 10: NAL_UNIT_END_OF_SEQ
|
||||||
|
{ NON_VCL, NON_VCL }, // 11: NAL_UNIT_END_OF_STR
|
||||||
|
{ NON_VCL, NON_VCL }, // 12: NAL_UNIT_FILLER_DATA
|
||||||
|
{ NON_VCL, NON_VCL }, // 13: NAL_UNIT_SPS_EXT
|
||||||
|
{ NON_VCL, NON_VCL }, // 14: NAL_UNIT_PREFIX, NEED associate succeeded NAL to make a VCL
|
||||||
|
{ NON_VCL, NON_VCL }, // 15: NAL_UNIT_SUBSET_SPS
|
||||||
|
{ NON_VCL, NON_VCL }, // 16: NAL_UNIT_RESV_16
|
||||||
|
{ NON_VCL, NON_VCL }, // 17: NAL_UNIT_RESV_17
|
||||||
|
{ NON_VCL, NON_VCL }, // 18: NAL_UNIT_RESV_18
|
||||||
|
{ NON_VCL, NON_VCL }, // 19: NAL_UNIT_AUX_CODED_SLICE
|
||||||
|
{ NON_VCL, VCL }, // 20: NAL_UNIT_CODED_SLICE_EXT
|
||||||
|
{ NON_VCL, NON_VCL }, // 21: NAL_UNIT_RESV_21
|
||||||
|
{ NON_VCL, NON_VCL }, // 22: NAL_UNIT_RESV_22
|
||||||
|
{ NON_VCL, NON_VCL }, // 23: NAL_UNIT_RESV_23
|
||||||
|
{ NON_VCL, NON_VCL }, // 24: NAL_UNIT_UNSPEC_24
|
||||||
|
{ NON_VCL, NON_VCL }, // 25: NAL_UNIT_UNSPEC_25
|
||||||
|
{ NON_VCL, NON_VCL }, // 26: NAL_UNIT_UNSPEC_26
|
||||||
|
{ NON_VCL, NON_VCL }, // 27: NAL_UNIT_UNSPEC_27
|
||||||
|
{ NON_VCL, NON_VCL }, // 28: NAL_UNIT_UNSPEC_28
|
||||||
|
{ NON_VCL, NON_VCL }, // 29: NAL_UNIT_UNSPEC_29
|
||||||
|
{ NON_VCL, NON_VCL }, // 30: NAL_UNIT_UNSPEC_30
|
||||||
|
{ NON_VCL, NON_VCL } // 31: NAL_UNIT_UNSPEC_31
|
||||||
|
};
|
||||||
|
|
||||||
|
ALIGNED_DECLARE (const uint16_t, g_kuiDequantCoeff[52][8], 16) = {
|
||||||
|
/* 0*/{ 10, 13, 10, 13, 13, 16, 13, 16 }, /* 1*/{ 11, 14, 11, 14, 14, 18, 14, 18 },
|
||||||
|
/* 2*/{ 13, 16, 13, 16, 16, 20, 16, 20 }, /* 3*/{ 14, 18, 14, 18, 18, 23, 18, 23 },
|
||||||
|
/* 4*/{ 16, 20, 16, 20, 20, 25, 20, 25 }, /* 5*/{ 18, 23, 18, 23, 23, 29, 23, 29 },
|
||||||
|
/* 6*/{ 20, 26, 20, 26, 26, 32, 26, 32 }, /* 7*/{ 22, 28, 22, 28, 28, 36, 28, 36 },
|
||||||
|
/* 8*/{ 26, 32, 26, 32, 32, 40, 32, 40 }, /* 9*/{ 28, 36, 28, 36, 36, 46, 36, 46 },
|
||||||
|
/*10*/{ 32, 40, 32, 40, 40, 50, 40, 50 }, /*11*/{ 36, 46, 36, 46, 46, 58, 46, 58 },
|
||||||
|
/*12*/{ 40, 52, 40, 52, 52, 64, 52, 64 }, /*13*/{ 44, 56, 44, 56, 56, 72, 56, 72 },
|
||||||
|
/*14*/{ 52, 64, 52, 64, 64, 80, 64, 80 }, /*15*/{ 56, 72, 56, 72, 72, 92, 72, 92 },
|
||||||
|
/*16*/{ 64, 80, 64, 80, 80, 100, 80, 100 }, /*17*/{ 72, 92, 72, 92, 92, 116, 92, 116 },
|
||||||
|
/*18*/{ 80, 104, 80, 104, 104, 128, 104, 128 }, /*19*/{ 88, 112, 88, 112, 112, 144, 112, 144 },
|
||||||
|
/*20*/{ 104, 128, 104, 128, 128, 160, 128, 160 }, /*21*/{ 112, 144, 112, 144, 144, 184, 144, 184 },
|
||||||
|
/*22*/{ 128, 160, 128, 160, 160, 200, 160, 200 }, /*23*/{ 144, 184, 144, 184, 184, 232, 184, 232 },
|
||||||
|
/*24*/{ 160, 208, 160, 208, 208, 256, 208, 256 }, /*25*/{ 176, 224, 176, 224, 224, 288, 224, 288 },
|
||||||
|
/*26*/{ 208, 256, 208, 256, 256, 320, 256, 320 }, /*27*/{ 224, 288, 224, 288, 288, 368, 288, 368 },
|
||||||
|
/*28*/{ 256, 320, 256, 320, 320, 400, 320, 400 }, /*29*/{ 288, 368, 288, 368, 368, 464, 368, 464 },
|
||||||
|
/*30*/{ 320, 416, 320, 416, 416, 512, 416, 512 }, /*31*/{ 352, 448, 352, 448, 448, 576, 448, 576 },
|
||||||
|
/*32*/{ 416, 512, 416, 512, 512, 640, 512, 640 }, /*33*/{ 448, 576, 448, 576, 576, 736, 576, 736 },
|
||||||
|
/*34*/{ 512, 640, 512, 640, 640, 800, 640, 800 }, /*35*/{ 576, 736, 576, 736, 736, 928, 736, 928 },
|
||||||
|
/*36*/{ 640, 832, 640, 832, 832, 1024, 832, 1024 }, /*37*/{ 704, 896, 704, 896, 896, 1152, 896, 1152 },
|
||||||
|
/*38*/{ 832, 1024, 832, 1024, 1024, 1280, 1024, 1280 }, /*39*/{ 896, 1152, 896, 1152, 1152, 1472, 1152, 1472 },
|
||||||
|
/*40*/{ 1024, 1280, 1024, 1280, 1280, 1600, 1280, 1600 }, /*41*/{ 1152, 1472, 1152, 1472, 1472, 1856, 1472, 1856 },
|
||||||
|
/*42*/{ 1280, 1664, 1280, 1664, 1664, 2048, 1664, 2048 }, /*43*/{ 1408, 1792, 1408, 1792, 1792, 2304, 1792, 2304 },
|
||||||
|
/*44*/{ 1664, 2048, 1664, 2048, 2048, 2560, 2048, 2560 }, /*45*/{ 1792, 2304, 1792, 2304, 2304, 2944, 2304, 2944 },
|
||||||
|
/*46*/{ 2048, 2560, 2048, 2560, 2560, 3200, 2560, 3200 }, /*47*/{ 2304, 2944, 2304, 2944, 2944, 3712, 2944, 3712 },
|
||||||
|
/*48*/{ 2560, 3328, 2560, 3328, 3328, 4096, 3328, 4096 }, /*49*/{ 2816, 3584, 2816, 3584, 3584, 4608, 3584, 4608 },
|
||||||
|
/*50*/{ 3328, 4096, 3328, 4096, 4096, 5120, 4096, 5120 }, /*51*/{ 3584, 4608, 3584, 4608, 4608, 5888, 4608, 5888 },
|
||||||
|
};
|
||||||
|
|
||||||
|
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||||
|
}
|
||||||
@@ -258,9 +258,10 @@ uint32_t WelsCPUFeatureDetect (int32_t* pNumberOfLogicProcessors) {
|
|||||||
int flags = 0;
|
int flags = 0;
|
||||||
while (fgets (buf, sizeof (buf), f)) {
|
while (fgets (buf, sizeof (buf), f)) {
|
||||||
if (!strncmp (buf, "Features", strlen ("Features"))) {
|
if (!strncmp (buf, "Features", strlen ("Features"))) {
|
||||||
if (strstr (buf, " neon "))
|
// The asimd and fp features are listed on 64 bit ARMv8 kernels
|
||||||
|
if (strstr (buf, " neon ") || strstr (buf, " asimd "))
|
||||||
flags |= WELS_CPU_NEON;
|
flags |= WELS_CPU_NEON;
|
||||||
if (strstr (buf, " vfpv3 "))
|
if (strstr (buf, " vfpv3 ") || strstr (buf, " fp "))
|
||||||
flags |= WELS_CPU_VFPv3;
|
flags |= WELS_CPU_VFPv3;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@@ -280,7 +281,19 @@ uint32_t WelsCPUFeatureDetect (int32_t* pNumberOfLogicProcessors) {
|
|||||||
WELS_CPU_NEON;
|
WELS_CPU_NEON;
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
#else /* Neither X86_ASM nor HAVE_NEON */
|
#elif defined(HAVE_NEON_AARCH64)
|
||||||
|
|
||||||
|
/* For AArch64, no runtime detection actually is necessary for now, since
|
||||||
|
* NEON and VFPv3 is mandatory on all such CPUs. (/proc/cpuinfo doesn't
|
||||||
|
* contain neon, and the android cpufeatures library doesn't return it
|
||||||
|
* either.) */
|
||||||
|
|
||||||
|
uint32_t WelsCPUFeatureDetect (int32_t* pNumberOfLogicProcessors) {
|
||||||
|
return WELS_CPU_VFPv3 |
|
||||||
|
WELS_CPU_NEON;
|
||||||
|
}
|
||||||
|
|
||||||
|
#else /* Neither X86_ASM, HAVE_NEON nor HAVE_NEON_AARCH64 */
|
||||||
|
|
||||||
uint32_t WelsCPUFeatureDetect (int32_t* pNumberOfLogicProcessors) {
|
uint32_t WelsCPUFeatureDetect (int32_t* pNumberOfLogicProcessors) {
|
||||||
return 0;
|
return 0;
|
||||||
|
|||||||
@@ -112,7 +112,7 @@ int32_t WelsStrftime (char* pBuffer, int32_t iSize, const char* kpFormat, const
|
|||||||
|
|
||||||
localtime_s (&sTimeNow, &kpTp->time);
|
localtime_s (&sTimeNow, &kpTp->time);
|
||||||
|
|
||||||
iRc = strftime (pBuffer, iSize, kpFormat, &sTimeNow);
|
iRc = (int32_t)strftime (pBuffer, iSize, kpFormat, &sTimeNow);
|
||||||
if (iRc == 0)
|
if (iRc == 0)
|
||||||
pBuffer[0] = '\0';
|
pBuffer[0] = '\0';
|
||||||
return iRc;
|
return iRc;
|
||||||
@@ -234,7 +234,7 @@ int32_t WelsStrftime (char* pBuffer, int32_t iSize, const char* kpFormat, const
|
|||||||
|
|
||||||
pTnow = localtime (&kpTp->time);
|
pTnow = localtime (&kpTp->time);
|
||||||
|
|
||||||
iRc = strftime (pBuffer, iSize, kpFormat, pTnow);
|
iRc = (int32_t) strftime (pBuffer, iSize, kpFormat, pTnow);
|
||||||
if (iRc == 0)
|
if (iRc == 0)
|
||||||
pBuffer[0] = '\0';
|
pBuffer[0] = '\0';
|
||||||
return iRc;
|
return iRc;
|
||||||
@@ -244,12 +244,12 @@ int32_t WelsStrftime (char* pBuffer, int32_t iSize, const char* kpFormat, const
|
|||||||
|
|
||||||
|
|
||||||
char* WelsStrcat (char* pDest, int32_t iSizeInBytes, const char* kpSrc) {
|
char* WelsStrcat (char* pDest, int32_t iSizeInBytes, const char* kpSrc) {
|
||||||
int32_t iCurLen = strlen (pDest);
|
int32_t iCurLen = (int32_t)strlen (pDest);
|
||||||
return WelsStrncpy (pDest + iCurLen, iSizeInBytes - iCurLen, kpSrc);
|
return WelsStrncpy (pDest + iCurLen, iSizeInBytes - iCurLen, kpSrc);
|
||||||
}
|
}
|
||||||
|
|
||||||
int32_t WelsFwrite (const void* kpBuffer, int32_t iSize, int32_t iCount, WelsFileHandle* pFp) {
|
int32_t WelsFwrite (const void* kpBuffer, int32_t iSize, int32_t iCount, WelsFileHandle* pFp) {
|
||||||
return fwrite (kpBuffer, iSize, iCount, pFp);
|
return (int32_t)fwrite (kpBuffer, iSize, iCount, pFp);
|
||||||
}
|
}
|
||||||
|
|
||||||
uint16_t WelsGetMillisecond (const SWelsTime* kpTp) {
|
uint16_t WelsGetMillisecond (const SWelsTime* kpTp) {
|
||||||
|
|||||||
@@ -32,9 +32,7 @@
|
|||||||
#include <string.h>
|
#include <string.h>
|
||||||
#include "expand_pic.h"
|
#include "expand_pic.h"
|
||||||
#include "cpu_core.h"
|
#include "cpu_core.h"
|
||||||
#include "wels_func_ptr_def.h"
|
|
||||||
|
|
||||||
namespace WelsSVCEnc {
|
|
||||||
// rewrite it (split into luma & chroma) that is helpful for mmx/sse2 optimization perform, 9/27/2009
|
// rewrite it (split into luma & chroma) that is helpful for mmx/sse2 optimization perform, 9/27/2009
|
||||||
static inline void ExpandPictureLuma_c (uint8_t* pDst, const int32_t kiStride, const int32_t kiPicW,
|
static inline void ExpandPictureLuma_c (uint8_t* pDst, const int32_t kiStride, const int32_t kiPicW,
|
||||||
const int32_t kiPicH) {
|
const int32_t kiPicH) {
|
||||||
@@ -116,60 +114,61 @@ static inline void ExpandPictureChroma_c (uint8_t* pDst, const int32_t kiStride,
|
|||||||
} while (i < kiPicH);
|
} while (i < kiPicH);
|
||||||
}
|
}
|
||||||
|
|
||||||
void InitExpandPictureFunc (void* pL, const uint32_t kuiCPUFlag) {
|
void InitExpandPictureFunc (SExpandPicFunc* pExpandPicFunc, const uint32_t kuiCPUFlag) {
|
||||||
SWelsFuncPtrList* pFuncList = (SWelsFuncPtrList*)pL;
|
pExpandPicFunc->pfExpandLumaPicture = ExpandPictureLuma_c;
|
||||||
pFuncList->pfExpandLumaPicture = ExpandPictureLuma_c;
|
pExpandPicFunc->pfExpandChromaPicture[0] = ExpandPictureChroma_c;
|
||||||
pFuncList->pfExpandChromaPicture[0] = ExpandPictureChroma_c;
|
pExpandPicFunc->pfExpandChromaPicture[1] = ExpandPictureChroma_c;
|
||||||
pFuncList->pfExpandChromaPicture[1] = ExpandPictureChroma_c;
|
|
||||||
|
|
||||||
#if defined(X86_ASM)
|
#if defined(X86_ASM)
|
||||||
if ((kuiCPUFlag & WELS_CPU_SSE2) == WELS_CPU_SSE2) {
|
if ((kuiCPUFlag & WELS_CPU_SSE2) == WELS_CPU_SSE2) {
|
||||||
pFuncList->pfExpandLumaPicture = ExpandPictureLuma_sse2;
|
pExpandPicFunc->pfExpandLumaPicture = ExpandPictureLuma_sse2;
|
||||||
pFuncList->pfExpandChromaPicture[0] = ExpandPictureChromaUnalign_sse2;
|
pExpandPicFunc->pfExpandChromaPicture[0] = ExpandPictureChromaUnalign_sse2;
|
||||||
pFuncList->pfExpandChromaPicture[1] = ExpandPictureChromaAlign_sse2;
|
pExpandPicFunc->pfExpandChromaPicture[1] = ExpandPictureChromaAlign_sse2;
|
||||||
}
|
}
|
||||||
#endif//X86_ASM
|
#endif//X86_ASM
|
||||||
#if defined(HAVE_NEON)
|
#if defined(HAVE_NEON)
|
||||||
if (kuiCPUFlag & WELS_CPU_NEON) {
|
if (kuiCPUFlag & WELS_CPU_NEON) {
|
||||||
pFuncList->pfExpandLumaPicture = ExpandPictureLuma_neon;
|
pExpandPicFunc->pfExpandLumaPicture = ExpandPictureLuma_neon;
|
||||||
pFuncList->pfExpandChromaPicture[0] = ExpandPictureChroma_neon;
|
pExpandPicFunc->pfExpandChromaPicture[0] = ExpandPictureChroma_neon;
|
||||||
pFuncList->pfExpandChromaPicture[1] = ExpandPictureChroma_neon;
|
pExpandPicFunc->pfExpandChromaPicture[1] = ExpandPictureChroma_neon;
|
||||||
}
|
}
|
||||||
#endif//HAVE_NEON
|
#endif//HAVE_NEON
|
||||||
#if defined(HAVE_NEON_AARCH64)
|
#if defined(HAVE_NEON_AARCH64)
|
||||||
if (kuiCPUFlag & WELS_CPU_NEON) {
|
if (kuiCPUFlag & WELS_CPU_NEON) {
|
||||||
pFuncList->pfExpandLumaPicture = ExpandPictureLuma_AArch64_neon;
|
pExpandPicFunc->pfExpandLumaPicture = ExpandPictureLuma_AArch64_neon;
|
||||||
pFuncList->pfExpandChromaPicture[0] = ExpandPictureChroma_AArch64_neon;
|
pExpandPicFunc->pfExpandChromaPicture[0] = ExpandPictureChroma_AArch64_neon;
|
||||||
pFuncList->pfExpandChromaPicture[1] = ExpandPictureChroma_AArch64_neon;
|
pExpandPicFunc->pfExpandChromaPicture[1] = ExpandPictureChroma_AArch64_neon;
|
||||||
}
|
}
|
||||||
#endif//HAVE_NEON_AARCH64
|
#endif//HAVE_NEON_AARCH64
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void ExpandReferencingPicture (SPicture* pPic, PExpandPictureFunc pExpLuma, PExpandPictureFunc pExpChrom[2]) {
|
//void ExpandReferencingPicture (SPicture* pPic, PExpandPictureFunc pExpLuma, PExpandPictureFunc pExpChrom[2]) {
|
||||||
|
void ExpandReferencingPicture (uint8_t* pData[3], int32_t iWidth, int32_t iHeight, int32_t iStride[3],
|
||||||
|
PExpandPictureFunc pExpLuma, PExpandPictureFunc pExpChrom[2]) {
|
||||||
/*local variable*/
|
/*local variable*/
|
||||||
uint8_t* pPicY = pPic->pData[0];
|
uint8_t* pPicY = pData[0];
|
||||||
uint8_t* pPicCb = pPic->pData[1];
|
uint8_t* pPicCb = pData[1];
|
||||||
uint8_t* pPicCr = pPic->pData[2];
|
uint8_t* pPicCr = pData[2];
|
||||||
const int32_t kiWidthY = pPic->iWidthInPixel;
|
const int32_t kiWidthY = iWidth;
|
||||||
const int32_t kiHeightY = pPic->iHeightInPixel;
|
const int32_t kiHeightY = iHeight;
|
||||||
const int32_t kiWidthUV = kiWidthY >> 1;
|
const int32_t kiWidthUV = kiWidthY >> 1;
|
||||||
const int32_t kiHeightUV = kiHeightY >> 1;
|
const int32_t kiHeightUV = kiHeightY >> 1;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
pExpLuma (pPicY, pPic->iLineSize[0], kiWidthY, kiHeightY);
|
pExpLuma (pPicY, iStride[0], kiWidthY, kiHeightY);
|
||||||
if (kiWidthUV >= 16) {
|
if (kiWidthUV >= 16) {
|
||||||
// fix coding picture size as 16x16
|
// fix coding picture size as 16x16
|
||||||
const bool kbChrAligned = /*(iWidthUV >= 16) && */ ((kiWidthUV & 0x0F) == 0); // chroma planes: (16+iWidthUV) & 15
|
const bool kbChrAligned = /*(iWidthUV >= 16) && */ ((kiWidthUV & 0x0F) == 0); // chroma planes: (16+iWidthUV) & 15
|
||||||
pExpChrom[kbChrAligned] (pPicCb, pPic->iLineSize[1], kiWidthUV, kiHeightUV);
|
pExpChrom[kbChrAligned] (pPicCb, iStride[1], kiWidthUV, kiHeightUV);
|
||||||
pExpChrom[kbChrAligned] (pPicCr, pPic->iLineSize[2], kiWidthUV, kiHeightUV);
|
pExpChrom[kbChrAligned] (pPicCr, iStride[2], kiWidthUV, kiHeightUV);
|
||||||
} else {
|
} else {
|
||||||
// fix coding picture size as 16x16
|
// fix coding picture size as 16x16
|
||||||
ExpandPictureChroma_c (pPicCb, pPic->iLineSize[1], kiWidthUV, kiHeightUV);
|
ExpandPictureChroma_c (pPicCb, iStride[1], kiWidthUV, kiHeightUV);
|
||||||
ExpandPictureChroma_c (pPicCr, pPic->iLineSize[2], kiWidthUV, kiHeightUV);
|
ExpandPictureChroma_c (pPicCr, iStride[2], kiWidthUV, kiHeightUV);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
||||||
107
codec/common/src/utils.cpp
Normal file
107
codec/common/src/utils.cpp
Normal file
@@ -0,0 +1,107 @@
|
|||||||
|
/*!
|
||||||
|
* \copy
|
||||||
|
* Copyright (c) 2009-2013, Cisco Systems
|
||||||
|
* All rights reserved.
|
||||||
|
*
|
||||||
|
* Redistribution and use in source and binary forms, with or without
|
||||||
|
* modification, are permitted provided that the following conditions
|
||||||
|
* are met:
|
||||||
|
*
|
||||||
|
* * Redistributions of source code must retain the above copyright
|
||||||
|
* notice, this list of conditions and the following disclaimer.
|
||||||
|
*
|
||||||
|
* * Redistributions in binary form must reproduce the above copyright
|
||||||
|
* notice, this list of conditions and the following disclaimer in
|
||||||
|
* the documentation and/or other materials provided with the
|
||||||
|
* distribution.
|
||||||
|
*
|
||||||
|
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||||
|
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||||||
|
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
|
||||||
|
* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
|
||||||
|
* COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
|
||||||
|
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
|
||||||
|
* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
||||||
|
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
|
||||||
|
* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||||||
|
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
|
||||||
|
* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
||||||
|
* POSSIBILITY OF SUCH DAMAGE.
|
||||||
|
*
|
||||||
|
*
|
||||||
|
* \file utils.c
|
||||||
|
*
|
||||||
|
* \brief common tool/function utilization
|
||||||
|
*
|
||||||
|
* \date 03/10/2009 Created
|
||||||
|
*
|
||||||
|
*************************************************************************************
|
||||||
|
*/
|
||||||
|
#include "utils.h"
|
||||||
|
#include "crt_util_safe_x.h" // Safe CRT routines like utils for cross platforms
|
||||||
|
|
||||||
|
float WelsCalcPsnr (const void* kpTarPic,
|
||||||
|
const int32_t kiTarStride,
|
||||||
|
const void* kpRefPic,
|
||||||
|
const int32_t kiRefStride,
|
||||||
|
const int32_t kiWidth,
|
||||||
|
const int32_t kiHeight);
|
||||||
|
|
||||||
|
|
||||||
|
void WelsLog (SLogContext* logCtx, int32_t iLevel, const char* kpFmt, ...) {
|
||||||
|
va_list vl;
|
||||||
|
va_start (vl, kpFmt);
|
||||||
|
logCtx->pfLog (logCtx->pLogCtx, iLevel, kpFmt, vl);
|
||||||
|
va_end (vl);
|
||||||
|
}
|
||||||
|
|
||||||
|
#ifndef CALC_PSNR
|
||||||
|
#define CONST_FACTOR_PSNR (10.0 / log(10.0)) // for good computation
|
||||||
|
#define CALC_PSNR(w, h, s) ((float)(CONST_FACTOR_PSNR * log( 65025.0 * w * h / iSqe )))
|
||||||
|
#endif//CALC_PSNR
|
||||||
|
|
||||||
|
/*
|
||||||
|
* PSNR calculation routines
|
||||||
|
*/
|
||||||
|
/*!
|
||||||
|
*************************************************************************************
|
||||||
|
* \brief PSNR calculation utilization in Wels
|
||||||
|
*
|
||||||
|
* \param pTarPic target picture to be calculated in Picture pData format
|
||||||
|
* \param iTarStride stride of target picture pData pBuffer
|
||||||
|
* \param pRefPic base referencing picture samples
|
||||||
|
* \param iRefStride stride of reference picture pData pBuffer
|
||||||
|
* \param iWidth picture iWidth in pixel
|
||||||
|
* \param iHeight picture iHeight in pixel
|
||||||
|
*
|
||||||
|
* \return actual PSNR result;
|
||||||
|
*
|
||||||
|
* \note N/A
|
||||||
|
*************************************************************************************
|
||||||
|
*/
|
||||||
|
float WelsCalcPsnr (const void* kpTarPic,
|
||||||
|
const int32_t kiTarStride,
|
||||||
|
const void* kpRefPic,
|
||||||
|
const int32_t kiRefStride,
|
||||||
|
const int32_t kiWidth,
|
||||||
|
const int32_t kiHeight) {
|
||||||
|
int64_t iSqe = 0;
|
||||||
|
int32_t x, y;
|
||||||
|
uint8_t* pTar = (uint8_t*)kpTarPic;
|
||||||
|
uint8_t* pRef = (uint8_t*)kpRefPic;
|
||||||
|
|
||||||
|
if (NULL == pTar || NULL == pRef)
|
||||||
|
return (-1.0f);
|
||||||
|
|
||||||
|
for (y = 0; y < kiHeight; ++ y) { // OPTable !!
|
||||||
|
for (x = 0; x < kiWidth; ++ x) {
|
||||||
|
const int32_t kiT = pTar[y * kiTarStride + x] - pRef[y * kiRefStride + x];
|
||||||
|
iSqe += kiT * kiT;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (0 == iSqe) {
|
||||||
|
return (99.99f);
|
||||||
|
}
|
||||||
|
return CALC_PSNR (kiWidth, kiHeight, iSqe);
|
||||||
|
}
|
||||||
|
|
||||||
@@ -1,7 +1,6 @@
|
|||||||
/*!
|
/*!
|
||||||
* \copy
|
* \copy
|
||||||
* Copyright (c) 2013, Cisco Systems
|
* Copyright (c) 2013, Cisco Systems
|
||||||
* Copyright (c) 2013, Mozilla
|
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
* Redistribution and use in source and binary forms, with or without
|
* Redistribution and use in source and binary forms, with or without
|
||||||
@@ -31,19 +30,68 @@
|
|||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <stdarg.h>
|
#ifdef _WIN32
|
||||||
|
#include <windows.h>
|
||||||
|
#include <tchar.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include "typedefs.h"
|
#include <stdarg.h>
|
||||||
|
#include <string.h>
|
||||||
|
|
||||||
static int32_t g_TraceLevel = 0;
|
#include "crt_util_safe_x.h" // Safe CRT routines like utils for cross platforms
|
||||||
|
|
||||||
void WelsStderrSetTraceLevel (int32_t level) {
|
#include "welsCodecTrace.h"
|
||||||
g_TraceLevel = level;
|
#include "utils.h"
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
static void welsStderrTrace (void* ctx, int level, const char* string) {
|
||||||
|
fprintf (stderr, "%s", string);
|
||||||
}
|
}
|
||||||
|
|
||||||
int32_t welsStderrLevelTrace (int32_t level, const char* format, va_list ap) {
|
welsCodecTrace::welsCodecTrace() {
|
||||||
if (level < g_TraceLevel) {
|
|
||||||
vfprintf (stderr, format, ap);
|
m_iTraceLevel = WELS_LOG_DEFAULT;
|
||||||
|
m_fpTrace = welsStderrTrace;
|
||||||
|
m_pTraceCtx = NULL;
|
||||||
|
|
||||||
|
m_sLogCtx.pLogCtx = this;
|
||||||
|
m_sLogCtx.pfLog = StaticCodecTrace;
|
||||||
|
}
|
||||||
|
|
||||||
|
welsCodecTrace::~welsCodecTrace() {
|
||||||
|
m_fpTrace = NULL;
|
||||||
|
}
|
||||||
|
|
||||||
|
#define MAX_LOG_SIZE 1024
|
||||||
|
|
||||||
|
void welsCodecTrace::StaticCodecTrace (void* pCtx, const int32_t iLevel, const char* Str_Format, va_list vl) {
|
||||||
|
welsCodecTrace* self = (welsCodecTrace*) pCtx;
|
||||||
|
self->CodecTrace (iLevel, Str_Format, vl);
|
||||||
|
}
|
||||||
|
|
||||||
|
void welsCodecTrace::CodecTrace (const int32_t iLevel, const char* Str_Format, va_list vl) {
|
||||||
|
if (m_iTraceLevel < iLevel) {
|
||||||
|
return;
|
||||||
}
|
}
|
||||||
return 0;
|
|
||||||
|
char pBuf[MAX_LOG_SIZE] = {0};
|
||||||
|
WelsVsnprintf (pBuf, MAX_LOG_SIZE, Str_Format, vl); // confirmed_safe_unsafe_usage
|
||||||
|
|
||||||
|
m_fpTrace (m_pTraceCtx, iLevel, pBuf);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void welsCodecTrace::SetTraceLevel (const int32_t iLevel) {
|
||||||
|
if (iLevel >= 0)
|
||||||
|
m_iTraceLevel = iLevel;
|
||||||
|
}
|
||||||
|
|
||||||
|
void welsCodecTrace::SetTraceCallback (WelsTraceCallback func) {
|
||||||
|
m_fpTrace = func;
|
||||||
|
}
|
||||||
|
|
||||||
|
void welsCodecTrace::SetTraceCallbackContext (void* ctx) {
|
||||||
|
m_pTraceCtx = ctx;
|
||||||
|
}
|
||||||
|
|
||||||
@@ -1,11 +1,14 @@
|
|||||||
COMMON_SRCDIR=codec/common
|
COMMON_SRCDIR=codec/common
|
||||||
COMMON_CPP_SRCS=\
|
COMMON_CPP_SRCS=\
|
||||||
|
$(COMMON_SRCDIR)/src/common_tables.cpp\
|
||||||
$(COMMON_SRCDIR)/src/copy_mb.cpp\
|
$(COMMON_SRCDIR)/src/copy_mb.cpp\
|
||||||
$(COMMON_SRCDIR)/src/cpu.cpp\
|
$(COMMON_SRCDIR)/src/cpu.cpp\
|
||||||
$(COMMON_SRCDIR)/src/crt_util_safe_x.cpp\
|
$(COMMON_SRCDIR)/src/crt_util_safe_x.cpp\
|
||||||
$(COMMON_SRCDIR)/src/deblocking_common.cpp\
|
$(COMMON_SRCDIR)/src/deblocking_common.cpp\
|
||||||
$(COMMON_SRCDIR)/src/logging.cpp\
|
$(COMMON_SRCDIR)/src/expand_pic.cpp\
|
||||||
$(COMMON_SRCDIR)/src/sad_common.cpp\
|
$(COMMON_SRCDIR)/src/sad_common.cpp\
|
||||||
|
$(COMMON_SRCDIR)/src/utils.cpp\
|
||||||
|
$(COMMON_SRCDIR)/src/welsCodecTrace.cpp\
|
||||||
$(COMMON_SRCDIR)/src/WelsThreadLib.cpp\
|
$(COMMON_SRCDIR)/src/WelsThreadLib.cpp\
|
||||||
|
|
||||||
COMMON_OBJS += $(COMMON_CPP_SRCS:.cpp=.$(OBJ))
|
COMMON_OBJS += $(COMMON_CPP_SRCS:.cpp=.$(OBJ))
|
||||||
@@ -36,6 +39,8 @@ endif
|
|||||||
|
|
||||||
ifeq ($(ASM_ARCH), arm64)
|
ifeq ($(ASM_ARCH), arm64)
|
||||||
COMMON_ASM_ARM64_SRCS=\
|
COMMON_ASM_ARM64_SRCS=\
|
||||||
|
$(COMMON_SRCDIR)/arm64/copy_mb_aarch64_neon.S\
|
||||||
|
$(COMMON_SRCDIR)/arm64/deblocking_aarch64_neon.S\
|
||||||
$(COMMON_SRCDIR)/arm64/expand_picture_aarch64_neon.S\
|
$(COMMON_SRCDIR)/arm64/expand_picture_aarch64_neon.S\
|
||||||
$(COMMON_SRCDIR)/arm64/mc_aarch64_neon.S\
|
$(COMMON_SRCDIR)/arm64/mc_aarch64_neon.S\
|
||||||
|
|
||||||
@@ -50,7 +55,7 @@ $(COMMON_SRCDIR)/%.$(OBJ): $(COMMON_SRCDIR)/%.asm
|
|||||||
$(QUIET_ASM)$(ASM) $(ASMFLAGS) $(ASM_INCLUDES) $(COMMON_ASMFLAGS) $(COMMON_ASM_INCLUDES) -o $@ $<
|
$(QUIET_ASM)$(ASM) $(ASMFLAGS) $(ASM_INCLUDES) $(COMMON_ASMFLAGS) $(COMMON_ASM_INCLUDES) -o $@ $<
|
||||||
|
|
||||||
$(COMMON_SRCDIR)/%.$(OBJ): $(COMMON_SRCDIR)/%.S
|
$(COMMON_SRCDIR)/%.$(OBJ): $(COMMON_SRCDIR)/%.S
|
||||||
$(QUIET_CCAS)$(CCAS) $(CFLAGS) $(ASMFLAGS) $(INCLUDES) $(COMMON_CFLAGS) $(COMMON_INCLUDES) -c -o $@ $<
|
$(QUIET_CCAS)$(CCAS) $(CCASFLAGS) $(ASMFLAGS) $(INCLUDES) $(COMMON_CFLAGS) $(COMMON_INCLUDES) -c -o $@ $<
|
||||||
|
|
||||||
$(LIBPREFIX)common.$(LIBSUFFIX): $(COMMON_OBJS)
|
$(LIBPREFIX)common.$(LIBSUFFIX): $(COMMON_OBJS)
|
||||||
$(QUIET)rm -f $@
|
$(QUIET)rm -f $@
|
||||||
|
|||||||
@@ -81,7 +81,7 @@ WELS_EXTERN WelsCPUId
|
|||||||
push rdx
|
push rdx
|
||||||
|
|
||||||
mov eax, ecx
|
mov eax, ecx
|
||||||
mov rcx, [r9]
|
mov ecx, [r9]
|
||||||
cpuid
|
cpuid
|
||||||
mov [r9], ecx
|
mov [r9], ecx
|
||||||
mov [r8], ebx
|
mov [r8], ebx
|
||||||
@@ -100,7 +100,7 @@ WELS_EXTERN WelsCPUId
|
|||||||
push rdx
|
push rdx
|
||||||
|
|
||||||
mov eax, edi
|
mov eax, edi
|
||||||
mov rcx, [rcx]
|
mov ecx, [rcx]
|
||||||
cpuid
|
cpuid
|
||||||
mov [r8], edx
|
mov [r8], edx
|
||||||
pop rdx
|
pop rdx
|
||||||
|
|||||||
@@ -44,12 +44,16 @@
|
|||||||
#include <string>
|
#include <string>
|
||||||
using namespace std;
|
using namespace std;
|
||||||
|
|
||||||
|
|
||||||
class CReadConfig {
|
class CReadConfig {
|
||||||
public:
|
public:
|
||||||
CReadConfig (const char* kpConfigFileName);
|
CReadConfig();
|
||||||
|
CReadConfig (const char* pConfigFileName);
|
||||||
|
CReadConfig (const string& pConfigFileName);
|
||||||
virtual ~CReadConfig();
|
virtual ~CReadConfig();
|
||||||
|
|
||||||
long ReadLine (string* val, const int kiValSize = 4);
|
void Openf (const char* strFile);
|
||||||
|
long ReadLine (string* strVal, const int iValSize = 4);
|
||||||
const bool EndOfFile();
|
const bool EndOfFile();
|
||||||
const int GetLines();
|
const int GetLines();
|
||||||
const bool ExistFile();
|
const bool ExistFile();
|
||||||
@@ -58,7 +62,7 @@ class CReadConfig {
|
|||||||
private:
|
private:
|
||||||
FILE* m_pCfgFile;
|
FILE* m_pCfgFile;
|
||||||
string m_strCfgFileName;
|
string m_strCfgFileName;
|
||||||
unsigned long m_ulLines;
|
unsigned int m_iLines;
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif // READ_CONFIG_H__
|
#endif // READ_CONFIG_H__
|
||||||
16
codec/console/common/targets.mk
Normal file
16
codec/console/common/targets.mk
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
CONSOLE_COMMON_SRCDIR=codec/console/common
|
||||||
|
CONSOLE_COMMON_CPP_SRCS=\
|
||||||
|
$(CONSOLE_COMMON_SRCDIR)/src/read_config.cpp\
|
||||||
|
|
||||||
|
CONSOLE_COMMON_OBJS += $(CONSOLE_COMMON_CPP_SRCS:.cpp=.$(OBJ))
|
||||||
|
|
||||||
|
OBJS += $(CONSOLE_COMMON_OBJS)
|
||||||
|
$(CONSOLE_COMMON_SRCDIR)/%.$(OBJ): $(CONSOLE_COMMON_SRCDIR)/%.cpp
|
||||||
|
$(QUIET_CXX)$(CXX) $(CFLAGS) $(CXXFLAGS) $(INCLUDES) $(CONSOLE_COMMON_CFLAGS) $(CONSOLE_COMMON_INCLUDES) -c $(CXX_O) $<
|
||||||
|
|
||||||
|
$(LIBPREFIX)console_common.$(LIBSUFFIX): $(CONSOLE_COMMON_OBJS)
|
||||||
|
$(QUIET)rm -f $@
|
||||||
|
$(QUIET_AR)$(AR) $(AR_OPTS) $+
|
||||||
|
|
||||||
|
libraries: $(LIBPREFIX)console_common.$(LIBSUFFIX)
|
||||||
|
LIBRARIES += $(LIBPREFIX)console_common.$(LIBSUFFIX)
|
||||||
@@ -82,6 +82,8 @@ class CD3D9Utils {
|
|||||||
HWND m_hWnd;
|
HWND m_hWnd;
|
||||||
unsigned char* m_pDumpYUV;
|
unsigned char* m_pDumpYUV;
|
||||||
BOOL m_bInitDone;
|
BOOL m_bInitDone;
|
||||||
|
int m_nWidth;
|
||||||
|
int m_nHeight;
|
||||||
|
|
||||||
LPDIRECT3D9 m_lpD3D9;
|
LPDIRECT3D9 m_lpD3D9;
|
||||||
LPDIRECT3DDEVICE9 m_lpD3D9Device;
|
LPDIRECT3DDEVICE9 m_lpD3D9Device;
|
||||||
@@ -110,6 +112,8 @@ class CD3D9ExUtils {
|
|||||||
HWND m_hWnd;
|
HWND m_hWnd;
|
||||||
unsigned char* m_pDumpYUV;
|
unsigned char* m_pDumpYUV;
|
||||||
BOOL m_bInitDone;
|
BOOL m_bInitDone;
|
||||||
|
int m_nWidth;
|
||||||
|
int m_nHeight;
|
||||||
|
|
||||||
LPDIRECT3D9EX m_lpD3D9;
|
LPDIRECT3D9EX m_lpD3D9;
|
||||||
LPDIRECT3DDEVICE9EX m_lpD3D9Device;
|
LPDIRECT3DDEVICE9EX m_lpD3D9Device;
|
||||||
|
|||||||
@@ -75,7 +75,8 @@ CD3D9Utils::CD3D9Utils() {
|
|||||||
m_lpD3D9 = NULL;
|
m_lpD3D9 = NULL;
|
||||||
m_lpD3D9Device = NULL;
|
m_lpD3D9Device = NULL;
|
||||||
m_lpD3D9RawSurfaceShare = NULL;
|
m_lpD3D9RawSurfaceShare = NULL;
|
||||||
|
m_nWidth = 0;
|
||||||
|
m_nHeight = 0;
|
||||||
// coverity scan uninitial
|
// coverity scan uninitial
|
||||||
ZeroMemory (&m_d3dpp, sizeof (m_d3dpp));
|
ZeroMemory (&m_d3dpp, sizeof (m_d3dpp));
|
||||||
}
|
}
|
||||||
@@ -147,6 +148,16 @@ HRESULT CD3D9Utils::Process (void* pDst[3], SBufferInfo* pInfo, FILE* pFp) {
|
|||||||
HRESULT CD3D9Utils::Render (void* pDst[3], SBufferInfo* pInfo) {
|
HRESULT CD3D9Utils::Render (void* pDst[3], SBufferInfo* pInfo) {
|
||||||
HRESULT hResult = E_FAIL;
|
HRESULT hResult = E_FAIL;
|
||||||
|
|
||||||
|
if (!pInfo)
|
||||||
|
return E_FAIL;
|
||||||
|
|
||||||
|
if (m_nWidth != pInfo->UsrData.sSystemBuffer.iWidth
|
||||||
|
|| m_nHeight != pInfo->UsrData.sSystemBuffer.iHeight) {
|
||||||
|
m_nWidth = pInfo->UsrData.sSystemBuffer.iWidth;
|
||||||
|
m_nHeight = pInfo->UsrData.sSystemBuffer.iHeight;
|
||||||
|
SAFE_RELEASE (m_lpD3D9RawSurfaceShare);
|
||||||
|
SAFE_RELEASE (m_lpD3D9Device);
|
||||||
|
}
|
||||||
hResult = InitResource (NULL, pInfo);
|
hResult = InitResource (NULL, pInfo);
|
||||||
if (SUCCEEDED (hResult))
|
if (SUCCEEDED (hResult))
|
||||||
hResult = Dump2Surface (pDst, m_lpD3D9RawSurfaceShare, pInfo->UsrData.sSystemBuffer.iWidth,
|
hResult = Dump2Surface (pDst, m_lpD3D9RawSurfaceShare, pInfo->UsrData.sSystemBuffer.iWidth,
|
||||||
@@ -245,6 +256,8 @@ CD3D9ExUtils::CD3D9ExUtils() {
|
|||||||
m_lpD3D9Device = NULL;
|
m_lpD3D9Device = NULL;
|
||||||
m_lpD3D9RawSurfaceShare = NULL;
|
m_lpD3D9RawSurfaceShare = NULL;
|
||||||
|
|
||||||
|
m_nWidth = 0;
|
||||||
|
m_nHeight = 0;
|
||||||
// coverity scan uninitial
|
// coverity scan uninitial
|
||||||
ZeroMemory (&m_d3dpp, sizeof (m_d3dpp));
|
ZeroMemory (&m_d3dpp, sizeof (m_d3dpp));
|
||||||
}
|
}
|
||||||
@@ -316,6 +329,16 @@ HRESULT CD3D9ExUtils::Process (void* pDst[3], SBufferInfo* pInfo, FILE* pFp) {
|
|||||||
HRESULT CD3D9ExUtils::Render (void* pDst[3], SBufferInfo* pInfo) {
|
HRESULT CD3D9ExUtils::Render (void* pDst[3], SBufferInfo* pInfo) {
|
||||||
HRESULT hResult = E_FAIL;
|
HRESULT hResult = E_FAIL;
|
||||||
|
|
||||||
|
if (!pInfo)
|
||||||
|
return E_FAIL;
|
||||||
|
|
||||||
|
if (m_nWidth != pInfo->UsrData.sSystemBuffer.iWidth
|
||||||
|
|| m_nHeight != pInfo->UsrData.sSystemBuffer.iHeight) {
|
||||||
|
m_nWidth = pInfo->UsrData.sSystemBuffer.iWidth;
|
||||||
|
m_nHeight = pInfo->UsrData.sSystemBuffer.iHeight;
|
||||||
|
SAFE_RELEASE (m_lpD3D9RawSurfaceShare);
|
||||||
|
SAFE_RELEASE (m_lpD3D9Device);
|
||||||
|
}
|
||||||
hResult = InitResource (NULL, pInfo);
|
hResult = InitResource (NULL, pInfo);
|
||||||
if (SUCCEEDED (hResult))
|
if (SUCCEEDED (hResult))
|
||||||
hResult = Dump2Surface (pDst, m_lpD3D9RawSurfaceShare, pInfo->UsrData.sSystemBuffer.iWidth,
|
hResult = Dump2Surface (pDst, m_lpD3D9RawSurfaceShare, pInfo->UsrData.sSystemBuffer.iWidth,
|
||||||
@@ -386,6 +409,9 @@ HRESULT CD3D9ExUtils::InitResource (void* pSharedHandle, SBufferInfo* pInfo) {
|
|||||||
m_d3dpp.hDeviceWindow = m_hWnd;
|
m_d3dpp.hDeviceWindow = m_hWnd;
|
||||||
m_d3dpp.PresentationInterval = D3DPRESENT_INTERVAL_IMMEDIATE;
|
m_d3dpp.PresentationInterval = D3DPRESENT_INTERVAL_IMMEDIATE;
|
||||||
hResult = m_lpD3D9->CreateDeviceEx (uiAdapter, D3DDevType, NULL, dwBehaviorFlags, &m_d3dpp, NULL, &m_lpD3D9Device);
|
hResult = m_lpD3D9->CreateDeviceEx (uiAdapter, D3DDevType, NULL, dwBehaviorFlags, &m_d3dpp, NULL, &m_lpD3D9Device);
|
||||||
|
if (FAILED (hResult)) {
|
||||||
|
return hResult;
|
||||||
|
}
|
||||||
iWidth = pInfo->UsrData.sSystemBuffer.iWidth;
|
iWidth = pInfo->UsrData.sSystemBuffer.iWidth;
|
||||||
iHeight = pInfo->UsrData.sSystemBuffer.iHeight;
|
iHeight = pInfo->UsrData.sSystemBuffer.iHeight;
|
||||||
D3Dformat = (D3DFORMAT)NV12_FORMAT;
|
D3Dformat = (D3DFORMAT)NV12_FORMAT;
|
||||||
|
|||||||
@@ -51,7 +51,6 @@
|
|||||||
#include "typedefs.h"
|
#include "typedefs.h"
|
||||||
#include "measure_time.h"
|
#include "measure_time.h"
|
||||||
#include "d3d9_utils.h"
|
#include "d3d9_utils.h"
|
||||||
#include "logging.h"
|
|
||||||
|
|
||||||
|
|
||||||
using namespace std;
|
using namespace std;
|
||||||
@@ -76,7 +75,7 @@ void H264DecodeInstance (ISVCDecoder* pDecoder, const char* kpH264FileName, cons
|
|||||||
uint8_t* pBuf = NULL;
|
uint8_t* pBuf = NULL;
|
||||||
uint8_t uiStartCode[4] = {0, 0, 0, 1};
|
uint8_t uiStartCode[4] = {0, 0, 0, 1};
|
||||||
|
|
||||||
void* pData[3] = {NULL};
|
uint8_t* pData[3] = {NULL};
|
||||||
uint8_t* pDst[3] = {NULL};
|
uint8_t* pDst[3] = {NULL};
|
||||||
SBufferInfo sDstBufInfo;
|
SBufferInfo sDstBufInfo;
|
||||||
|
|
||||||
@@ -129,7 +128,7 @@ void H264DecodeInstance (ISVCDecoder* pDecoder, const char* kpH264FileName, cons
|
|||||||
printf ("------------------------------------------------------\n");
|
printf ("------------------------------------------------------\n");
|
||||||
|
|
||||||
fseek (pH264File, 0L, SEEK_END);
|
fseek (pH264File, 0L, SEEK_END);
|
||||||
iFileSize = ftell (pH264File);
|
iFileSize = (int32_t) ftell (pH264File);
|
||||||
if (iFileSize <= 0) {
|
if (iFileSize <= 0) {
|
||||||
fprintf (stderr, "Current Bit Stream File is too small, read error!!!!\n");
|
fprintf (stderr, "Current Bit Stream File is too small, read error!!!!\n");
|
||||||
goto label_exit;
|
goto label_exit;
|
||||||
@@ -212,9 +211,9 @@ void H264DecodeInstance (ISVCDecoder* pDecoder, const char* kpH264FileName, cons
|
|||||||
pDecoder->DecodeFrame2 (pBuf + iBufPos, iSliceSize, pData, &sDstBufInfo);
|
pDecoder->DecodeFrame2 (pBuf + iBufPos, iSliceSize, pData, &sDstBufInfo);
|
||||||
|
|
||||||
if (sDstBufInfo.iBufferStatus == 1) {
|
if (sDstBufInfo.iBufferStatus == 1) {
|
||||||
pDst[0] = (uint8_t*)pData[0];
|
pDst[0] = pData[0];
|
||||||
pDst[1] = (uint8_t*)pData[1];
|
pDst[1] = pData[1];
|
||||||
pDst[2] = (uint8_t*)pData[2];
|
pDst[2] = pData[2];
|
||||||
}
|
}
|
||||||
iEnd = WelsTime();
|
iEnd = WelsTime();
|
||||||
iTotal += iEnd - iStart;
|
iTotal += iEnd - iStart;
|
||||||
@@ -247,9 +246,9 @@ void H264DecodeInstance (ISVCDecoder* pDecoder, const char* kpH264FileName, cons
|
|||||||
|
|
||||||
pDecoder->DecodeFrame2 (NULL, 0, pData, &sDstBufInfo);
|
pDecoder->DecodeFrame2 (NULL, 0, pData, &sDstBufInfo);
|
||||||
if (sDstBufInfo.iBufferStatus == 1) {
|
if (sDstBufInfo.iBufferStatus == 1) {
|
||||||
pDst[0] = (uint8_t*)pData[0];
|
pDst[0] = pData[0];
|
||||||
pDst[1] = (uint8_t*)pData[1];
|
pDst[1] = pData[1];
|
||||||
pDst[2] = (uint8_t*)pData[2];
|
pDst[2] = pData[2];
|
||||||
}
|
}
|
||||||
|
|
||||||
if (sDstBufInfo.iBufferStatus == 1) {
|
if (sDstBufInfo.iBufferStatus == 1) {
|
||||||
@@ -311,6 +310,7 @@ int32_t main (int32_t iArgC, char* pArgV[]) {
|
|||||||
|
|
||||||
SDecodingParam sDecParam = {0};
|
SDecodingParam sDecParam = {0};
|
||||||
string strInputFile (""), strOutputFile (""), strOptionFile ("");
|
string strInputFile (""), strOutputFile (""), strOptionFile ("");
|
||||||
|
int iLevelSetting = -1;
|
||||||
|
|
||||||
sDecParam.sVideoProperty.size = sizeof (sDecParam.sVideoProperty);
|
sDecParam.sVideoProperty.size = sizeof (sDecParam.sVideoProperty);
|
||||||
|
|
||||||
@@ -339,7 +339,7 @@ int32_t main (int32_t iArgC, char* pArgV[]) {
|
|||||||
strOutputFile = strTag[1];
|
strOutputFile = strTag[1];
|
||||||
} else if (strTag[0].compare ("RestructionFile") == 0) {
|
} else if (strTag[0].compare ("RestructionFile") == 0) {
|
||||||
strReconFile = strTag[1];
|
strReconFile = strTag[1];
|
||||||
int32_t iLen = strReconFile.length();
|
int32_t iLen = (int32_t)strReconFile.length();
|
||||||
sDecParam.pFileNameRestructed = new char[iLen + 1];
|
sDecParam.pFileNameRestructed = new char[iLen + 1];
|
||||||
if (sDecParam.pFileNameRestructed != NULL) {
|
if (sDecParam.pFileNameRestructed != NULL) {
|
||||||
sDecParam.pFileNameRestructed[iLen] = 0;
|
sDecParam.pFileNameRestructed[iLen] = 0;
|
||||||
@@ -349,7 +349,7 @@ int32_t main (int32_t iArgC, char* pArgV[]) {
|
|||||||
} else if (strTag[0].compare ("TargetDQID") == 0) {
|
} else if (strTag[0].compare ("TargetDQID") == 0) {
|
||||||
sDecParam.uiTargetDqLayer = (uint8_t)atol (strTag[1].c_str());
|
sDecParam.uiTargetDqLayer = (uint8_t)atol (strTag[1].c_str());
|
||||||
} else if (strTag[0].compare ("OutColorFormat") == 0) {
|
} else if (strTag[0].compare ("OutColorFormat") == 0) {
|
||||||
sDecParam.iOutputColorFormat = atol (strTag[1].c_str());
|
sDecParam.iOutputColorFormat = atoi (strTag[1].c_str());
|
||||||
} else if (strTag[0].compare ("ErrorConcealmentFlag") == 0) {
|
} else if (strTag[0].compare ("ErrorConcealmentFlag") == 0) {
|
||||||
sDecParam.uiEcActiveFlag = (uint8_t)atol (strTag[1].c_str());
|
sDecParam.uiEcActiveFlag = (uint8_t)atol (strTag[1].c_str());
|
||||||
} else if (strTag[0].compare ("CPULoad") == 0) {
|
} else if (strTag[0].compare ("CPULoad") == 0) {
|
||||||
@@ -384,14 +384,14 @@ int32_t main (int32_t iArgC, char* pArgV[]) {
|
|||||||
|
|
||||||
if (!strcmp (cmd, "-options")) {
|
if (!strcmp (cmd, "-options")) {
|
||||||
if (i + 1 < iArgC)
|
if (i + 1 < iArgC)
|
||||||
strOptionFile = pArgV[i++];
|
strOptionFile = pArgV[++i];
|
||||||
else {
|
else {
|
||||||
printf ("options file not specified.\n");
|
printf ("options file not specified.\n");
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
} else if (!strcmp (cmd, "-trace")) {
|
} else if (!strcmp (cmd, "-trace")) {
|
||||||
if (i + 1 < iArgC)
|
if (i + 1 < iArgC)
|
||||||
WelsStderrSetTraceLevel (atoi (pArgV[i++]));
|
iLevelSetting = atoi (pArgV[++i]);
|
||||||
else {
|
else {
|
||||||
printf ("trace level not specified.\n");
|
printf ("trace level not specified.\n");
|
||||||
return 1;
|
return 1;
|
||||||
@@ -418,6 +418,9 @@ int32_t main (int32_t iArgC, char* pArgV[]) {
|
|||||||
printf ("Create Decoder failed.\n");
|
printf ("Create Decoder failed.\n");
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
if (iLevelSetting >= 0) {
|
||||||
|
pDecoder->SetOption (DECODER_OPTION_TRACE_LEVEL, &iLevelSetting);
|
||||||
|
}
|
||||||
|
|
||||||
if (pDecoder->Initialize (&sDecParam)) {
|
if (pDecoder->Initialize (&sDecParam)) {
|
||||||
printf ("Decoder initialization failed.\n");
|
printf ("Decoder initialization failed.\n");
|
||||||
|
|||||||
@@ -1,120 +0,0 @@
|
|||||||
/*!
|
|
||||||
* \copy
|
|
||||||
* Copyright (c) 2008-2013, Cisco Systems
|
|
||||||
* All rights reserved.
|
|
||||||
*
|
|
||||||
* Redistribution and use in source and binary forms, with or without
|
|
||||||
* modification, are permitted provided that the following conditions
|
|
||||||
* are met:
|
|
||||||
*
|
|
||||||
* * Redistributions of source code must retain the above copyright
|
|
||||||
* notice, this list of conditions and the following disclaimer.
|
|
||||||
*
|
|
||||||
* * Redistributions in binary form must reproduce the above copyright
|
|
||||||
* notice, this list of conditions and the following disclaimer in
|
|
||||||
* the documentation and/or other materials provided with the
|
|
||||||
* distribution.
|
|
||||||
*
|
|
||||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
|
||||||
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
|
||||||
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
|
|
||||||
* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
|
|
||||||
* COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
|
|
||||||
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
|
|
||||||
* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
|
||||||
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
|
|
||||||
* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
|
||||||
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
|
|
||||||
* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
|
||||||
* POSSIBILITY OF SUCH DAMAGE.
|
|
||||||
*
|
|
||||||
* read_config.h
|
|
||||||
*
|
|
||||||
* Abstract
|
|
||||||
* Class for reading parameter settings in a configure file.
|
|
||||||
*
|
|
||||||
* History
|
|
||||||
* 08/18/2008 Created
|
|
||||||
*
|
|
||||||
*****************************************************************************/
|
|
||||||
|
|
||||||
#define _CRT_SECURE_NO_WARNINGS
|
|
||||||
#include <string.h>
|
|
||||||
#include <stdio.h>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#include "read_config.h"
|
|
||||||
|
|
||||||
CReadConfig::CReadConfig (const char* kpConfigFileName)
|
|
||||||
: m_pCfgFile (0)
|
|
||||||
, m_strCfgFileName (kpConfigFileName)
|
|
||||||
, m_ulLines (0) {
|
|
||||||
if (strlen (kpConfigFileName) > 0) { // FIXME: To check validation in configure file name
|
|
||||||
m_pCfgFile = fopen (kpConfigFileName, "r");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
CReadConfig::~CReadConfig() {
|
|
||||||
if (m_pCfgFile) {
|
|
||||||
fclose (m_pCfgFile);
|
|
||||||
m_pCfgFile = NULL;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
long CReadConfig::ReadLine (string* pStr, const int kiValSize/* = 4*/) {
|
|
||||||
if (m_pCfgFile == NULL || pStr == NULL || kiValSize <= 1)
|
|
||||||
return 0;
|
|
||||||
|
|
||||||
string* strTags = &pStr[0];
|
|
||||||
int iTagNum = 0, iNum = 0;
|
|
||||||
bool bCommentFlag = false;
|
|
||||||
|
|
||||||
while (iNum < kiValSize) {
|
|
||||||
pStr[iNum] = "";
|
|
||||||
++ iNum;
|
|
||||||
}
|
|
||||||
|
|
||||||
do {
|
|
||||||
const char kChar = (char)fgetc (m_pCfgFile);
|
|
||||||
|
|
||||||
if (kChar == '\n' || feof (m_pCfgFile)) {
|
|
||||||
++ m_ulLines;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
if (kChar == '#')
|
|
||||||
bCommentFlag = true;
|
|
||||||
if (!bCommentFlag) {
|
|
||||||
if (kChar == '\t' || kChar == ' ') {
|
|
||||||
if (iTagNum >= kiValSize)
|
|
||||||
break;
|
|
||||||
if (! (*strTags).empty()) {
|
|
||||||
++ iTagNum;
|
|
||||||
strTags = &pStr[iTagNum];
|
|
||||||
}
|
|
||||||
} else
|
|
||||||
*strTags += kChar;
|
|
||||||
}
|
|
||||||
|
|
||||||
} while (true);
|
|
||||||
|
|
||||||
return 1 + iTagNum;
|
|
||||||
}
|
|
||||||
|
|
||||||
const bool CReadConfig::EndOfFile() {
|
|
||||||
if (m_pCfgFile == NULL)
|
|
||||||
return true;
|
|
||||||
return feof (m_pCfgFile) ? true : false;
|
|
||||||
}
|
|
||||||
|
|
||||||
const int CReadConfig::GetLines() {
|
|
||||||
return m_ulLines;
|
|
||||||
}
|
|
||||||
|
|
||||||
const bool CReadConfig::ExistFile() {
|
|
||||||
return (m_pCfgFile != NULL);
|
|
||||||
}
|
|
||||||
|
|
||||||
const string& CReadConfig::GetFileName() {
|
|
||||||
return m_strCfgFileName;
|
|
||||||
}
|
|
||||||
@@ -2,7 +2,6 @@ H264DEC_SRCDIR=codec/console/dec
|
|||||||
H264DEC_CPP_SRCS=\
|
H264DEC_CPP_SRCS=\
|
||||||
$(H264DEC_SRCDIR)/src/d3d9_utils.cpp\
|
$(H264DEC_SRCDIR)/src/d3d9_utils.cpp\
|
||||||
$(H264DEC_SRCDIR)/src/h264dec.cpp\
|
$(H264DEC_SRCDIR)/src/h264dec.cpp\
|
||||||
$(H264DEC_SRCDIR)/src/read_config.cpp\
|
|
||||||
|
|
||||||
H264DEC_OBJS += $(H264DEC_CPP_SRCS:.cpp=.$(OBJ))
|
H264DEC_OBJS += $(H264DEC_CPP_SRCS:.cpp=.$(OBJ))
|
||||||
|
|
||||||
|
|||||||
@@ -1,77 +0,0 @@
|
|||||||
/*!
|
|
||||||
* \copy
|
|
||||||
* Copyright (c) 2008-2013, Cisco Systems
|
|
||||||
* All rights reserved.
|
|
||||||
*
|
|
||||||
* Redistribution and use in source and binary forms, with or without
|
|
||||||
* modification, are permitted provided that the following conditions
|
|
||||||
* are met:
|
|
||||||
*
|
|
||||||
* * Redistributions of source code must retain the above copyright
|
|
||||||
* notice, this list of conditions and the following disclaimer.
|
|
||||||
*
|
|
||||||
* * Redistributions in binary form must reproduce the above copyright
|
|
||||||
* notice, this list of conditions and the following disclaimer in
|
|
||||||
* the documentation and/or other materials provided with the
|
|
||||||
* distribution.
|
|
||||||
*
|
|
||||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
|
||||||
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
|
||||||
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
|
|
||||||
* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
|
|
||||||
* COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
|
|
||||||
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
|
|
||||||
* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
|
||||||
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
|
|
||||||
* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
|
||||||
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
|
|
||||||
* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
|
||||||
* POSSIBILITY OF SUCH DAMAGE.
|
|
||||||
*
|
|
||||||
* read_config.h
|
|
||||||
*
|
|
||||||
* Abstract
|
|
||||||
* Class for reading parameter settings in a configure file.
|
|
||||||
*
|
|
||||||
* History
|
|
||||||
* 08/18/2008 Created
|
|
||||||
*
|
|
||||||
*****************************************************************************/
|
|
||||||
#ifndef READ_CONFIG_H__
|
|
||||||
#define READ_CONFIG_H__
|
|
||||||
|
|
||||||
#include <stdlib.h>
|
|
||||||
#include <string>
|
|
||||||
#include "wels_const.h"
|
|
||||||
using namespace std;
|
|
||||||
|
|
||||||
typedef struct tagFilesSet {
|
|
||||||
string strBsFile;
|
|
||||||
string strSeqFile; // for cmd lines
|
|
||||||
string strLayerCfgFile[MAX_DEPENDENCY_LAYER];
|
|
||||||
char sRecFileName[MAX_DEPENDENCY_LAYER][MAX_FNAME_LEN];
|
|
||||||
} SFilesSet;
|
|
||||||
|
|
||||||
|
|
||||||
class CReadConfig {
|
|
||||||
public:
|
|
||||||
CReadConfig();
|
|
||||||
CReadConfig (const char* pConfigFileName);
|
|
||||||
CReadConfig (const string& pConfigFileName);
|
|
||||||
virtual ~CReadConfig();
|
|
||||||
|
|
||||||
void Openf (const char* strFile);
|
|
||||||
long ReadLine (string* strVal, const int iValSize = 4);
|
|
||||||
const bool EndOfFile();
|
|
||||||
const int GetLines();
|
|
||||||
const bool ExistFile();
|
|
||||||
const string& GetFileName();
|
|
||||||
|
|
||||||
private:
|
|
||||||
FILE* m_pCfgFile;
|
|
||||||
string m_strCfgFileName;
|
|
||||||
unsigned long m_iLines;
|
|
||||||
};
|
|
||||||
|
|
||||||
#endif // READ_CONFIG_H__
|
|
||||||
|
|
||||||
@@ -67,12 +67,11 @@
|
|||||||
#include "extern.h"
|
#include "extern.h"
|
||||||
#include "macros.h"
|
#include "macros.h"
|
||||||
#include "wels_const.h"
|
#include "wels_const.h"
|
||||||
#include "logging.h"
|
|
||||||
|
|
||||||
#include "mt_defs.h"
|
#include "mt_defs.h"
|
||||||
#include "WelsThreadLib.h"
|
#include "WelsThreadLib.h"
|
||||||
|
|
||||||
#ifdef WIN32
|
#ifdef _WIN32
|
||||||
#ifdef WINAPI_FAMILY
|
#ifdef WINAPI_FAMILY
|
||||||
#include <winapifamily.h>
|
#include <winapifamily.h>
|
||||||
#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
|
#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
|
||||||
@@ -81,7 +80,7 @@
|
|||||||
#else /* defined(WINAPI_FAMILY) */
|
#else /* defined(WINAPI_FAMILY) */
|
||||||
#define HAVE_PROCESS_AFFINITY
|
#define HAVE_PROCESS_AFFINITY
|
||||||
#endif
|
#endif
|
||||||
#endif /* WIN32 */
|
#endif /* _WIN32 */
|
||||||
|
|
||||||
#include <iostream>
|
#include <iostream>
|
||||||
using namespace std;
|
using namespace std;
|
||||||
@@ -95,6 +94,13 @@ typedef struct LayerpEncCtx_s {
|
|||||||
SSliceConfig sSliceCfg;
|
SSliceConfig sSliceCfg;
|
||||||
} SLayerPEncCtx;
|
} SLayerPEncCtx;
|
||||||
|
|
||||||
|
typedef struct tagFilesSet {
|
||||||
|
string strBsFile;
|
||||||
|
string strSeqFile; // for cmd lines
|
||||||
|
string strLayerCfgFile[MAX_DEPENDENCY_LAYER];
|
||||||
|
char sRecFileName[MAX_DEPENDENCY_LAYER][MAX_FNAME_LEN];
|
||||||
|
} SFilesSet;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/* Ctrl-C handler */
|
/* Ctrl-C handler */
|
||||||
@@ -102,7 +108,7 @@ static int g_iCtrlC = 0;
|
|||||||
static void SigIntHandler (int a) {
|
static void SigIntHandler (int a) {
|
||||||
g_iCtrlC = 1;
|
g_iCtrlC = 1;
|
||||||
}
|
}
|
||||||
static int g_LevelSetting = 0;
|
static int g_LevelSetting = -1;
|
||||||
|
|
||||||
int ParseLayerConfig (CReadConfig& cRdLayerCfg, const int iLayer, SEncParamExt& pSvcParam, SFilesSet& sFileSet) {
|
int ParseLayerConfig (CReadConfig& cRdLayerCfg, const int iLayer, SEncParamExt& pSvcParam, SFilesSet& sFileSet) {
|
||||||
if (!cRdLayerCfg.ExistFile()) {
|
if (!cRdLayerCfg.ExistFile()) {
|
||||||
@@ -117,7 +123,7 @@ int ParseLayerConfig (CReadConfig& cRdLayerCfg, const int iLayer, SEncParamExt&
|
|||||||
|
|
||||||
string strTag[4];
|
string strTag[4];
|
||||||
string str_ ("SlicesAssign");
|
string str_ ("SlicesAssign");
|
||||||
const int kiSize = str_.size();
|
const int kiSize = (int)str_.size();
|
||||||
|
|
||||||
while (!cRdLayerCfg.EndOfFile()) {
|
while (!cRdLayerCfg.EndOfFile()) {
|
||||||
long iLayerRd = cRdLayerCfg.ReadLine (&strTag[0]);
|
long iLayerRd = cRdLayerCfg.ReadLine (&strTag[0]);
|
||||||
@@ -131,7 +137,7 @@ int ParseLayerConfig (CReadConfig& cRdLayerCfg, const int iLayer, SEncParamExt&
|
|||||||
} else if (strTag[0].compare ("FrameRateOut") == 0) {
|
} else if (strTag[0].compare ("FrameRateOut") == 0) {
|
||||||
pDLayer->fFrameRate = (float)atof (strTag[1].c_str());
|
pDLayer->fFrameRate = (float)atof (strTag[1].c_str());
|
||||||
} else if (strTag[0].compare ("ReconFile") == 0) {
|
} else if (strTag[0].compare ("ReconFile") == 0) {
|
||||||
const unsigned int kiLen = strTag[1].length();
|
const unsigned int kiLen = (unsigned int)strTag[1].length();
|
||||||
if (kiLen >= sizeof (sFileSet.sRecFileName[iLayer]))
|
if (kiLen >= sizeof (sFileSet.sRecFileName[iLayer]))
|
||||||
return -1;
|
return -1;
|
||||||
sFileSet.sRecFileName[iLayer][kiLen] = '\0';
|
sFileSet.sRecFileName[iLayer][kiLen] = '\0';
|
||||||
@@ -154,6 +160,19 @@ int ParseLayerConfig (CReadConfig& cRdLayerCfg, const int iLayer, SEncParamExt&
|
|||||||
}
|
}
|
||||||
iLeftTargetBitrate -= pDLayer->iSpatialBitrate;
|
iLeftTargetBitrate -= pDLayer->iSpatialBitrate;
|
||||||
}
|
}
|
||||||
|
} else if (strTag[0].compare ("MaxSpatialBitrate") == 0) {
|
||||||
|
pDLayer->iMaxSpatialBitrate = 1000 * atoi (strTag[1].c_str());
|
||||||
|
if (pSvcParam.iRCMode != RC_OFF_MODE) {
|
||||||
|
if (pDLayer->iMaxSpatialBitrate < 0) {
|
||||||
|
fprintf (stderr, "Invalid max spatial bitrate(%d) in dependency layer #%d.\n", pDLayer->iMaxSpatialBitrate, iLayer);
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
if (pDLayer->iMaxSpatialBitrate > 0 && pDLayer->iMaxSpatialBitrate < pDLayer->iSpatialBitrate) {
|
||||||
|
fprintf (stderr, "Invalid max spatial(#%d) bitrate(%d) setting::: < layerBitrate(%d)!\n", iLayer,
|
||||||
|
pDLayer->iMaxSpatialBitrate, pDLayer->iSpatialBitrate);
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
}
|
||||||
} else if (strTag[0].compare ("InitialQP") == 0) {
|
} else if (strTag[0].compare ("InitialQP") == 0) {
|
||||||
sLayerCtx.iDLayerQp = atoi (strTag[1].c_str());
|
sLayerCtx.iDLayerQp = atoi (strTag[1].c_str());
|
||||||
} else if (strTag[0].compare ("SliceMode") == 0) {
|
} else if (strTag[0].compare ("SliceMode") == 0) {
|
||||||
@@ -185,8 +204,6 @@ int ParseConfig (CReadConfig& cRdCfg, SSourcePicture* pSrcPic, SEncParamExt& pSv
|
|||||||
int32_t iRet = 0;
|
int32_t iRet = 0;
|
||||||
int8_t iLayerCount = 0;
|
int8_t iLayerCount = 0;
|
||||||
|
|
||||||
// memset(&pSvcParam, 0, sizeof(WelsSVCParamConfig));
|
|
||||||
|
|
||||||
while (!cRdCfg.EndOfFile()) {
|
while (!cRdCfg.EndOfFile()) {
|
||||||
long iRd = cRdCfg.ReadLine (&strTag[0]);
|
long iRd = cRdCfg.ReadLine (&strTag[0]);
|
||||||
if (iRd > 0) {
|
if (iRd > 0) {
|
||||||
@@ -212,6 +229,8 @@ int ParseConfig (CReadConfig& cRdCfg, SSourcePicture* pSrcPic, SEncParamExt& pSv
|
|||||||
pSvcParam.iTemporalLayerNum = atoi (strTag[1].c_str());
|
pSvcParam.iTemporalLayerNum = atoi (strTag[1].c_str());
|
||||||
} else if (strTag[0].compare ("IntraPeriod") == 0) {
|
} else if (strTag[0].compare ("IntraPeriod") == 0) {
|
||||||
pSvcParam.uiIntraPeriod = atoi (strTag[1].c_str());
|
pSvcParam.uiIntraPeriod = atoi (strTag[1].c_str());
|
||||||
|
} else if (strTag[0].compare ("MaxNalSize") == 0) {
|
||||||
|
pSvcParam.uiMaxNalSize = atoi (strTag[1].c_str());
|
||||||
} else if (strTag[0].compare ("EnableSpsPpsIDAddition") == 0) {
|
} else if (strTag[0].compare ("EnableSpsPpsIDAddition") == 0) {
|
||||||
pSvcParam.bEnableSpsPpsIdAddition = atoi (strTag[1].c_str()) ? true : false;
|
pSvcParam.bEnableSpsPpsIdAddition = atoi (strTag[1].c_str()) ? true : false;
|
||||||
} else if (strTag[0].compare ("EnableScalableSEI") == 0) {
|
} else if (strTag[0].compare ("EnableScalableSEI") == 0) {
|
||||||
@@ -252,6 +271,12 @@ int ParseConfig (CReadConfig& cRdCfg, SSourcePicture* pSrcPic, SEncParamExt& pSv
|
|||||||
fprintf (stderr, "Invalid target bitrate setting due to RC enabled. Check TargetBitrate field please!\n");
|
fprintf (stderr, "Invalid target bitrate setting due to RC enabled. Check TargetBitrate field please!\n");
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
} else if (strTag[0].compare ("MaxOverallBitrate") == 0) {
|
||||||
|
pSvcParam.iMaxBitrate = 1000 * atoi (strTag[1].c_str());
|
||||||
|
if ((pSvcParam.iRCMode != RC_OFF_MODE) && pSvcParam.iMaxBitrate < 0) {
|
||||||
|
fprintf (stderr, "Invalid max overall bitrate setting due to RC enabled. Check MaxOverallBitrate field please!\n");
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
} else if (strTag[0].compare ("EnableDenoise") == 0) {
|
} else if (strTag[0].compare ("EnableDenoise") == 0) {
|
||||||
pSvcParam.bEnableDenoise = atoi (strTag[1].c_str()) ? true : false;
|
pSvcParam.bEnableDenoise = atoi (strTag[1].c_str()) ? true : false;
|
||||||
} else if (strTag[0].compare ("EnableSceneChangeDetection") == 0) {
|
} else if (strTag[0].compare ("EnableSceneChangeDetection") == 0) {
|
||||||
@@ -310,70 +335,6 @@ int ParseConfig (CReadConfig& cRdCfg, SSourcePicture* pSrcPic, SEncParamExt& pSv
|
|||||||
return iRet;
|
return iRet;
|
||||||
}
|
}
|
||||||
|
|
||||||
int ParseCommandLine (int argc, char** argv, SEncParamExt& sParam) {
|
|
||||||
char* pCmd;
|
|
||||||
int i = 0;
|
|
||||||
|
|
||||||
while (i < argc) {
|
|
||||||
pCmd = argv[i++];
|
|
||||||
|
|
||||||
if (!strcmp (pCmd, "-numl") && (i < argc))
|
|
||||||
sParam.iSpatialLayerNum = atoi (argv[i++]);
|
|
||||||
|
|
||||||
else if (!strcmp (pCmd, "-numt") && (i < argc))
|
|
||||||
sParam.iTemporalLayerNum = atoi (argv[i++]);
|
|
||||||
|
|
||||||
else if (!strcmp (pCmd, "-iper") && (i < argc))
|
|
||||||
sParam.uiIntraPeriod = atoi (argv[i++]);
|
|
||||||
|
|
||||||
else if (!strcmp (pCmd, "-spsid") && (i < argc))
|
|
||||||
sParam.bEnableSpsPpsIdAddition = atoi (argv[i++]) ? true : false;
|
|
||||||
|
|
||||||
else if (!strcmp (pCmd, "-denois") && (i < argc))
|
|
||||||
sParam.bEnableDenoise = atoi (argv[i++]) ? true : false;
|
|
||||||
|
|
||||||
else if (!strcmp (pCmd, "-bgd") && (i < argc))
|
|
||||||
sParam.bEnableBackgroundDetection = atoi (argv[i++]) ? true : false;
|
|
||||||
|
|
||||||
else if (!strcmp (pCmd, "-aq") && (i < argc))
|
|
||||||
sParam.bEnableAdaptiveQuant = atoi (argv[i++]) ? true : false;
|
|
||||||
|
|
||||||
else if (!strcmp (pCmd, "-fs") && (i < argc))
|
|
||||||
sParam.bEnableFrameSkip = atoi (argv[i++]) ? true : false;
|
|
||||||
|
|
||||||
else if (!strcmp (pCmd, "-ltr") && (i < argc))
|
|
||||||
sParam.bEnableLongTermReference = atoi (argv[i++]) ? true : false;
|
|
||||||
|
|
||||||
else if (!strcmp (pCmd, "-ltrnum") && (i < argc))
|
|
||||||
sParam.iLTRRefNum = atoi (argv[i++]);
|
|
||||||
|
|
||||||
else if (!strcmp (pCmd, "-ltrper") && (i < argc))
|
|
||||||
sParam.iLtrMarkPeriod = atoi (argv[i++]);
|
|
||||||
|
|
||||||
else if (!strcmp (pCmd, "-rcm") && (i < argc))
|
|
||||||
sParam.iRCMode = (RC_MODES) atoi (argv[i++]);
|
|
||||||
|
|
||||||
else if (!strcmp (pCmd, "-tarb") && (i < argc))
|
|
||||||
sParam.iTargetBitrate = atoi (argv[i++]);
|
|
||||||
|
|
||||||
else if (!strcmp (pCmd, "-ltarb") && (i + 1 < argc)) {
|
|
||||||
int iLayer = atoi (argv[i++]);
|
|
||||||
sParam.sSpatialLayers[iLayer].iSpatialBitrate = atoi (argv[i++]);
|
|
||||||
}
|
|
||||||
|
|
||||||
else if (!strcmp (pCmd, "-trace") && (i < argc))
|
|
||||||
g_LevelSetting = atoi (argv[i++]);
|
|
||||||
|
|
||||||
else if (!strcmp (pCmd, "-dw") && (i < argc))
|
|
||||||
sParam.iPicWidth = atoi (argv[i++]);
|
|
||||||
|
|
||||||
else if (!strcmp (pCmd, "-dh") && (i < argc))
|
|
||||||
sParam.iPicHeight = atoi (argv[i++]);
|
|
||||||
}
|
|
||||||
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
void PrintHelp() {
|
void PrintHelp() {
|
||||||
printf ("\n Wels SVC Encoder Usage:\n\n");
|
printf ("\n Wels SVC Encoder Usage:\n\n");
|
||||||
printf (" Syntax: welsenc.exe -h\n");
|
printf (" Syntax: welsenc.exe -h\n");
|
||||||
@@ -388,6 +349,7 @@ void PrintHelp() {
|
|||||||
printf (" -frms Number of total frames to be encoded\n");
|
printf (" -frms Number of total frames to be encoded\n");
|
||||||
printf (" -gop GOPSize - GOP size (1,2,4,8, default: 1)\n");
|
printf (" -gop GOPSize - GOP size (1,2,4,8, default: 1)\n");
|
||||||
printf (" -iper Intra period (default: -1) : must be a power of 2 of GOP size (or -1)\n");
|
printf (" -iper Intra period (default: -1) : must be a power of 2 of GOP size (or -1)\n");
|
||||||
|
printf (" -nalsize the Maximum NAL size. which should be larger than the each layer slicesize when slice mode equals to SM_DYN_SLICE\n");
|
||||||
printf (" -spsid Enable id adding in SPS/PPS per IDR \n");
|
printf (" -spsid Enable id adding in SPS/PPS per IDR \n");
|
||||||
printf (" -denois Control denoising (default: 0)\n");
|
printf (" -denois Control denoising (default: 0)\n");
|
||||||
printf (" -scene Control scene change detection (default: 0)\n");
|
printf (" -scene Control scene change detection (default: 0)\n");
|
||||||
@@ -395,16 +357,23 @@ void PrintHelp() {
|
|||||||
printf (" -aq Control adaptive quantization (default: 0)\n");
|
printf (" -aq Control adaptive quantization (default: 0)\n");
|
||||||
printf (" -ltr Control long term reference (default: 0)\n");
|
printf (" -ltr Control long term reference (default: 0)\n");
|
||||||
printf (" -ltrnum Control the number of long term reference((1-4):screen LTR,(1-2):video LTR \n");
|
printf (" -ltrnum Control the number of long term reference((1-4):screen LTR,(1-2):video LTR \n");
|
||||||
|
printf (" -threadIdc 0: auto(dynamic imp. internal encoder); 1: multiple threads imp. disabled; > 1: count number of threads \n");
|
||||||
|
printf (" -deblockIdc Loop filter idc (0: on, 1: off, \n");
|
||||||
|
printf (" -alphaOffset AlphaOffset(-6..+6): valid range \n");
|
||||||
|
printf (" -betaOffset BetaOffset (-6..+6): valid range\n");
|
||||||
printf (" -rc rate control mode: 0-quality mode; 1-bitrate mode; 2-bitrate limited mode; -1-rc off \n");
|
printf (" -rc rate control mode: 0-quality mode; 1-bitrate mode; 2-bitrate limited mode; -1-rc off \n");
|
||||||
printf (" -tarb Overall target bitrate\n");
|
printf (" -tarb Overall target bitrate\n");
|
||||||
|
printf (" -maxbrTotal Overall max bitrate\n");
|
||||||
printf (" -numl Number Of Layers: Must exist with layer_cfg file and the number of input layer_cfg file must equal to the value set by this command\n");
|
printf (" -numl Number Of Layers: Must exist with layer_cfg file and the number of input layer_cfg file must equal to the value set by this command\n");
|
||||||
printf (" The options below are layer-based: (need to be set with layer id)\n");
|
printf (" The options below are layer-based: (need to be set with layer id)\n");
|
||||||
|
printf (" -lconfig (Layer) (spatial layer configure file)\n");
|
||||||
printf (" -drec (Layer) (reconstruction file);example: -drec 0 rec.yuv. Setting the reconstruction file, this will only functioning when dumping reconstruction is enabled\n");
|
printf (" -drec (Layer) (reconstruction file);example: -drec 0 rec.yuv. Setting the reconstruction file, this will only functioning when dumping reconstruction is enabled\n");
|
||||||
printf (" -dw (Layer) (output width)\n");
|
printf (" -dw (Layer) (output width)\n");
|
||||||
printf (" -dh (Layer) (output height)\n");
|
printf (" -dh (Layer) (output height)\n");
|
||||||
printf (" -frout (Layer) (output frame rate)\n");
|
printf (" -frout (Layer) (output frame rate)\n");
|
||||||
printf (" -lqp (Layer) (base quality layer qp : must work with -ldeltaqp or -lqparr)\n");
|
printf (" -lqp (Layer) (base quality layer qp : must work with -ldeltaqp or -lqparr)\n");
|
||||||
printf (" -ltarb (Layer) (spatial layer target bitrate)\n");
|
printf (" -ltarb (Layer) (spatial layer target bitrate)\n");
|
||||||
|
printf (" -lmaxb (Layer) (spatial layer max bitrate)\n");
|
||||||
printf (" -slcmd (Layer) (spatial layer slice mode): pls refer to layerX.cfg for details ( -slcnum: set target slice num; -slcsize: set target slice size constraint ) \n");
|
printf (" -slcmd (Layer) (spatial layer slice mode): pls refer to layerX.cfg for details ( -slcnum: set target slice num; -slcsize: set target slice size constraint ) \n");
|
||||||
printf (" -trace (Level)\n");
|
printf (" -trace (Level)\n");
|
||||||
printf ("\n");
|
printf ("\n");
|
||||||
@@ -442,6 +411,9 @@ int ParseCommandLine (int argc, char** argv, SSourcePicture* pSrcPic, SEncParamE
|
|||||||
else if (!strcmp (pCommand, "-iper") && (n < argc))
|
else if (!strcmp (pCommand, "-iper") && (n < argc))
|
||||||
pSvcParam.uiIntraPeriod = atoi (argv[n++]);
|
pSvcParam.uiIntraPeriod = atoi (argv[n++]);
|
||||||
|
|
||||||
|
else if (!strcmp (pCommand, "-nalsize") && (n < argc))
|
||||||
|
pSvcParam.uiMaxNalSize = atoi (argv[n++]);
|
||||||
|
|
||||||
else if (!strcmp (pCommand, "-spsid") && (n < argc))
|
else if (!strcmp (pCommand, "-spsid") && (n < argc))
|
||||||
pSvcParam.bEnableSpsPpsIdAddition = atoi (argv[n++]) ? true : false;
|
pSvcParam.bEnableSpsPpsIdAddition = atoi (argv[n++]) ? true : false;
|
||||||
|
|
||||||
@@ -469,6 +441,18 @@ int ParseCommandLine (int argc, char** argv, SSourcePicture* pSrcPic, SEncParamE
|
|||||||
else if (!strcmp (pCommand, "-ltrper") && (n < argc))
|
else if (!strcmp (pCommand, "-ltrper") && (n < argc))
|
||||||
pSvcParam.iLtrMarkPeriod = atoi (argv[n++]);
|
pSvcParam.iLtrMarkPeriod = atoi (argv[n++]);
|
||||||
|
|
||||||
|
else if (!strcmp (pCommand, "-threadIdc") && (n < argc))
|
||||||
|
pSvcParam.iMultipleThreadIdc = atoi (argv[n++]);
|
||||||
|
|
||||||
|
else if (!strcmp (pCommand, "-deblockIdc") && (n < argc))
|
||||||
|
pSvcParam.iLoopFilterDisableIdc = atoi (argv[n++]);
|
||||||
|
|
||||||
|
else if (!strcmp (pCommand, "-alphaOffset") && (n < argc))
|
||||||
|
pSvcParam.iLoopFilterAlphaC0Offset = atoi (argv[n++]);
|
||||||
|
|
||||||
|
else if (!strcmp (pCommand, "-betaOffset") && (n < argc))
|
||||||
|
pSvcParam.iLoopFilterBetaOffset = atoi (argv[n++]);
|
||||||
|
|
||||||
else if (!strcmp (pCommand, "-rc") && (n < argc))
|
else if (!strcmp (pCommand, "-rc") && (n < argc))
|
||||||
pSvcParam.iRCMode = static_cast<RC_MODES> (atoi (argv[n++]));
|
pSvcParam.iRCMode = static_cast<RC_MODES> (atoi (argv[n++]));
|
||||||
|
|
||||||
@@ -476,24 +460,23 @@ int ParseCommandLine (int argc, char** argv, SSourcePicture* pSrcPic, SEncParamE
|
|||||||
g_LevelSetting = atoi (argv[n++]);
|
g_LevelSetting = atoi (argv[n++]);
|
||||||
|
|
||||||
else if (!strcmp (pCommand, "-tarb") && (n < argc))
|
else if (!strcmp (pCommand, "-tarb") && (n < argc))
|
||||||
pSvcParam.iTargetBitrate = atoi (argv[n++]);
|
pSvcParam.iTargetBitrate = 1000 * atoi (argv[n++]);
|
||||||
|
|
||||||
|
else if (!strcmp (pCommand, "-maxbrTotal") && (n < argc))
|
||||||
|
pSvcParam.iMaxBitrate = 1000 * atoi (argv[n++]);
|
||||||
|
|
||||||
else if (!strcmp (pCommand, "-numl") && (n < argc)) {
|
else if (!strcmp (pCommand, "-numl") && (n < argc)) {
|
||||||
pSvcParam.iSpatialLayerNum = atoi (argv[n++]);
|
pSvcParam.iSpatialLayerNum = atoi (argv[n++]);
|
||||||
for (int ln = 0 ; (ln < pSvcParam.iSpatialLayerNum) && (n < argc) ; ln++) {
|
} else if (!strcmp (pCommand, "-lconfig") && (n < argc)) {
|
||||||
// pSvcParam.sDependencyLayers[ln].uiDependencyId = ln;
|
unsigned int iLayer = atoi (argv[n++]);
|
||||||
sFileSet.strLayerCfgFile[ln].assign (argv[n++]);
|
sFileSet.strLayerCfgFile[iLayer].assign (argv[n++]);
|
||||||
}
|
|
||||||
|
|
||||||
for (int8_t iLayer = 0; iLayer < pSvcParam.iSpatialLayerNum; ++ iLayer) {
|
|
||||||
CReadConfig cRdLayerCfg (sFileSet.strLayerCfgFile[iLayer]);
|
CReadConfig cRdLayerCfg (sFileSet.strLayerCfgFile[iLayer]);
|
||||||
if (-1 == ParseLayerConfig (cRdLayerCfg, iLayer, pSvcParam, sFileSet)) {
|
if (-1 == ParseLayerConfig (cRdLayerCfg, iLayer, pSvcParam, sFileSet)) {
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
}
|
|
||||||
} else if (!strcmp (pCommand, "-drec") && (n + 1 < argc)) {
|
} else if (!strcmp (pCommand, "-drec") && (n + 1 < argc)) {
|
||||||
unsigned int iLayer = atoi (argv[n++]);
|
unsigned int iLayer = atoi (argv[n++]);
|
||||||
const unsigned int iLen = strlen (argv[n]);
|
const unsigned int iLen = (int) strlen (argv[n]);
|
||||||
if (iLen >= sizeof (sFileSet.sRecFileName[iLayer]))
|
if (iLen >= sizeof (sFileSet.sRecFileName[iLayer]))
|
||||||
return 1;
|
return 1;
|
||||||
sFileSet.sRecFileName[iLayer][iLen] = '\0';
|
sFileSet.sRecFileName[iLayer][iLen] = '\0';
|
||||||
@@ -529,6 +512,12 @@ int ParseCommandLine (int argc, char** argv, SSourcePicture* pSrcPic, SEncParamE
|
|||||||
pDLayer->iSpatialBitrate = 1000 * atoi (argv[n++]);
|
pDLayer->iSpatialBitrate = 1000 * atoi (argv[n++]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
else if (!strcmp (pCommand, "-lmaxb") && (n + 1 < argc)) {
|
||||||
|
unsigned int iLayer = atoi (argv[n++]);
|
||||||
|
SSpatialLayerConfig* pDLayer = &pSvcParam.sSpatialLayers[iLayer];
|
||||||
|
pDLayer->iMaxSpatialBitrate = 1000 * atoi (argv[n++]);
|
||||||
|
}
|
||||||
|
|
||||||
else if (!strcmp (pCommand, "-slcmd") && (n + 1 < argc)) {
|
else if (!strcmp (pCommand, "-slcmd") && (n + 1 < argc)) {
|
||||||
unsigned int iLayer = atoi (argv[n++]);
|
unsigned int iLayer = atoi (argv[n++]);
|
||||||
SSpatialLayerConfig* pDLayer = &pSvcParam.sSpatialLayers[iLayer];
|
SSpatialLayerConfig* pDLayer = &pSvcParam.sSpatialLayers[iLayer];
|
||||||
@@ -582,6 +571,7 @@ int FillSpecificParameters (SEncParamExt& sParam) {
|
|||||||
sParam.iPicWidth = 1280; // width of picture in samples
|
sParam.iPicWidth = 1280; // width of picture in samples
|
||||||
sParam.iPicHeight = 720; // height of picture in samples
|
sParam.iPicHeight = 720; // height of picture in samples
|
||||||
sParam.iTargetBitrate = 2500000; // target bitrate desired
|
sParam.iTargetBitrate = 2500000; // target bitrate desired
|
||||||
|
sParam.iMaxBitrate = MAX_BIT_RATE;
|
||||||
sParam.iRCMode = RC_QUALITY_MODE; // rc mode control
|
sParam.iRCMode = RC_QUALITY_MODE; // rc mode control
|
||||||
sParam.iTemporalLayerNum = 3; // layer number at temporal level
|
sParam.iTemporalLayerNum = 3; // layer number at temporal level
|
||||||
sParam.iSpatialLayerNum = 4; // layer number at spatial level
|
sParam.iSpatialLayerNum = 4; // layer number at spatial level
|
||||||
@@ -591,39 +581,46 @@ int FillSpecificParameters (SEncParamExt& sParam) {
|
|||||||
sParam.bEnableFrameSkip = 1; // frame skipping
|
sParam.bEnableFrameSkip = 1; // frame skipping
|
||||||
sParam.bEnableLongTermReference = 0; // long term reference control
|
sParam.bEnableLongTermReference = 0; // long term reference control
|
||||||
sParam.iLtrMarkPeriod = 30;
|
sParam.iLtrMarkPeriod = 30;
|
||||||
|
|
||||||
sParam.iInputCsp = videoFormatI420; // color space of input sequence
|
sParam.iInputCsp = videoFormatI420; // color space of input sequence
|
||||||
sParam.uiIntraPeriod = 320; // period of Intra frame
|
sParam.uiIntraPeriod = 320; // period of Intra frame
|
||||||
sParam.bEnableSpsPpsIdAddition = 1;
|
sParam.bEnableSpsPpsIdAddition = 1;
|
||||||
sParam.bPrefixNalAddingCtrl = 1;
|
sParam.bPrefixNalAddingCtrl = 0;
|
||||||
|
|
||||||
int iIndexLayer = 0;
|
int iIndexLayer = 0;
|
||||||
|
sParam.sSpatialLayers[iIndexLayer].uiProfileIdc = PRO_BASELINE;
|
||||||
sParam.sSpatialLayers[iIndexLayer].iVideoWidth = 160;
|
sParam.sSpatialLayers[iIndexLayer].iVideoWidth = 160;
|
||||||
sParam.sSpatialLayers[iIndexLayer].iVideoHeight = 90;
|
sParam.sSpatialLayers[iIndexLayer].iVideoHeight = 90;
|
||||||
sParam.sSpatialLayers[iIndexLayer].fFrameRate = 7.5f;
|
sParam.sSpatialLayers[iIndexLayer].fFrameRate = 7.5f;
|
||||||
sParam.sSpatialLayers[iIndexLayer].iSpatialBitrate = 64000;
|
sParam.sSpatialLayers[iIndexLayer].iSpatialBitrate = 64000;
|
||||||
|
sParam.sSpatialLayers[iIndexLayer].iMaxSpatialBitrate = MAX_BIT_RATE;
|
||||||
sParam.sSpatialLayers[iIndexLayer].sSliceCfg.uiSliceMode = SM_SINGLE_SLICE;
|
sParam.sSpatialLayers[iIndexLayer].sSliceCfg.uiSliceMode = SM_SINGLE_SLICE;
|
||||||
|
|
||||||
++ iIndexLayer;
|
++ iIndexLayer;
|
||||||
|
sParam.sSpatialLayers[iIndexLayer].uiProfileIdc = PRO_SCALABLE_BASELINE;
|
||||||
sParam.sSpatialLayers[iIndexLayer].iVideoWidth = 320;
|
sParam.sSpatialLayers[iIndexLayer].iVideoWidth = 320;
|
||||||
sParam.sSpatialLayers[iIndexLayer].iVideoHeight = 180;
|
sParam.sSpatialLayers[iIndexLayer].iVideoHeight = 180;
|
||||||
sParam.sSpatialLayers[iIndexLayer].fFrameRate = 15.0f;
|
sParam.sSpatialLayers[iIndexLayer].fFrameRate = 15.0f;
|
||||||
sParam.sSpatialLayers[iIndexLayer].iSpatialBitrate = 160000;
|
sParam.sSpatialLayers[iIndexLayer].iSpatialBitrate = 160000;
|
||||||
|
sParam.sSpatialLayers[iIndexLayer].iMaxSpatialBitrate = MAX_BIT_RATE;
|
||||||
sParam.sSpatialLayers[iIndexLayer].sSliceCfg.uiSliceMode = SM_SINGLE_SLICE;
|
sParam.sSpatialLayers[iIndexLayer].sSliceCfg.uiSliceMode = SM_SINGLE_SLICE;
|
||||||
|
|
||||||
++ iIndexLayer;
|
++ iIndexLayer;
|
||||||
|
sParam.sSpatialLayers[iIndexLayer].uiProfileIdc = PRO_SCALABLE_BASELINE;
|
||||||
sParam.sSpatialLayers[iIndexLayer].iVideoWidth = 640;
|
sParam.sSpatialLayers[iIndexLayer].iVideoWidth = 640;
|
||||||
sParam.sSpatialLayers[iIndexLayer].iVideoHeight = 360;
|
sParam.sSpatialLayers[iIndexLayer].iVideoHeight = 360;
|
||||||
sParam.sSpatialLayers[iIndexLayer].fFrameRate = 30.0f;
|
sParam.sSpatialLayers[iIndexLayer].fFrameRate = 30.0f;
|
||||||
sParam.sSpatialLayers[iIndexLayer].iSpatialBitrate = 512000;
|
sParam.sSpatialLayers[iIndexLayer].iSpatialBitrate = 512000;
|
||||||
|
sParam.sSpatialLayers[iIndexLayer].iMaxSpatialBitrate = MAX_BIT_RATE;
|
||||||
sParam.sSpatialLayers[iIndexLayer].sSliceCfg.uiSliceMode = SM_SINGLE_SLICE;
|
sParam.sSpatialLayers[iIndexLayer].sSliceCfg.uiSliceMode = SM_SINGLE_SLICE;
|
||||||
sParam.sSpatialLayers[iIndexLayer].sSliceCfg.sSliceArgument.uiSliceNum = 1;
|
sParam.sSpatialLayers[iIndexLayer].sSliceCfg.sSliceArgument.uiSliceNum = 1;
|
||||||
|
|
||||||
++ iIndexLayer;
|
++ iIndexLayer;
|
||||||
|
sParam.sSpatialLayers[iIndexLayer].uiProfileIdc = PRO_SCALABLE_BASELINE;
|
||||||
sParam.sSpatialLayers[iIndexLayer].iVideoWidth = 1280;
|
sParam.sSpatialLayers[iIndexLayer].iVideoWidth = 1280;
|
||||||
sParam.sSpatialLayers[iIndexLayer].iVideoHeight = 720;
|
sParam.sSpatialLayers[iIndexLayer].iVideoHeight = 720;
|
||||||
sParam.sSpatialLayers[iIndexLayer].fFrameRate = 30.0f;
|
sParam.sSpatialLayers[iIndexLayer].fFrameRate = 30.0f;
|
||||||
sParam.sSpatialLayers[iIndexLayer].iSpatialBitrate = 1500000;
|
sParam.sSpatialLayers[iIndexLayer].iSpatialBitrate = 1500000;
|
||||||
|
sParam.sSpatialLayers[iIndexLayer].iMaxSpatialBitrate = MAX_BIT_RATE;
|
||||||
sParam.sSpatialLayers[iIndexLayer].sSliceCfg.uiSliceMode = SM_SINGLE_SLICE;
|
sParam.sSpatialLayers[iIndexLayer].sSliceCfg.uiSliceMode = SM_SINGLE_SLICE;
|
||||||
sParam.sSpatialLayers[iIndexLayer].sSliceCfg.sSliceArgument.uiSliceNum = 1;
|
sParam.sSpatialLayers[iIndexLayer].sSliceCfg.sSliceArgument.uiSliceNum = 1;
|
||||||
|
|
||||||
@@ -637,174 +634,7 @@ int FillSpecificParameters (SEncParamExt& sParam) {
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* For SVC Demo test */
|
int ProcessEncoding (ISVCEncoder* pPtrEnc, int argc, char** argv, bool bConfigFile) {
|
||||||
int ProcessEncodingSvcWithParam (ISVCEncoder* pPtrEnc, int argc, char** argv) {
|
|
||||||
const char* kpSrcFile = argv[1];
|
|
||||||
const char* kpStrBsFile = argv[2];
|
|
||||||
|
|
||||||
if (pPtrEnc == NULL || kpSrcFile == NULL || kpStrBsFile == NULL)
|
|
||||||
return 1;
|
|
||||||
|
|
||||||
FILE* pFpBs = NULL;
|
|
||||||
FILE* pFpSrc = NULL;
|
|
||||||
SFrameBSInfo sFbi;
|
|
||||||
SEncParamExt sSvcParam;
|
|
||||||
int64_t iStart = 0, iTotal = 0;
|
|
||||||
int32_t ret = 0;
|
|
||||||
|
|
||||||
int32_t iPicLumaSize = 0;
|
|
||||||
int32_t iFrameSize = 0;
|
|
||||||
uint8_t* pPlanes[3] = { 0 };
|
|
||||||
int32_t iFrame = 0;
|
|
||||||
SSourcePicture* pSrcPic = NULL;
|
|
||||||
#if defined ( STICK_STREAM_SIZE )
|
|
||||||
FILE* fTrackStream = fopen ("coding_size.stream", "wb");;
|
|
||||||
#endif
|
|
||||||
|
|
||||||
pFpSrc = fopen (kpSrcFile, "rb");
|
|
||||||
if (NULL == pFpSrc)
|
|
||||||
return 1;
|
|
||||||
pFpBs = fopen (kpStrBsFile, "wb");
|
|
||||||
if (NULL == pFpBs) {
|
|
||||||
fclose (pFpSrc);
|
|
||||||
pFpSrc = NULL;
|
|
||||||
return 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
memset (&sFbi, 0, sizeof (SFrameBSInfo));
|
|
||||||
memset (&sSvcParam, 0, sizeof (SEncParamExt));
|
|
||||||
|
|
||||||
FillSpecificParameters (sSvcParam);
|
|
||||||
|
|
||||||
int iParsedNum = 3;
|
|
||||||
if (ParseCommandLine (argc - iParsedNum, argv + iParsedNum, sSvcParam) != 0) {
|
|
||||||
printf ("parse pCommand line failed\n");
|
|
||||||
ret = 1;
|
|
||||||
goto ERROR_RET;
|
|
||||||
}
|
|
||||||
pPtrEnc->SetOption (ENCODER_OPTION_TRACE_LEVEL, &g_LevelSetting);
|
|
||||||
if (cmResultSuccess != pPtrEnc->InitializeExt (&sSvcParam)) {
|
|
||||||
fprintf (stderr, "Encoder Initialization failed!\n");
|
|
||||||
ret = 1;
|
|
||||||
goto ERROR_RET;
|
|
||||||
}
|
|
||||||
iPicLumaSize = sSvcParam.iPicWidth * sSvcParam.iPicHeight;
|
|
||||||
switch (sSvcParam.iInputCsp) {
|
|
||||||
int iStride;
|
|
||||||
case videoFormatI420:
|
|
||||||
case videoFormatYV12:
|
|
||||||
iFrameSize = (3 * iPicLumaSize) >> 1;
|
|
||||||
pPlanes[0] = new uint8_t[iFrameSize];
|
|
||||||
pPlanes[1] = pPlanes[0] + iPicLumaSize;
|
|
||||||
pPlanes[2] = pPlanes[1] + (iPicLumaSize >> 2);
|
|
||||||
break;
|
|
||||||
case videoFormatYUY2:
|
|
||||||
case videoFormatYVYU:
|
|
||||||
case videoFormatUYVY:
|
|
||||||
iStride = CALC_BI_STRIDE (sSvcParam.iPicWidth, 16);
|
|
||||||
iFrameSize = iStride * sSvcParam.iPicHeight;
|
|
||||||
pPlanes[0] = new uint8_t[iFrameSize];
|
|
||||||
break;
|
|
||||||
case videoFormatRGB:
|
|
||||||
case videoFormatBGR:
|
|
||||||
iStride = CALC_BI_STRIDE (sSvcParam.iPicWidth, 24);
|
|
||||||
iFrameSize = iStride * sSvcParam.iPicHeight;
|
|
||||||
pPlanes[0] = new uint8_t[iFrameSize];
|
|
||||||
break;
|
|
||||||
case videoFormatBGRA:
|
|
||||||
case videoFormatRGBA:
|
|
||||||
case videoFormatARGB:
|
|
||||||
case videoFormatABGR:
|
|
||||||
iStride = 4 * sSvcParam.iPicWidth;
|
|
||||||
iFrameSize = iStride * sSvcParam.iPicHeight;
|
|
||||||
pPlanes[0] = new uint8_t[iFrameSize];
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
ret = 1;
|
|
||||||
goto ERROR_RET;
|
|
||||||
}
|
|
||||||
|
|
||||||
pSrcPic = new SSourcePicture;
|
|
||||||
if (pSrcPic == NULL) {
|
|
||||||
ret = 1;
|
|
||||||
goto ERROR_RET;
|
|
||||||
}
|
|
||||||
|
|
||||||
pSrcPic->iColorFormat = sSvcParam.iInputCsp;
|
|
||||||
pSrcPic->iPicHeight = sSvcParam.iPicHeight;
|
|
||||||
pSrcPic->iPicWidth = sSvcParam.iPicWidth;
|
|
||||||
pSrcPic->iStride[0] = sSvcParam.iPicWidth;
|
|
||||||
pSrcPic->iStride[1] = pSrcPic->iStride[2] = sSvcParam.iPicWidth >> 1;
|
|
||||||
|
|
||||||
pSrcPic->pData[0] = pPlanes[0];
|
|
||||||
pSrcPic->pData[1] = pSrcPic->pData[0] + (sSvcParam.iPicWidth * sSvcParam.iPicHeight);
|
|
||||||
pSrcPic->pData[2] = pSrcPic->pData[1] + (sSvcParam.iPicWidth * sSvcParam.iPicHeight >> 2);
|
|
||||||
|
|
||||||
while (true) {
|
|
||||||
if (feof (pFpSrc))
|
|
||||||
break;
|
|
||||||
#ifdef ONLY_ENC_FRAMES_NUM
|
|
||||||
if (iFrame >= ONLY_ENC_FRAMES_NUM)
|
|
||||||
break;
|
|
||||||
#endif//ONLY_ENC_FRAMES_NUM
|
|
||||||
if (fread (pPlanes[0], sizeof (uint8_t), iFrameSize, pFpSrc) <= 0)
|
|
||||||
break;
|
|
||||||
|
|
||||||
iStart = WelsTime();
|
|
||||||
long iEncode = pPtrEnc->EncodeFrame (pSrcPic, &sFbi);
|
|
||||||
iTotal += WelsTime() - iStart;
|
|
||||||
if (cmResultSuccess != iEncode) {
|
|
||||||
fprintf (stderr, "EncodeFrame() failed: %ld.\n", iEncode);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Write bit-stream */
|
|
||||||
if (pFpBs != NULL && videoFrameTypeSkip != sFbi.eOutputFrameType) { // file handler to write bit stream
|
|
||||||
int iLayer = 0;
|
|
||||||
while (iLayer < sFbi.iLayerNum) {
|
|
||||||
SLayerBSInfo* pLayerBsInfo = &sFbi.sLayerInfo[iLayer];
|
|
||||||
if (pLayerBsInfo != NULL) {
|
|
||||||
int iLayerSize = 0;
|
|
||||||
int iNalIdx = pLayerBsInfo->iNalCount - 1;
|
|
||||||
do {
|
|
||||||
iLayerSize += pLayerBsInfo->iNalLengthInByte[iNalIdx];
|
|
||||||
-- iNalIdx;
|
|
||||||
} while (iNalIdx >= 0);
|
|
||||||
fwrite (pLayerBsInfo->pBsBuf, 1, iLayerSize, pFpBs); // write pure bit stream into file
|
|
||||||
}
|
|
||||||
++ iLayer;
|
|
||||||
}
|
|
||||||
++ iFrame;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (iFrame > 0) {
|
|
||||||
double dElapsed = iTotal / 1e6;
|
|
||||||
printf ("Frames: %d\nencode time: %f sec\nFPS: %f fps\n", iFrame, dElapsed, (iFrame * 1.0) / dElapsed);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (NULL != pPlanes[0]) {
|
|
||||||
delete [] pPlanes[0];
|
|
||||||
pPlanes[0] = NULL;
|
|
||||||
}
|
|
||||||
ERROR_RET:
|
|
||||||
if (pFpBs) {
|
|
||||||
fclose (pFpBs);
|
|
||||||
pFpBs = NULL;
|
|
||||||
}
|
|
||||||
if (pFpSrc) {
|
|
||||||
fclose (pFpSrc);
|
|
||||||
pFpSrc = NULL;
|
|
||||||
}
|
|
||||||
if (pSrcPic) {
|
|
||||||
delete pSrcPic;
|
|
||||||
pSrcPic = NULL;
|
|
||||||
}
|
|
||||||
return ret;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
int ProcessEncodingSvcWithConfig (ISVCEncoder* pPtrEnc, int argc, char** argv) {
|
|
||||||
int iRet = 0;
|
int iRet = 0;
|
||||||
|
|
||||||
if (pPtrEnc == NULL)
|
if (pPtrEnc == NULL)
|
||||||
@@ -834,24 +664,13 @@ int ProcessEncodingSvcWithConfig (ISVCEncoder* pPtrEnc, int argc, char** argv) {
|
|||||||
SFilesSet fs;
|
SFilesSet fs;
|
||||||
// for configuration file
|
// for configuration file
|
||||||
CReadConfig cRdCfg;
|
CReadConfig cRdCfg;
|
||||||
int iParsedNum = 2;
|
int iParsedNum = 1;
|
||||||
|
|
||||||
memset (&sFbi, 0, sizeof (SFrameBSInfo));
|
memset (&sFbi, 0, sizeof (SFrameBSInfo));
|
||||||
memset (&sSvcParam, 0, sizeof (SEncParamExt));
|
pPtrEnc->GetDefaultParams (&sSvcParam);
|
||||||
memset (&fs.sRecFileName[0][0], 0, sizeof (fs.sRecFileName));
|
memset (&fs.sRecFileName[0][0], 0, sizeof (fs.sRecFileName));
|
||||||
sSvcParam.iInputCsp = videoFormatI420; // I420 in default
|
|
||||||
sSvcParam.sSpatialLayers[0].uiProfileIdc = PRO_BASELINE;
|
|
||||||
// svc_cfg->sDependencyLayers[0].frext_mode = 0;
|
|
||||||
|
|
||||||
// for configuration file
|
|
||||||
cRdCfg.Openf (argv[1]);
|
|
||||||
if (!cRdCfg.ExistFile()) {
|
|
||||||
fprintf (stderr, "Specified file: %s not exist, maybe invalid path or parameter settting.\n",
|
|
||||||
cRdCfg.GetFileName().c_str());
|
|
||||||
iRet = 1;
|
|
||||||
goto INSIDE_MEM_FREE;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
FillSpecificParameters (sSvcParam);
|
||||||
pSrcPic = new SSourcePicture;
|
pSrcPic = new SSourcePicture;
|
||||||
if (pSrcPic == NULL) {
|
if (pSrcPic == NULL) {
|
||||||
iRet = 1;
|
iRet = 1;
|
||||||
@@ -860,19 +679,32 @@ int ProcessEncodingSvcWithConfig (ISVCEncoder* pPtrEnc, int argc, char** argv) {
|
|||||||
//fill default pSrcPic
|
//fill default pSrcPic
|
||||||
pSrcPic->iColorFormat = videoFormatI420;
|
pSrcPic->iColorFormat = videoFormatI420;
|
||||||
pSrcPic->uiTimeStamp = 0;
|
pSrcPic->uiTimeStamp = 0;
|
||||||
|
|
||||||
|
// if configure file exit, reading configure file firstly
|
||||||
|
if (bConfigFile) {
|
||||||
|
iParsedNum = 2;
|
||||||
|
cRdCfg.Openf (argv[1]);
|
||||||
|
if (!cRdCfg.ExistFile()) {
|
||||||
|
fprintf (stderr, "Specified file: %s not exist, maybe invalid path or parameter settting.\n",
|
||||||
|
cRdCfg.GetFileName().c_str());
|
||||||
|
iRet = 1;
|
||||||
|
goto INSIDE_MEM_FREE;
|
||||||
|
}
|
||||||
iRet = ParseConfig (cRdCfg, pSrcPic, sSvcParam, fs);
|
iRet = ParseConfig (cRdCfg, pSrcPic, sSvcParam, fs);
|
||||||
if (iRet) {
|
if (iRet) {
|
||||||
fprintf (stderr, "parse svc parameter config file failed.\n");
|
fprintf (stderr, "parse svc parameter config file failed.\n");
|
||||||
iRet = 1;
|
iRet = 1;
|
||||||
goto INSIDE_MEM_FREE;
|
goto INSIDE_MEM_FREE;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
if (ParseCommandLine (argc - iParsedNum, argv + iParsedNum, pSrcPic, sSvcParam, fs) != 0) {
|
if (ParseCommandLine (argc - iParsedNum, argv + iParsedNum, pSrcPic, sSvcParam, fs) != 0) {
|
||||||
printf ("parse pCommand line failed\n");
|
printf ("parse pCommand line failed\n");
|
||||||
iRet = 1;
|
iRet = 1;
|
||||||
goto INSIDE_MEM_FREE;
|
goto INSIDE_MEM_FREE;
|
||||||
}
|
}
|
||||||
|
if (g_LevelSetting >= 0) {
|
||||||
|
pPtrEnc->SetOption (ENCODER_OPTION_TRACE_LEVEL, &g_LevelSetting);
|
||||||
|
}
|
||||||
//finish reading the configurations
|
//finish reading the configurations
|
||||||
iSourceWidth = pSrcPic->iPicWidth;
|
iSourceWidth = pSrcPic->iPicWidth;
|
||||||
iSourceHeight = pSrcPic->iPicHeight;
|
iSourceHeight = pSrcPic->iPicHeight;
|
||||||
@@ -893,6 +725,8 @@ int ProcessEncodingSvcWithConfig (ISVCEncoder* pPtrEnc, int argc, char** argv) {
|
|||||||
pSrcPic->pData[2] = pSrcPic->pData[1] + (iSourceWidth * iSourceHeight >> 2);
|
pSrcPic->pData[2] = pSrcPic->pData[1] + (iSourceWidth * iSourceHeight >> 2);
|
||||||
|
|
||||||
//update sSvcParam
|
//update sSvcParam
|
||||||
|
sSvcParam.iPicWidth = 0;
|
||||||
|
sSvcParam.iPicHeight = 0;
|
||||||
for (int iLayer = 0; iLayer < sSvcParam.iSpatialLayerNum; iLayer++) {
|
for (int iLayer = 0; iLayer < sSvcParam.iSpatialLayerNum; iLayer++) {
|
||||||
SSpatialLayerConfig* pDLayer = &sSvcParam.sSpatialLayers[iLayer];
|
SSpatialLayerConfig* pDLayer = &sSvcParam.sSpatialLayers[iLayer];
|
||||||
sSvcParam.iPicWidth = WELS_MAX (sSvcParam.iPicWidth, pDLayer->iVideoWidth);
|
sSvcParam.iPicWidth = WELS_MAX (sSvcParam.iPicWidth, pDLayer->iVideoWidth);
|
||||||
@@ -975,7 +809,7 @@ int ProcessEncodingSvcWithConfig (ISVCEncoder* pPtrEnc, int argc, char** argv) {
|
|||||||
iTotal += WelsTime() - iStart;
|
iTotal += WelsTime() - iStart;
|
||||||
|
|
||||||
// fixed issue in case dismatch source picture introduced by frame skipped, 1/12/2010
|
// fixed issue in case dismatch source picture introduced by frame skipped, 1/12/2010
|
||||||
if (videoFrameTypeSkip == sFbi.eOutputFrameType) {
|
if (videoFrameTypeSkip == sFbi.eFrameType) {
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -988,7 +822,7 @@ int ProcessEncodingSvcWithConfig (ISVCEncoder* pPtrEnc, int argc, char** argv) {
|
|||||||
int iLayerSize = 0;
|
int iLayerSize = 0;
|
||||||
int iNalIdx = pLayerBsInfo->iNalCount - 1;
|
int iNalIdx = pLayerBsInfo->iNalCount - 1;
|
||||||
do {
|
do {
|
||||||
iLayerSize += pLayerBsInfo->iNalLengthInByte[iNalIdx];
|
iLayerSize += pLayerBsInfo->pNalLengthInByte[iNalIdx];
|
||||||
-- iNalIdx;
|
-- iNalIdx;
|
||||||
} while (iNalIdx >= 0);
|
} while (iNalIdx >= 0);
|
||||||
#if defined(COMPARE_DATA)
|
#if defined(COMPARE_DATA)
|
||||||
@@ -1092,8 +926,8 @@ void LockToSingleCore() {
|
|||||||
return ;
|
return ;
|
||||||
}
|
}
|
||||||
|
|
||||||
long CreateSVCEncHandle (ISVCEncoder** ppEncoder) {
|
int32_t CreateSVCEncHandle (ISVCEncoder** ppEncoder) {
|
||||||
long ret = 0;
|
int32_t ret = 0;
|
||||||
ret = WelsCreateSVCEncoder (ppEncoder);
|
ret = WelsCreateSVCEncoder (ppEncoder);
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
@@ -1139,7 +973,7 @@ int main (int argc, char** argv)
|
|||||||
} else {
|
} else {
|
||||||
if (!strstr (argv[1], ".cfg")) { // check configuration type (like .cfg?)
|
if (!strstr (argv[1], ".cfg")) { // check configuration type (like .cfg?)
|
||||||
if (argc > 2) {
|
if (argc > 2) {
|
||||||
iRet = ProcessEncodingSvcWithParam (pSVCEncoder, argc, argv);
|
iRet = ProcessEncoding (pSVCEncoder, argc, argv, false);
|
||||||
if (iRet != 0)
|
if (iRet != 0)
|
||||||
goto exit;
|
goto exit;
|
||||||
} else if (argc == 2 && ! strcmp (argv[1], "-h"))
|
} else if (argc == 2 && ! strcmp (argv[1], "-h"))
|
||||||
@@ -1149,7 +983,7 @@ int main (int argc, char** argv)
|
|||||||
goto exit;
|
goto exit;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
iRet = ProcessEncodingSvcWithConfig (pSVCEncoder, argc, argv);
|
iRet = ProcessEncoding (pSVCEncoder, argc, argv, true);
|
||||||
if (iRet > 0)
|
if (iRet > 0)
|
||||||
goto exit;
|
goto exit;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,6 +1,5 @@
|
|||||||
H264ENC_SRCDIR=codec/console/enc
|
H264ENC_SRCDIR=codec/console/enc
|
||||||
H264ENC_CPP_SRCS=\
|
H264ENC_CPP_SRCS=\
|
||||||
$(H264ENC_SRCDIR)/src/read_config.cpp\
|
|
||||||
$(H264ENC_SRCDIR)/src/welsenc.cpp\
|
$(H264ENC_SRCDIR)/src/welsenc.cpp\
|
||||||
|
|
||||||
H264ENC_OBJS += $(H264ENC_CPP_SRCS:.cpp=.$(OBJ))
|
H264ENC_OBJS += $(H264ENC_CPP_SRCS:.cpp=.$(OBJ))
|
||||||
|
|||||||
@@ -99,20 +99,16 @@
|
|||||||
// }
|
// }
|
||||||
.endm
|
.endm
|
||||||
#endif
|
#endif
|
||||||
// r0 int16_t* block,
|
// r0 int8_t* non_zero_count,
|
||||||
// r1 int8_t* non_zero_count,
|
|
||||||
WELS_ASM_FUNC_BEGIN SetNonZeroCount_neon
|
WELS_ASM_FUNC_BEGIN SetNonZeroCount_neon
|
||||||
|
vld1.64 {d0-d2}, [r0]
|
||||||
vld1.64 {d0-d2}, [r1]
|
|
||||||
|
|
||||||
vceq.s8 q0, q0, #0
|
vceq.s8 q0, q0, #0
|
||||||
vceq.s8 d2, d2, #0
|
vceq.s8 d2, d2, #0
|
||||||
vmvn q0, q0
|
vmvn q0, q0
|
||||||
vmvn d2, d2
|
vmvn d2, d2
|
||||||
vabs.s8 q0, q0
|
vabs.s8 q0, q0
|
||||||
vabs.s8 d2, d2
|
vabs.s8 d2, d2
|
||||||
|
vst1.64 {d0-d2}, [r0]
|
||||||
vst1.64 {d0-d2}, [r1]
|
|
||||||
WELS_ASM_FUNC_END
|
WELS_ASM_FUNC_END
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
525
codec/decoder/core/arm64/intra_pred_aarch64_neon.S
Normal file
525
codec/decoder/core/arm64/intra_pred_aarch64_neon.S
Normal file
@@ -0,0 +1,525 @@
|
|||||||
|
/*!
|
||||||
|
* \copy
|
||||||
|
* Copyright (c) 2013, Cisco Systems
|
||||||
|
* All rights reserved.
|
||||||
|
*
|
||||||
|
* Redistribution and use in source and binary forms, with or without
|
||||||
|
* modification, are permitted provided that the following conditions
|
||||||
|
* are met:
|
||||||
|
*
|
||||||
|
* * Redistributions of source code must retain the above copyright
|
||||||
|
* notice, this list of conditions and the following disclaimer.
|
||||||
|
*
|
||||||
|
* * Redistributions in binary form must reproduce the above copyright
|
||||||
|
* notice, this list of conditions and the following disclaimer in
|
||||||
|
* the documentation and/or other materials provided with the
|
||||||
|
* distribution.
|
||||||
|
*
|
||||||
|
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||||
|
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||||||
|
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
|
||||||
|
* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
|
||||||
|
* COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
|
||||||
|
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
|
||||||
|
* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
||||||
|
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
|
||||||
|
* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||||||
|
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
|
||||||
|
* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
||||||
|
* POSSIBILITY OF SUCH DAMAGE.
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifdef HAVE_NEON_AARCH64
|
||||||
|
.text
|
||||||
|
#include "arm_arch64_common_macro.S"
|
||||||
|
|
||||||
|
// for Luma 4x4
|
||||||
|
WELS_ASM_AARCH64_FUNC_BEGIN WelsDecoderI4x4LumaPredH_AArch64_neon
|
||||||
|
sxtw x1, w1
|
||||||
|
sub x2, x0, #1
|
||||||
|
.rept 4
|
||||||
|
ld1r {v0.8b}, [x2], x1
|
||||||
|
st1 {v0.S}[0], [x0], x1
|
||||||
|
.endr
|
||||||
|
WELS_ASM_AARCH64_FUNC_END
|
||||||
|
|
||||||
|
WELS_ASM_AARCH64_FUNC_BEGIN WelsDecoderI4x4LumaPredDc_AArch64_neon
|
||||||
|
sxtw x1, w1
|
||||||
|
sub x2, x0, x1
|
||||||
|
sub x3, x0, #1
|
||||||
|
ldr s0, [x2]
|
||||||
|
ld1 {v0.b}[4], [x3], x1
|
||||||
|
ld1 {v0.b}[5], [x3], x1
|
||||||
|
ld1 {v0.b}[6], [x3], x1
|
||||||
|
ld1 {v0.b}[7], [x3]
|
||||||
|
uaddlv h0, v0.8b
|
||||||
|
uqrshrn b0, h0, #3
|
||||||
|
dup v0.8b, v0.b[0]
|
||||||
|
.rept 4
|
||||||
|
st1 {v0.S}[0], [x0], x1
|
||||||
|
.endr
|
||||||
|
WELS_ASM_AARCH64_FUNC_END
|
||||||
|
|
||||||
|
WELS_ASM_AARCH64_FUNC_BEGIN WelsDecoderI4x4LumaPredDcTop_AArch64_neon
|
||||||
|
sxtw x1, w1
|
||||||
|
sub x2, x0, x1
|
||||||
|
sub v0.8b, v0.8b, v0.8b
|
||||||
|
ldr s0, [x2]
|
||||||
|
uaddlv h0, v0.8b
|
||||||
|
uqrshrn v0.8b, v0.8h, #2
|
||||||
|
dup v0.8b, v0.b[0]
|
||||||
|
.rept 4
|
||||||
|
st1 {v0.S}[0], [x0], x1
|
||||||
|
.endr
|
||||||
|
WELS_ASM_AARCH64_FUNC_END
|
||||||
|
|
||||||
|
WELS_ASM_AARCH64_FUNC_BEGIN WelsDecoderI4x4LumaPredDDL_AArch64_neon
|
||||||
|
sxtw x1, w1
|
||||||
|
sub x2, x0, x1
|
||||||
|
ld1 {v0.8b}, [x2]
|
||||||
|
dup v1.8b, v0.b[7]
|
||||||
|
ext v2.8b, v0.8b, v1.8b, #1
|
||||||
|
ext v3.8b, v0.8b, v1.8b, #2
|
||||||
|
ushll v2.8h, v2.8b, #1
|
||||||
|
uaddl v1.8h, v3.8b, v0.8b
|
||||||
|
add v1.8h, v1.8h, v2.8h
|
||||||
|
uqrshrn v1.8b, v1.8h, #2
|
||||||
|
st1 {v1.S}[0], [x0], x1
|
||||||
|
ext v0.8b, v1.8b, v2.8b, #1
|
||||||
|
st1 {v0.S}[0], [x0], x1
|
||||||
|
ext v0.8b, v1.8b, v2.8b, #2
|
||||||
|
st1 {v0.S}[0], [x0], x1
|
||||||
|
ext v0.8b, v1.8b, v2.8b, #3
|
||||||
|
st1 {v0.S}[0], [x0]
|
||||||
|
WELS_ASM_AARCH64_FUNC_END
|
||||||
|
|
||||||
|
WELS_ASM_AARCH64_FUNC_BEGIN WelsDecoderI4x4LumaPredDDLTop_AArch64_neon
|
||||||
|
sxtw x1, w1
|
||||||
|
sub x2, x0, x1
|
||||||
|
ld1 {v0.8b}, [x2]
|
||||||
|
dup v1.8b, v0.b[3]
|
||||||
|
mov v0.S[1], v1.S[0]
|
||||||
|
ext v2.8b, v0.8b, v1.8b, #1
|
||||||
|
ext v3.8b, v0.8b, v1.8b, #2
|
||||||
|
ushll v2.8h, v2.8b, #1
|
||||||
|
uaddl v1.8h, v3.8b, v0.8b
|
||||||
|
add v1.8h, v1.8h, v2.8h
|
||||||
|
uqrshrn v1.8b, v1.8h, #2
|
||||||
|
st1 {v1.S}[0], [x0], x1
|
||||||
|
ext v0.8b, v1.8b, v2.8b, #1
|
||||||
|
st1 {v0.S}[0], [x0], x1
|
||||||
|
ext v0.8b, v1.8b, v2.8b, #2
|
||||||
|
st1 {v0.S}[0], [x0], x1
|
||||||
|
ext v0.8b, v1.8b, v2.8b, #3
|
||||||
|
st1 {v0.S}[0], [x0]
|
||||||
|
WELS_ASM_AARCH64_FUNC_END
|
||||||
|
|
||||||
|
WELS_ASM_AARCH64_FUNC_BEGIN WelsDecoderI4x4LumaPredVL_AArch64_neon
|
||||||
|
sxtw x1, w1
|
||||||
|
sub x2, x0, x1
|
||||||
|
ld1 {v0.8b}, [x2]
|
||||||
|
ext v1.8b, v0.8b, v0.8b, #1
|
||||||
|
uaddl v1.8h, v1.8b, v0.8b
|
||||||
|
uqrshrn v0.8b, v1.8h, #1 // v0.8b is VL0, VL1, VL2, VL3, VL4, ...
|
||||||
|
ext v2.16b, v1.16b, v1.16b, #2
|
||||||
|
add v1.8h, v2.8h, v1.8h
|
||||||
|
uqrshrn v1.8b, v1.8h, #2 // v1.8b is VL5, VL6, VL7, VL8, VL9
|
||||||
|
st1 {v0.s}[0], [x0], x1 // write the first row
|
||||||
|
st1 {v1.s}[0], [x0], x1 // write the second row
|
||||||
|
ext v3.8b, v0.8b, v0.8b, #1
|
||||||
|
ext v2.8b, v1.8b, v1.8b, #1
|
||||||
|
st1 {v3.s}[0], [x0], x1 // write the third row
|
||||||
|
st1 {v2.s}[0], [x0] // write the fourth row
|
||||||
|
WELS_ASM_AARCH64_FUNC_END
|
||||||
|
|
||||||
|
WELS_ASM_AARCH64_FUNC_BEGIN WelsDecoderI4x4LumaPredVLTop_AArch64_neon
|
||||||
|
sxtw x1, w1
|
||||||
|
sub x2, x0, x1
|
||||||
|
ld1 {v0.8b}, [x2]
|
||||||
|
dup v1.8b, v0.b[3]
|
||||||
|
mov v0.s[1], v1.s[0]
|
||||||
|
ext v1.8b, v0.8b, v0.8b, #1
|
||||||
|
uaddl v1.8h, v1.8b, v0.8b
|
||||||
|
uqrshrn v0.8b, v1.8h, #1 // v0.8b is VL0, VL1, VL2, VL3, VL4, ...
|
||||||
|
ext v2.16b, v1.16b, v1.16b, #2
|
||||||
|
add v1.8h, v2.8h, v1.8h
|
||||||
|
uqrshrn v1.8b, v1.8h, #2 // v1.8b is VL5, VL6, VL7, VL8, VL9
|
||||||
|
st1 {v0.s}[0], [x0], x1 // write the first row
|
||||||
|
st1 {v1.s}[0], [x0], x1 // write the second row
|
||||||
|
ext v3.8b, v0.8b, v0.8b, #1
|
||||||
|
ext v2.8b, v1.8b, v1.8b, #1
|
||||||
|
st1 {v3.s}[0], [x0], x1 // write the third row
|
||||||
|
st1 {v2.s}[0], [x0] // write the fourth row
|
||||||
|
WELS_ASM_AARCH64_FUNC_END
|
||||||
|
|
||||||
|
WELS_ASM_AARCH64_FUNC_BEGIN WelsDecoderI4x4LumaPredVR_AArch64_neon
|
||||||
|
sxtw x1, w1
|
||||||
|
sub x2, x0, x1
|
||||||
|
ld1 {v0.s}[1], [x2]
|
||||||
|
sub x2, x2, #1
|
||||||
|
ld1 {v0.b}[3], [x2], x1
|
||||||
|
ld1 {v0.b}[2], [x2], x1
|
||||||
|
ld1 {v0.b}[1], [x2], x1
|
||||||
|
ld1 {v0.b}[0], [x2] // v0.8b l2, l1, l0, lt, t0, t1, t2, t3
|
||||||
|
|
||||||
|
ext v1.8b, v0.8b, v0.8b, #7
|
||||||
|
uaddl v2.8h, v1.8b, v0.8b //v2:{X,L2+L1,L1+L0,L0+LT,LT+T0,T0+T1,T1+T2,T2+T3}
|
||||||
|
ext v1.16b, v2.16b, v2.16b, #14
|
||||||
|
add v3.8h, v2.8h, v1.8h //v3:{X,L2+L1+L1+L0,L1+L0+L0+LT,...T1+T2+T2+T3}
|
||||||
|
|
||||||
|
uqrshrn v3.8b, v3.8h, #2
|
||||||
|
uqrshrn v2.8b, v2.8h, #1
|
||||||
|
|
||||||
|
st1 {v2.s}[1], [x0], x1
|
||||||
|
st1 {v3.s}[1], [x0], x1
|
||||||
|
|
||||||
|
ext v2.8b, v2.8b, v2.8b, #7
|
||||||
|
ins v2.b[4], v3.b[3]
|
||||||
|
st1 {v2.s}[1], [x0], x1
|
||||||
|
|
||||||
|
ext v3.8b, v3.8b, v3.8b, #7
|
||||||
|
ins v3.b[4], v3.b[3]
|
||||||
|
st1 {v3.s}[1], [x0], x1
|
||||||
|
|
||||||
|
WELS_ASM_AARCH64_FUNC_END
|
||||||
|
|
||||||
|
|
||||||
|
WELS_ASM_AARCH64_FUNC_BEGIN WelsDecoderI4x4LumaPredHU_AArch64_neon
|
||||||
|
sxtw x1, w1
|
||||||
|
sub x2, x0, #1
|
||||||
|
mov x3, #3
|
||||||
|
mul x3, x3, x1
|
||||||
|
add x3, x3, x2
|
||||||
|
ld1r {v0.8b}, [x3]
|
||||||
|
ld1 {v0.b}[4], [x2], x1
|
||||||
|
ld1 {v0.b}[5], [x2], x1
|
||||||
|
ld1 {v0.b}[6], [x2], x1 //d0:{L3,L3,L3,L3,L0,L1,L2,L3}
|
||||||
|
|
||||||
|
ext v1.8b, v0.8b, v0.8b, #1
|
||||||
|
uaddl v2.8h, v0.8b, v1.8b //v2:{L3+L3,L3+L3,L3+L3,L3+L0,L0+L1,L1+L2,L2+L3,L3+L3}
|
||||||
|
ext v3.16b, v2.16b, v2.16b, #2
|
||||||
|
add v3.8h, v3.8h, v2.8h //v2:{x, HU1, HU3, HU5, x}
|
||||||
|
|
||||||
|
uqrshrn v2.8b, v2.8h, #1 // HU0, HU2, HU4
|
||||||
|
uqrshrn v3.8b, v3.8h, #2 // HU1, HU3, HU5
|
||||||
|
zip2 v3.8b, v2.8b, v3.8b // HU0, HU1, HU2, HU3, HU4, HU5
|
||||||
|
mov v3.h[3], v0.h[0] // v0.8b is hu0, hu1, hu2, hu3, hu4, hu5, l3, l3
|
||||||
|
ext v2.8b, v3.8b, v0.8b, #2
|
||||||
|
st1 {v3.s}[0], [x0], x1
|
||||||
|
st1 {v2.s}[0], [x0], x1
|
||||||
|
st1 {v3.s}[1], [x0], x1
|
||||||
|
st1 {v0.s}[0], [x0]
|
||||||
|
WELS_ASM_AARCH64_FUNC_END
|
||||||
|
|
||||||
|
WELS_ASM_AARCH64_FUNC_BEGIN WelsDecoderI4x4LumaPredHD_AArch64_neon
|
||||||
|
sxtw x1, w1
|
||||||
|
sub x2, x0, #1
|
||||||
|
sub x2, x2, x1 // x2 points to top left
|
||||||
|
ld1 {v0.s}[1], [x2], x1
|
||||||
|
ld1 {v0.b}[3], [x2], x1
|
||||||
|
ld1 {v0.b}[2], [x2], x1
|
||||||
|
ld1 {v0.b}[1], [x2], x1
|
||||||
|
ld1 {v0.b}[0], [x2] // v0.8b: l3, l2, l1, l0, lt, t0, t1, t2
|
||||||
|
ext v1.8b, v0.8b, v0.8b, #1 // v1.8b: l2, l1, l0, lt, t0, t1, t2, l3
|
||||||
|
uaddl v2.8h, v0.8b, v1.8b
|
||||||
|
ext v3.16b, v2.16b, v2.16b, #2
|
||||||
|
add v3.8h, v3.8h, v2.8h
|
||||||
|
uqrshrn v2.8b, v2.8h, #1 // hd8, hd6, hd4, hd0, xxx
|
||||||
|
uqrshrn v3.8b, v3.8h, #2 // hd9, hd7, hd5, hd1, hd2, hd3
|
||||||
|
zip1 v2.8b, v2.8b, v3.8b // hd8, hd9, hd6, hd7, hd4, hd5, hd0, hd1
|
||||||
|
mov v1.h[0], v3.h[2]
|
||||||
|
ext v3.8b, v2.8b, v1.8b, #6
|
||||||
|
st1 {v3.s}[0], [x0], x1
|
||||||
|
st1 {v2.s}[1], [x0], x1
|
||||||
|
ext v3.8b, v2.8b, v1.8b, #2
|
||||||
|
st1 {v3.s}[0], [x0], x1
|
||||||
|
st1 {v2.s}[0], [x0]
|
||||||
|
WELS_ASM_AARCH64_FUNC_END
|
||||||
|
|
||||||
|
// for Chroma 8x8
|
||||||
|
WELS_ASM_AARCH64_FUNC_BEGIN WelsDecoderIChromaPredV_AArch64_neon
|
||||||
|
sxtw x1, w1
|
||||||
|
sub x2, x0, x1
|
||||||
|
ld1 {v0.8b}, [x2]
|
||||||
|
.rept 8
|
||||||
|
st1 {v0.8b}, [x0], x1
|
||||||
|
.endr
|
||||||
|
WELS_ASM_AARCH64_FUNC_END
|
||||||
|
|
||||||
|
WELS_ASM_AARCH64_FUNC_BEGIN WelsDecoderIChromaPredH_AArch64_neon
|
||||||
|
sxtw x1, w1
|
||||||
|
sub x2, x0, #1
|
||||||
|
.rept 8
|
||||||
|
ld1r {v0.8b}, [x2], x1
|
||||||
|
st1 {v0.8b}, [x0], x1
|
||||||
|
.endr
|
||||||
|
WELS_ASM_AARCH64_FUNC_END
|
||||||
|
|
||||||
|
|
||||||
|
WELS_ASM_AARCH64_FUNC_BEGIN WelsDecoderIChromaPredDc_AArch64_neon
|
||||||
|
sxtw x1, w1
|
||||||
|
sub x2, x0, x1
|
||||||
|
sub x3, x0, #1
|
||||||
|
ld1 {v0.8b}, [x2]
|
||||||
|
ld1 {v0.b}[8], [x3], x1
|
||||||
|
ld1 {v0.b}[9], [x3], x1
|
||||||
|
ld1 {v0.b}[10], [x3], x1
|
||||||
|
ld1 {v0.b}[11], [x3], x1
|
||||||
|
ld1 {v0.b}[12], [x3], x1
|
||||||
|
ld1 {v0.b}[13], [x3], x1
|
||||||
|
ld1 {v0.b}[14], [x3], x1
|
||||||
|
ld1 {v0.b}[15], [x3]
|
||||||
|
|
||||||
|
uaddlp v1.8h, v0.16b
|
||||||
|
uaddlp v2.4s, v1.8h
|
||||||
|
ins v3.d[0], v2.d[1]
|
||||||
|
add v3.2s, v2.2s, v3.2s
|
||||||
|
urshr v2.4s, v2.4s, #2
|
||||||
|
urshr v3.2s, v3.2s, #3
|
||||||
|
|
||||||
|
dup v0.8b, v3.b[0]
|
||||||
|
dup v1.8b, v2.b[4]
|
||||||
|
dup v2.8b, v2.b[12]
|
||||||
|
dup v3.8b, v3.b[4]
|
||||||
|
ins v0.s[1], v1.s[0]
|
||||||
|
ins v2.s[1], v3.s[0]
|
||||||
|
.rept 4
|
||||||
|
st1 {v0.8b}, [x0], x1
|
||||||
|
.endr
|
||||||
|
.rept 4
|
||||||
|
st1 {v2.8b}, [x0], x1
|
||||||
|
.endr
|
||||||
|
|
||||||
|
WELS_ASM_AARCH64_FUNC_END
|
||||||
|
|
||||||
|
WELS_ASM_AARCH64_FUNC_BEGIN WelsDecoderIChromaPredDcTop_AArch64_neon
|
||||||
|
sxtw x1, w1
|
||||||
|
sub x2, x0, x1
|
||||||
|
ld1 {v0.8b}, [x2]
|
||||||
|
uaddlp v0.4h, v0.8b
|
||||||
|
addp v0.8h, v0.8h, v0.8h
|
||||||
|
dup v1.8h, v0.h[0]
|
||||||
|
dup v2.8h, v0.h[1]
|
||||||
|
mov v1.D[1], v2.D[0]
|
||||||
|
uqrshrn v1.8b, v1.8h, #2
|
||||||
|
.rept 8
|
||||||
|
st1 {v1.8b}, [x0], x1
|
||||||
|
.endr
|
||||||
|
WELS_ASM_AARCH64_FUNC_END
|
||||||
|
|
||||||
|
.align 16
|
||||||
|
intra_1_to_4: .short 17*1, 17*2, 17*3, 17*4, 17*1, 17*2, 17*3, 17*4
|
||||||
|
intra_m3_to_p4: .short -3, -2, -1, 0, 1, 2, 3, 4
|
||||||
|
|
||||||
|
WELS_ASM_AARCH64_FUNC_BEGIN WelsDecoderIChromaPredPlane_AArch64_neon
|
||||||
|
sxtw x1, w1
|
||||||
|
sub x2, x0, x1
|
||||||
|
sub x2, x2, #1
|
||||||
|
mov x3, x2
|
||||||
|
// load pTop[2-i] and pLeft[(2-i)*kiStride]
|
||||||
|
ld1 {v1.b}[3], [x2], #1
|
||||||
|
ld1 {v1.b}[2], [x2], #1
|
||||||
|
ld1 {v1.b}[1], [x2], #1
|
||||||
|
ld1 {v1.b}[0], [x2], #1
|
||||||
|
ld1 {v1.b}[7], [x3], x1
|
||||||
|
ld1 {v1.b}[6], [x3], x1
|
||||||
|
ld1 {v1.b}[5], [x3], x1
|
||||||
|
ld1 {v1.b}[4], [x3], x1
|
||||||
|
add x2, x2, #1
|
||||||
|
add x3, x3, x1
|
||||||
|
// load pTop[4+i] and pLeft[(4+i)*kiStride]
|
||||||
|
ld1 {v0.b}[0], [x2], #1
|
||||||
|
ld1 {v0.b}[1], [x2], #1
|
||||||
|
ld1 {v0.b}[2], [x2], #1
|
||||||
|
ld1 {v0.b}[3], [x2], #1
|
||||||
|
ld1 {v0.b}[4], [x3], x1
|
||||||
|
ld1 {v0.b}[5], [x3], x1
|
||||||
|
ld1 {v0.b}[6], [x3], x1
|
||||||
|
ld1 {v0.b}[7], [x3], x1
|
||||||
|
|
||||||
|
uxtl v1.8h, v1.8b
|
||||||
|
uxtl v0.8h, v0.8b
|
||||||
|
ldr q2, intra_1_to_4
|
||||||
|
ldr q3, intra_m3_to_p4
|
||||||
|
dup v4.8h, v0.h[3]
|
||||||
|
dup v5.8h, v0.h[7]
|
||||||
|
add v4.8h, v4.8h, v5.8h
|
||||||
|
sub v0.8h, v0.8h, v1.8h
|
||||||
|
shl v4.8h, v4.8h, #4 // v4.8h is a
|
||||||
|
mul v0.8h, v0.8h, v2.8h // v0.h[0-3] is H, v0.h[4-7] is V
|
||||||
|
saddlp v0.4s, v0.8h
|
||||||
|
addp v0.4s, v0.4s, v0.4s // v0.s[0] is H, v0.s[1] is V
|
||||||
|
sqrshrn v0.4h, v0.4s, #5
|
||||||
|
dup v1.8h, v0.h[0] // v1.8h is b
|
||||||
|
dup v0.8h, v0.h[1] // v0.8h is c
|
||||||
|
mla v4.8h, v1.8h, v3.8h
|
||||||
|
mla v4.8h, v0.8h, v3.h[0]
|
||||||
|
sqrshrun v1.8b, v4.8h, #5
|
||||||
|
st1 {v1.8b}, [x0], x1
|
||||||
|
.rept 7
|
||||||
|
add v4.8h, v4.8h, v0.8h
|
||||||
|
sqrshrun v1.8b, v4.8h, #5
|
||||||
|
st1 {v1.8b}, [x0], x1
|
||||||
|
.endr
|
||||||
|
WELS_ASM_AARCH64_FUNC_END
|
||||||
|
|
||||||
|
//for Luma 16x16
|
||||||
|
WELS_ASM_AARCH64_FUNC_BEGIN WelsDecoderI16x16LumaPredV_AArch64_neon
|
||||||
|
sxtw x1, w1
|
||||||
|
sub x2, x0, x1
|
||||||
|
ld1 {v0.16b}, [x2]
|
||||||
|
.rept 16
|
||||||
|
st1 {v0.16b}, [x0], x1
|
||||||
|
.endr
|
||||||
|
WELS_ASM_AARCH64_FUNC_END
|
||||||
|
|
||||||
|
WELS_ASM_AARCH64_FUNC_BEGIN WelsDecoderI16x16LumaPredH_AArch64_neon
|
||||||
|
sxtw x1, w1
|
||||||
|
sub x2, x0, #1
|
||||||
|
.rept 16
|
||||||
|
ld1r {v0.16b}, [x2], x1
|
||||||
|
st1 {v0.16b}, [x0], x1
|
||||||
|
.endr
|
||||||
|
WELS_ASM_AARCH64_FUNC_END
|
||||||
|
|
||||||
|
WELS_ASM_AARCH64_FUNC_BEGIN WelsDecoderI16x16LumaPredDc_AArch64_neon
|
||||||
|
sxtw x1, w1
|
||||||
|
sub x2, x0, x1
|
||||||
|
sub x3, x0, #1
|
||||||
|
ld1 {v0.16b}, [x2]
|
||||||
|
ld1 {v1.b}[0], [x3], x1
|
||||||
|
ld1 {v1.b}[1], [x3], x1
|
||||||
|
ld1 {v1.b}[2], [x3], x1
|
||||||
|
ld1 {v1.b}[3], [x3], x1
|
||||||
|
ld1 {v1.b}[4], [x3], x1
|
||||||
|
ld1 {v1.b}[5], [x3], x1
|
||||||
|
ld1 {v1.b}[6], [x3], x1
|
||||||
|
ld1 {v1.b}[7], [x3], x1
|
||||||
|
ld1 {v1.b}[8], [x3], x1
|
||||||
|
ld1 {v1.b}[9], [x3], x1
|
||||||
|
ld1 {v1.b}[10], [x3], x1
|
||||||
|
ld1 {v1.b}[11], [x3], x1
|
||||||
|
ld1 {v1.b}[12], [x3], x1
|
||||||
|
ld1 {v1.b}[13], [x3], x1
|
||||||
|
ld1 {v1.b}[14], [x3], x1
|
||||||
|
ld1 {v1.b}[15], [x3]
|
||||||
|
// reduce instruction
|
||||||
|
uaddlv h0, v0.16b
|
||||||
|
uaddlv h1, v1.16b
|
||||||
|
add v0.8h, v0.8h, v1.8h
|
||||||
|
uqrshrn b0, h0, #5
|
||||||
|
dup v0.16b, v0.b[0]
|
||||||
|
.rept 16
|
||||||
|
st1 {v0.16b}, [x0], x1
|
||||||
|
.endr
|
||||||
|
WELS_ASM_AARCH64_FUNC_END
|
||||||
|
|
||||||
|
WELS_ASM_AARCH64_FUNC_BEGIN WelsDecoderI16x16LumaPredDcTop_AArch64_neon
|
||||||
|
sxtw x1, w1
|
||||||
|
sub x2, x0, x1
|
||||||
|
ld1 {v0.16b}, [x2]
|
||||||
|
// reduce instruction
|
||||||
|
uaddlv h0, v0.16b
|
||||||
|
uqrshrn v0.8b, v0.8h, 4
|
||||||
|
dup v0.16b, v0.b[0]
|
||||||
|
.rept 16
|
||||||
|
st1 {v0.16b}, [x0], x1
|
||||||
|
.endr
|
||||||
|
WELS_ASM_AARCH64_FUNC_END
|
||||||
|
|
||||||
|
WELS_ASM_AARCH64_FUNC_BEGIN WelsDecoderI16x16LumaPredDcLeft_AArch64_neon
|
||||||
|
sxtw x1, w1
|
||||||
|
sub x3, x0, #1
|
||||||
|
ld1 {v1.b}[0], [x3], x1
|
||||||
|
ld1 {v1.b}[1], [x3], x1
|
||||||
|
ld1 {v1.b}[2], [x3], x1
|
||||||
|
ld1 {v1.b}[3], [x3], x1
|
||||||
|
ld1 {v1.b}[4], [x3], x1
|
||||||
|
ld1 {v1.b}[5], [x3], x1
|
||||||
|
ld1 {v1.b}[6], [x3], x1
|
||||||
|
ld1 {v1.b}[7], [x3], x1
|
||||||
|
ld1 {v1.b}[8], [x3], x1
|
||||||
|
ld1 {v1.b}[9], [x3], x1
|
||||||
|
ld1 {v1.b}[10], [x3], x1
|
||||||
|
ld1 {v1.b}[11], [x3], x1
|
||||||
|
ld1 {v1.b}[12], [x3], x1
|
||||||
|
ld1 {v1.b}[13], [x3], x1
|
||||||
|
ld1 {v1.b}[14], [x3], x1
|
||||||
|
ld1 {v1.b}[15], [x3]
|
||||||
|
// reduce instruction
|
||||||
|
uaddlv h1, v1.16b
|
||||||
|
uqrshrn v0.8b, v1.8h, #4
|
||||||
|
dup v0.16b, v0.b[0]
|
||||||
|
.rept 16
|
||||||
|
st1 {v0.16b}, [x0], x1
|
||||||
|
.endr
|
||||||
|
WELS_ASM_AARCH64_FUNC_END
|
||||||
|
|
||||||
|
|
||||||
|
.align 16
|
||||||
|
intra_1_to_8: .short 5, 10, 15, 20, 25, 30, 35, 40
|
||||||
|
intra_m7_to_p8: .short -7, -6, -5, -4, -3, -2, -1, 0, 1, 2, 3, 4, 5, 6, 7, 8
|
||||||
|
|
||||||
|
WELS_ASM_AARCH64_FUNC_BEGIN WelsDecoderI16x16LumaPredPlane_AArch64_neon
|
||||||
|
sxtw x1, w1
|
||||||
|
sub x2, x0, x1
|
||||||
|
sub x2, x2, #1
|
||||||
|
mov x3, x2
|
||||||
|
ld1 {v0.8b}, [x3] // v0 low 8 bit in top(reverse order)
|
||||||
|
add x3, x3, #9
|
||||||
|
rev64 v0.8b, v0.8b // reverse v0
|
||||||
|
ld1 {v1.8b}, [x3] // v1 high 8 bit in top
|
||||||
|
uxtl v0.8h, v0.8b // extend to 16 bit integer
|
||||||
|
uxtl v1.8h, v1.8b // extend to 16 bit integer
|
||||||
|
ld1 {v2.b}[7], [x2], x1
|
||||||
|
ld1 {v2.b}[6], [x2], x1
|
||||||
|
ld1 {v2.b}[5], [x2], x1
|
||||||
|
ld1 {v2.b}[4], [x2], x1
|
||||||
|
ld1 {v2.b}[3], [x2], x1
|
||||||
|
ld1 {v2.b}[2], [x2], x1
|
||||||
|
ld1 {v2.b}[1], [x2], x1
|
||||||
|
ld1 {v2.b}[0], [x2], x1 // v2.8b low 8 bit in left
|
||||||
|
add x2, x2, x1
|
||||||
|
ld1 {v3.b}[0], [x2], x1
|
||||||
|
ld1 {v3.b}[1], [x2], x1
|
||||||
|
ld1 {v3.b}[2], [x2], x1
|
||||||
|
ld1 {v3.b}[3], [x2], x1
|
||||||
|
ld1 {v3.b}[4], [x2], x1
|
||||||
|
ld1 {v3.b}[5], [x2], x1
|
||||||
|
ld1 {v3.b}[6], [x2], x1
|
||||||
|
ld1 {v3.b}[7], [x2] // v3.8b high 8bit in left
|
||||||
|
uxtl v2.8h, v2.8b
|
||||||
|
uxtl v3.8h, v3.8b
|
||||||
|
sub v0.8h, v1.8h, v0.8h
|
||||||
|
sub v2.8h, v3.8h, v2.8h
|
||||||
|
ldr q4, intra_1_to_8
|
||||||
|
mul v0.8h, v0.8h, v4.8h
|
||||||
|
mul v2.8h, v2.8h, v4.8h
|
||||||
|
saddlv s0, v0.8h
|
||||||
|
saddlv s2, v2.8h
|
||||||
|
add v1.8h, v1.8h, v3.8h
|
||||||
|
sqrshrn v0.4h, v0.4S, #6 // b is in v0.h[0]
|
||||||
|
sqrshrn v2.4h, v2.4S, #6 // c is in v2.h[0]
|
||||||
|
shl v1.8h, v1.8h, #4 // a is in v1.h[7]
|
||||||
|
ldr q4, intra_m7_to_p8
|
||||||
|
ldr q5, intra_m7_to_p8 + 16
|
||||||
|
dup v1.8h, v1.h[7]
|
||||||
|
dup v3.8h, v1.h[7]
|
||||||
|
mla v1.8h, v4.8h, v0.h[0]
|
||||||
|
mla v3.8h, v5.8h, v0.h[0]
|
||||||
|
dup v2.8h, v2.h[0] // v2.8h is [cccccccc]
|
||||||
|
mla v1.8h, v2.8h, v4.h[0]
|
||||||
|
mla v3.8h, v2.8h, v4.h[0]
|
||||||
|
sqrshrun v4.8b, v1.8h, #5
|
||||||
|
sqrshrun2 v4.16b, v3.8h, #5
|
||||||
|
st1 {v4.16b}, [x0], x1
|
||||||
|
.rept 15
|
||||||
|
add v1.8h, v1.8h, v2.8h
|
||||||
|
add v3.8h, v3.8h, v2.8h
|
||||||
|
sqrshrun v4.8b, v1.8h, #5
|
||||||
|
sqrshrun2 v4.16b, v3.8h, #5
|
||||||
|
st1 {v4.16b}, [x0], x1
|
||||||
|
.endr
|
||||||
|
WELS_ASM_AARCH64_FUNC_END
|
||||||
|
#endif
|
||||||
@@ -38,6 +38,5 @@
|
|||||||
*/
|
*/
|
||||||
#ifndef WELS_AS264_COMMON_H__
|
#ifndef WELS_AS264_COMMON_H__
|
||||||
#define WELS_AS264_COMMON_H__
|
#define WELS_AS264_COMMON_H__
|
||||||
#define NO_WAITING_AU //slice level decoding
|
|
||||||
#define LONG_TERM_REF //for app
|
#define LONG_TERM_REF //for app
|
||||||
#endif // WELS_AS264_COMMON_H__
|
#endif // WELS_AS264_COMMON_H__
|
||||||
|
|||||||
@@ -96,6 +96,8 @@ bool CheckAccessUnitBoundary (PWelsDecoderContext pCtx, const PNalUnit kpCurNal,
|
|||||||
const PSps kpSps);
|
const PSps kpSps);
|
||||||
bool CheckAccessUnitBoundaryExt (PNalUnitHeaderExt pLastNalHdrExt, PNalUnitHeaderExt pCurNalHeaderExt,
|
bool CheckAccessUnitBoundaryExt (PNalUnitHeaderExt pLastNalHdrExt, PNalUnitHeaderExt pCurNalHeaderExt,
|
||||||
PSliceHeader pLastSliceHeader, PSliceHeader pCurSliceHeader);
|
PSliceHeader pLastSliceHeader, PSliceHeader pCurSliceHeader);
|
||||||
|
bool CheckNextAuNewSeq (PWelsDecoderContext pCtx, const PNalUnit kpCurNal, const PSps kpSps);
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
*************************************************************************************
|
*************************************************************************************
|
||||||
* \brief to parse Sequence Parameter Set (SPS)
|
* \brief to parse Sequence Parameter Set (SPS)
|
||||||
|
|||||||
@@ -46,7 +46,7 @@ typedef struct TagBitStringAux {
|
|||||||
uint8_t* pEndBuf; // buffer + length
|
uint8_t* pEndBuf; // buffer + length
|
||||||
int32_t iBits; // count bits of overall bitstreaming input
|
int32_t iBits; // count bits of overall bitstreaming input
|
||||||
|
|
||||||
int32_t iIndex; //only for cavlc usage
|
intX_t iIndex; //only for cavlc usage
|
||||||
uint8_t* pCurBuf; // current reading position
|
uint8_t* pCurBuf; // current reading position
|
||||||
uint32_t uiCurBits;
|
uint32_t uiCurBits;
|
||||||
int32_t iLeftBits; // count number of available bits left ([1, 8]),
|
int32_t iLeftBits; // count number of available bits left ([1, 8]),
|
||||||
|
|||||||
@@ -75,11 +75,11 @@ namespace WelsDec {
|
|||||||
}
|
}
|
||||||
|
|
||||||
static inline int32_t BsGetBits (PBitStringAux pBs, int32_t iNumBits, uint32_t* pCode) {
|
static inline int32_t BsGetBits (PBitStringAux pBs, int32_t iNumBits, uint32_t* pCode) {
|
||||||
int32_t iRc = UBITS (pBs->uiCurBits, iNumBits);
|
intX_t iRc = UBITS (pBs->uiCurBits, iNumBits);
|
||||||
int32_t iAllowedBytes = pBs->pEndBuf - pBs->pStartBuf; //actual stream bytes
|
intX_t iAllowedBytes = pBs->pEndBuf - pBs->pStartBuf; //actual stream bytes
|
||||||
int32_t iReadBytes = pBs->pCurBuf - pBs->pStartBuf;
|
intX_t iReadBytes = pBs->pCurBuf - pBs->pStartBuf;
|
||||||
DUMP_BITS (pBs->uiCurBits, pBs->pCurBuf, pBs->iLeftBits, iNumBits, iAllowedBytes, iReadBytes);
|
DUMP_BITS (pBs->uiCurBits, pBs->pCurBuf, pBs->iLeftBits, iNumBits, iAllowedBytes, iReadBytes);
|
||||||
*pCode = iRc;
|
*pCode = (uint32_t)iRc;
|
||||||
return ERR_NONE;
|
return ERR_NONE;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -155,7 +155,7 @@ static inline int32_t GetLeadingZeroBits (uint32_t iCurBits) { //<=32 bits
|
|||||||
static inline uint32_t BsGetUe (PBitStringAux pBs, uint32_t* pCode) {
|
static inline uint32_t BsGetUe (PBitStringAux pBs, uint32_t* pCode) {
|
||||||
uint32_t iValue = 0;
|
uint32_t iValue = 0;
|
||||||
int32_t iLeadingZeroBits = GetLeadingZeroBits (pBs->uiCurBits);
|
int32_t iLeadingZeroBits = GetLeadingZeroBits (pBs->uiCurBits);
|
||||||
int32_t iAllowedBytes, iReadBytes;
|
intX_t iAllowedBytes, iReadBytes;
|
||||||
iAllowedBytes = pBs->pEndBuf - pBs->pStartBuf; //actual stream bytes
|
iAllowedBytes = pBs->pEndBuf - pBs->pStartBuf; //actual stream bytes
|
||||||
|
|
||||||
if (iLeadingZeroBits == -1) { //bistream error
|
if (iLeadingZeroBits == -1) { //bistream error
|
||||||
@@ -233,21 +233,21 @@ static inline int32_t BsGetTrailingBits (uint8_t* pBuf) {
|
|||||||
//define macros to check syntax elements
|
//define macros to check syntax elements
|
||||||
#define WELS_CHECK_SE_BOTH_ERROR(val, lower_bound, upper_bound, syntax_name, ret_code) do {\
|
#define WELS_CHECK_SE_BOTH_ERROR(val, lower_bound, upper_bound, syntax_name, ret_code) do {\
|
||||||
if ((val < lower_bound) || (val > upper_bound)) {\
|
if ((val < lower_bound) || (val > upper_bound)) {\
|
||||||
WelsLog(pCtx, WELS_LOG_ERROR, "invalid syntax " syntax_name " %d\n", val);\
|
WelsLog(&(pCtx->sLogCtx), WELS_LOG_ERROR, "invalid syntax " syntax_name " %d\n", val);\
|
||||||
return ret_code;\
|
return ret_code;\
|
||||||
}\
|
}\
|
||||||
}while(0)
|
}while(0)
|
||||||
|
|
||||||
#define WELS_CHECK_SE_LOWER_ERROR(val, lower_bound, syntax_name, ret_code) do {\
|
#define WELS_CHECK_SE_LOWER_ERROR(val, lower_bound, syntax_name, ret_code) do {\
|
||||||
if (val < lower_bound) {\
|
if (val < lower_bound) {\
|
||||||
WelsLog(pCtx, WELS_LOG_ERROR, "invalid syntax " syntax_name " %d\n", val);\
|
WelsLog(&(pCtx->sLogCtx), WELS_LOG_ERROR, "invalid syntax " syntax_name " %d\n", val);\
|
||||||
return ret_code;\
|
return ret_code;\
|
||||||
}\
|
}\
|
||||||
}while(0)
|
}while(0)
|
||||||
|
|
||||||
#define WELS_CHECK_SE_UPPER_ERROR(val, upper_bound, syntax_name, ret_code) do {\
|
#define WELS_CHECK_SE_UPPER_ERROR(val, upper_bound, syntax_name, ret_code) do {\
|
||||||
if (val > upper_bound) {\
|
if (val > upper_bound) {\
|
||||||
WelsLog(pCtx, WELS_LOG_ERROR, "invalid syntax " syntax_name " %d\n", val);\
|
WelsLog(&(pCtx->sLogCtx), WELS_LOG_ERROR, "invalid syntax " syntax_name " %d\n", val);\
|
||||||
return ret_code;\
|
return ret_code;\
|
||||||
}\
|
}\
|
||||||
}while(0)
|
}while(0)
|
||||||
@@ -273,19 +273,19 @@ if (val > upper_bound) {\
|
|||||||
|
|
||||||
#define WELS_CHECK_SE_BOTH_WARNING(val, lower_bound, upper_bound, syntax_name) do {\
|
#define WELS_CHECK_SE_BOTH_WARNING(val, lower_bound, upper_bound, syntax_name) do {\
|
||||||
if ((val < lower_bound) || (val > upper_bound)) {\
|
if ((val < lower_bound) || (val > upper_bound)) {\
|
||||||
WelsLog(pCtx, WELS_LOG_WARNING, "invalid syntax " syntax_name " %d\n", val);\
|
WelsLog(&(pCtx->sLogCtx), WELS_LOG_WARNING, "invalid syntax " syntax_name " %d\n", val);\
|
||||||
}\
|
}\
|
||||||
}while(0)
|
}while(0)
|
||||||
|
|
||||||
#define WELS_CHECK_SE_LOWER_WARNING(val, lower_bound, syntax_name) do {\
|
#define WELS_CHECK_SE_LOWER_WARNING(val, lower_bound, syntax_name) do {\
|
||||||
if (val < lower_bound) {\
|
if (val < lower_bound) {\
|
||||||
WelsLog(pCtx, WELS_LOG_WARNING, "invalid syntax " syntax_name " %d\n", val);\
|
WelsLog(&(pCtx->sLogCtx), WELS_LOG_WARNING, "invalid syntax " syntax_name " %d\n", val);\
|
||||||
}\
|
}\
|
||||||
}while(0)
|
}while(0)
|
||||||
|
|
||||||
#define WELS_CHECK_SE_UPPER_WARNING(val, upper_bound, syntax_name) do {\
|
#define WELS_CHECK_SE_UPPER_WARNING(val, upper_bound, syntax_name) do {\
|
||||||
if (val > upper_bound) {\
|
if (val > upper_bound) {\
|
||||||
WelsLog(pCtx, WELS_LOG_WARNING, "invalid syntax " syntax_name " %d\n", val);\
|
WelsLog(&(pCtx->sLogCtx), WELS_LOG_WARNING, "invalid syntax " syntax_name " %d\n", val);\
|
||||||
}\
|
}\
|
||||||
}while(0)
|
}while(0)
|
||||||
// below define syntax element offset
|
// below define syntax element offset
|
||||||
|
|||||||
@@ -38,8 +38,6 @@
|
|||||||
|
|
||||||
namespace WelsDec {
|
namespace WelsDec {
|
||||||
|
|
||||||
void InitDctClipTable (void);
|
|
||||||
|
|
||||||
void IdctResAddPred_c (uint8_t* pPred, const int32_t kiStride, int16_t* pRs);
|
void IdctResAddPred_c (uint8_t* pPred, const int32_t kiStride, int16_t* pRs);
|
||||||
|
|
||||||
#if defined(__cplusplus)
|
#if defined(__cplusplus)
|
||||||
|
|||||||
@@ -64,14 +64,14 @@ extern "C" {
|
|||||||
#endif//__cplusplus
|
#endif//__cplusplus
|
||||||
|
|
||||||
#if defined(HAVE_NEON)
|
#if defined(HAVE_NEON)
|
||||||
void SetNonZeroCount_neon (int16_t* pBlock, int8_t* pNonZeroCount);
|
void SetNonZeroCount_neon (int8_t* pNonZeroCount);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
}
|
}
|
||||||
#endif//__cplusplus
|
#endif//__cplusplus
|
||||||
|
|
||||||
void SetNonZeroCount_c (int16_t* pBlock, int8_t* pNonZeroCount);
|
void SetNonZeroCount_c (int8_t* pNonZeroCount);
|
||||||
|
|
||||||
void WelsBlockFuncInit (SBlockFunc* pFunc, int32_t iCpu);
|
void WelsBlockFuncInit (SBlockFunc* pFunc, int32_t iCpu);
|
||||||
|
|
||||||
|
|||||||
@@ -68,7 +68,7 @@ int32_t DecoderConfigParam (PWelsDecoderContext pCtx, const SDecodingParam* kpPa
|
|||||||
* \note N/A
|
* \note N/A
|
||||||
*************************************************************************************
|
*************************************************************************************
|
||||||
*/
|
*/
|
||||||
int32_t WelsInitDecoder (PWelsDecoderContext pCtx, void* pTraceHandle, PWelsLogCallbackFunc pLog);
|
int32_t WelsInitDecoder (PWelsDecoderContext pCtx, SLogContext* pLogCtx);
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
*************************************************************************************
|
*************************************************************************************
|
||||||
|
|||||||
@@ -53,15 +53,16 @@
|
|||||||
#include "as264_common.h" // for LONG_TERM_REF macro,can be delete if not need this macro
|
#include "as264_common.h" // for LONG_TERM_REF macro,can be delete if not need this macro
|
||||||
#include "crt_util_safe_x.h"
|
#include "crt_util_safe_x.h"
|
||||||
#include "mb_cache.h"
|
#include "mb_cache.h"
|
||||||
|
#include "expand_pic.h"
|
||||||
|
|
||||||
namespace WelsDec {
|
namespace WelsDec {
|
||||||
|
|
||||||
typedef struct TagDataBuffer {
|
typedef struct TagDataBuffer {
|
||||||
uint8_t* pHead;
|
uint8_t* pHead;
|
||||||
uint8_t* pEnd;
|
uint8_t* pEnd;
|
||||||
|
|
||||||
uint8_t* pStartPos;
|
uint8_t* pStartPos;
|
||||||
uint8_t* pCurPos;
|
uint8_t* pCurPos;
|
||||||
} SDataBuffer;
|
} SDataBuffer;
|
||||||
|
|
||||||
//#ifdef __cplusplus
|
//#ifdef __cplusplus
|
||||||
@@ -82,40 +83,40 @@ typedef void (*PExpandPictureFunc) (uint8_t* pDst, const int32_t kiStride, const
|
|||||||
|
|
||||||
/**/
|
/**/
|
||||||
typedef struct TagRefPic {
|
typedef struct TagRefPic {
|
||||||
PPicture pRefList[LIST_A][MAX_REF_PIC_COUNT]; // reference picture marking plus FIFO scheme
|
PPicture pRefList[LIST_A][MAX_REF_PIC_COUNT]; // reference picture marking plus FIFO scheme
|
||||||
PPicture pShortRefList[LIST_A][MAX_SHORT_REF_COUNT];
|
PPicture pShortRefList[LIST_A][MAX_SHORT_REF_COUNT];
|
||||||
PPicture pLongRefList[LIST_A][MAX_LONG_REF_COUNT];
|
PPicture pLongRefList[LIST_A][MAX_LONG_REF_COUNT];
|
||||||
uint8_t uiRefCount[LIST_A];
|
uint8_t uiRefCount[LIST_A];
|
||||||
uint8_t uiShortRefCount[LIST_A];
|
uint8_t uiShortRefCount[LIST_A];
|
||||||
uint8_t uiLongRefCount[LIST_A]; // dependend on ref pic module
|
uint8_t uiLongRefCount[LIST_A]; // dependend on ref pic module
|
||||||
int32_t iMaxLongTermFrameIdx;
|
int32_t iMaxLongTermFrameIdx;
|
||||||
} SRefPic, *PRefPic;
|
} SRefPic, *PRefPic;
|
||||||
|
|
||||||
typedef void (*PWelsMcFunc) (const uint8_t* pSrc, int32_t iSrcStride, uint8_t* pDst, int32_t iDstStride,
|
typedef void (*PWelsMcFunc) (const uint8_t* pSrc, int32_t iSrcStride, uint8_t* pDst, int32_t iDstStride,
|
||||||
int16_t iMvX, int16_t iMvY, int32_t iWidth, int32_t iHeight);
|
int16_t iMvX, int16_t iMvY, int32_t iWidth, int32_t iHeight);
|
||||||
typedef struct TagMcFunc {
|
typedef struct TagMcFunc {
|
||||||
PWelsMcFunc pMcLumaFunc;
|
PWelsMcFunc pMcLumaFunc;
|
||||||
PWelsMcFunc pMcChromaFunc;
|
PWelsMcFunc pMcChromaFunc;
|
||||||
} SMcFunc;
|
} SMcFunc;
|
||||||
|
|
||||||
typedef void (*PCopyFunc) (uint8_t* pDst, int32_t iStrideD, uint8_t* pSrc, int32_t iStrideS);
|
typedef void (*PCopyFunc) (uint8_t* pDst, int32_t iStrideD, uint8_t* pSrc, int32_t iStrideS);
|
||||||
typedef struct TagCopyFunc {
|
typedef struct TagCopyFunc {
|
||||||
PCopyFunc pCopyLumaFunc;
|
PCopyFunc pCopyLumaFunc;
|
||||||
PCopyFunc pCopyChromaFunc;
|
PCopyFunc pCopyChromaFunc;
|
||||||
} SCopyFunc;
|
} SCopyFunc;
|
||||||
|
|
||||||
//deblock module defination
|
//deblock module defination
|
||||||
struct TagDeblockingFunc;
|
struct TagDeblockingFunc;
|
||||||
|
|
||||||
typedef struct tagDeblockingFilter {
|
typedef struct tagDeblockingFilter {
|
||||||
uint8_t* pCsData[3]; // pointer to reconstructed picture data
|
uint8_t* pCsData[3]; // pointer to reconstructed picture data
|
||||||
int32_t iCsStride[2]; // Cs stride
|
int32_t iCsStride[2]; // Cs stride
|
||||||
ESliceType eSliceType;
|
EWelsSliceType eSliceType;
|
||||||
int8_t iSliceAlphaC0Offset;
|
int8_t iSliceAlphaC0Offset;
|
||||||
int8_t iSliceBetaOffset;
|
int8_t iSliceBetaOffset;
|
||||||
int8_t iChromaQP;
|
int8_t iChromaQP;
|
||||||
int8_t iLumaQP;
|
int8_t iLumaQP;
|
||||||
struct TagDeblockingFunc* pLoopf;
|
struct TagDeblockingFunc* pLoopf;
|
||||||
} SDeblockingFilter, *PDeblockingFilter;
|
} SDeblockingFilter, *PDeblockingFilter;
|
||||||
|
|
||||||
typedef void (*PDeblockingFilterMbFunc) (PDqLayer pCurDqLayer, PDeblockingFilter filter, int32_t boundry_flag);
|
typedef void (*PDeblockingFilterMbFunc) (PDqLayer pCurDqLayer, PDeblockingFilter filter, int32_t boundry_flag);
|
||||||
@@ -128,21 +129,21 @@ typedef void (*PChromaDeblockingEQ4Func) (uint8_t* iSampleCb, uint8_t* iSampleCr
|
|||||||
int32_t iBeta);
|
int32_t iBeta);
|
||||||
|
|
||||||
typedef struct TagDeblockingFunc {
|
typedef struct TagDeblockingFunc {
|
||||||
PLumaDeblockingLT4Func pfLumaDeblockingLT4Ver;
|
PLumaDeblockingLT4Func pfLumaDeblockingLT4Ver;
|
||||||
PLumaDeblockingEQ4Func pfLumaDeblockingEQ4Ver;
|
PLumaDeblockingEQ4Func pfLumaDeblockingEQ4Ver;
|
||||||
PLumaDeblockingLT4Func pfLumaDeblockingLT4Hor;
|
PLumaDeblockingLT4Func pfLumaDeblockingLT4Hor;
|
||||||
PLumaDeblockingEQ4Func pfLumaDeblockingEQ4Hor;
|
PLumaDeblockingEQ4Func pfLumaDeblockingEQ4Hor;
|
||||||
|
|
||||||
PChromaDeblockingLT4Func pfChromaDeblockingLT4Ver;
|
PChromaDeblockingLT4Func pfChromaDeblockingLT4Ver;
|
||||||
PChromaDeblockingEQ4Func pfChromaDeblockingEQ4Ver;
|
PChromaDeblockingEQ4Func pfChromaDeblockingEQ4Ver;
|
||||||
PChromaDeblockingLT4Func pfChromaDeblockingLT4Hor;
|
PChromaDeblockingLT4Func pfChromaDeblockingLT4Hor;
|
||||||
PChromaDeblockingEQ4Func pfChromaDeblockingEQ4Hor;
|
PChromaDeblockingEQ4Func pfChromaDeblockingEQ4Hor;
|
||||||
} SDeblockingFunc, *PDeblockingFunc;
|
} SDeblockingFunc, *PDeblockingFunc;
|
||||||
|
|
||||||
typedef void (*PWelsNonZeroCountFunc) (int16_t* pBlock, int8_t* pNonZeroCount);
|
typedef void (*PWelsNonZeroCountFunc) (int8_t* pNonZeroCount);
|
||||||
|
|
||||||
typedef struct TagBlockFunc {
|
typedef struct TagBlockFunc {
|
||||||
PWelsNonZeroCountFunc pWelsSetNonZeroCountFunc;
|
PWelsNonZeroCountFunc pWelsSetNonZeroCountFunc;
|
||||||
} SBlockFunc;
|
} SBlockFunc;
|
||||||
|
|
||||||
typedef void (*PWelsFillNeighborMbInfoIntra4x4Func) (PNeighAvail pNeighAvail, uint8_t* pNonZeroCount,
|
typedef void (*PWelsFillNeighborMbInfoIntra4x4Func) (PNeighAvail pNeighAvail, uint8_t* pNonZeroCount,
|
||||||
@@ -151,16 +152,11 @@ typedef int32_t (*PWelsParseIntra4x4ModeFunc) (PNeighAvail pNeighAvail, int8_t*
|
|||||||
PDqLayer pCurDqLayer);
|
PDqLayer pCurDqLayer);
|
||||||
typedef int32_t (*PWelsParseIntra16x16ModeFunc) (PNeighAvail pNeighAvail, PBitStringAux pBs, PDqLayer pCurDqLayer);
|
typedef int32_t (*PWelsParseIntra16x16ModeFunc) (PNeighAvail pNeighAvail, PBitStringAux pBs, PDqLayer pCurDqLayer);
|
||||||
|
|
||||||
typedef struct TagExpandPicFunc {
|
|
||||||
PExpandPictureFunc pExpandLumaPicture;
|
|
||||||
PExpandPictureFunc pExpandChromaPicture[2];
|
|
||||||
} SExpandPicFunc;
|
|
||||||
|
|
||||||
enum {
|
enum {
|
||||||
OVERWRITE_NONE = 0,
|
OVERWRITE_NONE = 0,
|
||||||
OVERWRITE_PPS = 1,
|
OVERWRITE_PPS = 1,
|
||||||
OVERWRITE_SPS = 1 << 1,
|
OVERWRITE_SPS = 1 << 1,
|
||||||
OVERWRITE_SUBSETSPS = 1 << 2
|
OVERWRITE_SUBSETSPS = 1 << 2
|
||||||
};
|
};
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@@ -168,39 +164,40 @@ enum {
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
typedef struct TagWelsDecoderContext {
|
typedef struct TagWelsDecoderContext {
|
||||||
// Input
|
SLogContext sLogCtx;
|
||||||
void* pArgDec; // structured arguments for decoder, reserved here for extension in the future
|
// Input
|
||||||
|
void* pArgDec; // structured arguments for decoder, reserved here for extension in the future
|
||||||
|
|
||||||
SDataBuffer sRawData;
|
SDataBuffer sRawData;
|
||||||
|
|
||||||
// Configuration
|
// Configuration
|
||||||
SDecodingParam* pParam;
|
SDecodingParam* pParam;
|
||||||
uint32_t uiCpuFlag; // CPU compatibility detected
|
uint32_t uiCpuFlag; // CPU compatibility detected
|
||||||
|
|
||||||
int32_t iOutputColorFormat; // color space format to be outputed
|
int32_t iOutputColorFormat; // color space format to be outputed
|
||||||
VIDEO_BITSTREAM_TYPE eVideoType; //indicate the type of video to decide whether or not to do qp_delta error detection.
|
VIDEO_BITSTREAM_TYPE eVideoType; //indicate the type of video to decide whether or not to do qp_delta error detection.
|
||||||
bool bErrorResilienceFlag; // error resilience flag
|
bool bErrorResilienceFlag; // error resilience flag
|
||||||
bool bHaveGotMemory; // global memory for decoder context related ever requested?
|
bool bHaveGotMemory; // global memory for decoder context related ever requested?
|
||||||
|
|
||||||
int32_t iImgWidthInPixel; // width of image in pixel reconstruction picture to be output
|
int32_t iImgWidthInPixel; // width of image in pixel reconstruction picture to be output
|
||||||
int32_t iImgHeightInPixel;// height of image in pixel reconstruction picture to be output
|
int32_t iImgHeightInPixel;// height of image in pixel reconstruction picture to be output
|
||||||
|
|
||||||
// Derived common elements
|
// Derived common elements
|
||||||
SNalUnitHeader sCurNalHead;
|
SNalUnitHeader sCurNalHead;
|
||||||
ESliceType eSliceType; // Slice type
|
EWelsSliceType eSliceType; // Slice type
|
||||||
int32_t iFrameNum;
|
int32_t iFrameNum;
|
||||||
int32_t iPrevFrameNum; // frame number of previous frame well decoded for non-truncated mode yet
|
int32_t iPrevFrameNum; // frame number of previous frame well decoded for non-truncated mode yet
|
||||||
bool bLastHasMmco5; //
|
bool bLastHasMmco5; //
|
||||||
int32_t iErrorCode; // error code return while decoding in case packets lost
|
int32_t iErrorCode; // error code return while decoding in case packets lost
|
||||||
SFmo sFmoList[MAX_PPS_COUNT]; // list for FMO storage
|
SFmo sFmoList[MAX_PPS_COUNT]; // list for FMO storage
|
||||||
PFmo pFmo; // current fmo context after parsed slice_header
|
PFmo pFmo; // current fmo context after parsed slice_header
|
||||||
int32_t iActiveFmoNum; // active count number of fmo context in list
|
int32_t iActiveFmoNum; // active count number of fmo context in list
|
||||||
|
|
||||||
/*needed info by decode slice level and mb level*/
|
/*needed info by decode slice level and mb level*/
|
||||||
int32_t
|
int32_t
|
||||||
iDecBlockOffsetArray[24]; // address talbe for sub 4x4 block in intra4x4_mb, so no need to caculta the address every time.
|
iDecBlockOffsetArray[24]; // address talbe for sub 4x4 block in intra4x4_mb, so no need to caculta the address every time.
|
||||||
|
|
||||||
struct {
|
struct {
|
||||||
int8_t* pMbType[LAYER_NUM_EXCHANGEABLE]; /* mb type */
|
int8_t* pMbType[LAYER_NUM_EXCHANGEABLE]; /* mb type */
|
||||||
int16_t (*pMv[LAYER_NUM_EXCHANGEABLE][LIST_A])[MB_BLOCK4x4_NUM][MV_A]; //[LAYER_NUM_EXCHANGEABLE MB_BLOCK4x4_NUM*]
|
int16_t (*pMv[LAYER_NUM_EXCHANGEABLE][LIST_A])[MB_BLOCK4x4_NUM][MV_A]; //[LAYER_NUM_EXCHANGEABLE MB_BLOCK4x4_NUM*]
|
||||||
int8_t (*pRefIndex[LAYER_NUM_EXCHANGEABLE][LIST_A])[MB_BLOCK4x4_NUM];
|
int8_t (*pRefIndex[LAYER_NUM_EXCHANGEABLE][LIST_A])[MB_BLOCK4x4_NUM];
|
||||||
@@ -221,119 +218,122 @@ typedef struct TagWelsDecoderContext {
|
|||||||
bool* pMbCorrectlyDecodedFlag[LAYER_NUM_EXCHANGEABLE];
|
bool* pMbCorrectlyDecodedFlag[LAYER_NUM_EXCHANGEABLE];
|
||||||
uint32_t iMbWidth;
|
uint32_t iMbWidth;
|
||||||
uint32_t iMbHeight;
|
uint32_t iMbHeight;
|
||||||
} sMb;
|
} sMb;
|
||||||
|
|
||||||
|
|
||||||
// reconstruction picture
|
// reconstruction picture
|
||||||
PPicture pDec; //pointer to current picture being reconstructed
|
PPicture pDec; //pointer to current picture being reconstructed
|
||||||
|
|
||||||
// reference pictures
|
// reference pictures
|
||||||
SRefPic sRefPic;
|
SRefPic sRefPic;
|
||||||
|
|
||||||
SVlcTable sVlcTable; // vlc table
|
SVlcTable sVlcTable; // vlc table
|
||||||
|
|
||||||
SBitStringAux sBs;
|
SBitStringAux sBs;
|
||||||
|
int32_t iMaxBsBufferSizeInByte; //actual memory size for BS buffer
|
||||||
|
|
||||||
/* Global memory external */
|
/* Global memory external */
|
||||||
|
|
||||||
SPosOffset sFrameCrop;
|
SPosOffset sFrameCrop;
|
||||||
|
|
||||||
SSps sSpsBuffer[MAX_SPS_COUNT + 1];
|
SSps sSpsBuffer[MAX_SPS_COUNT + 1];
|
||||||
SPps sPpsBuffer[MAX_PPS_COUNT + 1];
|
SPps sPpsBuffer[MAX_PPS_COUNT + 1];
|
||||||
PSliceHeader pSliceHeader;
|
PSliceHeader pSliceHeader;
|
||||||
|
|
||||||
PPicBuff pPicBuff[LIST_A]; // Initially allocated memory for pictures which are used in decoding.
|
PPicBuff pPicBuff[LIST_A]; // Initially allocated memory for pictures which are used in decoding.
|
||||||
int32_t iPicQueueNumber;
|
int32_t iPicQueueNumber;
|
||||||
|
|
||||||
SSubsetSps sSubsetSpsBuffer[MAX_SPS_COUNT + 1];
|
SSubsetSps sSubsetSpsBuffer[MAX_SPS_COUNT + 1];
|
||||||
SNalUnit sPrefixNal;
|
SNalUnit sPrefixNal;
|
||||||
|
|
||||||
PAccessUnit pAccessUnitList; // current access unit list to be performed
|
PAccessUnit pAccessUnitList; // current access unit list to be performed
|
||||||
PSps pActiveLayerSps[MAX_LAYER_NUM];
|
PSps pActiveLayerSps[MAX_LAYER_NUM];
|
||||||
PSps pSps; // used by current AU
|
PSps pSps; // used by current AU
|
||||||
PPps pPps; // used by current AU
|
PPps pPps; // used by current AU
|
||||||
// Memory for pAccessUnitList is dynamically held till decoder destruction.
|
// Memory for pAccessUnitList is dynamically held till decoder destruction.
|
||||||
PDqLayer pCurDqLayer; // current DQ layer representation, also carry reference base layer if applicable
|
PDqLayer pCurDqLayer; // current DQ layer representation, also carry reference base layer if applicable
|
||||||
PDqLayer pDqLayersList[LAYER_NUM_EXCHANGEABLE]; // DQ layers list with memory allocated
|
PDqLayer pDqLayersList[LAYER_NUM_EXCHANGEABLE]; // DQ layers list with memory allocated
|
||||||
|
|
||||||
int32_t iPicWidthReq; // picture width have requested the memory
|
int32_t iPicWidthReq; // picture width have requested the memory
|
||||||
int32_t iPicHeightReq; // picture height have requested the memory
|
int32_t iPicHeightReq; // picture height have requested the memory
|
||||||
|
|
||||||
uint8_t uiTargetDqId; // maximal DQ ID in current access unit, meaning target layer ID
|
uint8_t uiTargetDqId; // maximal DQ ID in current access unit, meaning target layer ID
|
||||||
bool bAvcBasedFlag; // For decoding bitstream:
|
bool bAvcBasedFlag; // For decoding bitstream:
|
||||||
bool bEndOfStreamFlag; // Flag on end of stream requested by external application layer
|
bool bEndOfStreamFlag; // Flag on end of stream requested by external application layer
|
||||||
bool bInitialDqLayersMem; // dq layers related memory is available?
|
bool bInstantDecFlag; // Flag for no-delay decoding
|
||||||
|
bool bInitialDqLayersMem; // dq layers related memory is available?
|
||||||
|
|
||||||
bool bOnlyOneLayerInCurAuFlag; //only one layer in current AU: 1
|
bool bOnlyOneLayerInCurAuFlag; //only one layer in current AU: 1
|
||||||
|
|
||||||
// for EC parameter sets
|
// for EC parameter sets
|
||||||
bool bSpsExistAheadFlag; // whether does SPS NAL exist ahead of sequence?
|
bool bSpsExistAheadFlag; // whether does SPS NAL exist ahead of sequence?
|
||||||
bool bSubspsExistAheadFlag;// whether does Subset SPS NAL exist ahead of sequence?
|
bool bSubspsExistAheadFlag;// whether does Subset SPS NAL exist ahead of sequence?
|
||||||
bool bPpsExistAheadFlag; // whether does PPS NAL exist ahead of sequence?
|
bool bPpsExistAheadFlag; // whether does PPS NAL exist ahead of sequence?
|
||||||
|
|
||||||
bool bSpsAvailFlags[MAX_SPS_COUNT];
|
bool bSpsAvailFlags[MAX_SPS_COUNT];
|
||||||
bool bSubspsAvailFlags[MAX_SPS_COUNT];
|
bool bSubspsAvailFlags[MAX_SPS_COUNT];
|
||||||
bool bPpsAvailFlags[MAX_PPS_COUNT];
|
bool bPpsAvailFlags[MAX_PPS_COUNT];
|
||||||
bool bReferenceLostAtT0Flag;
|
bool bReferenceLostAtT0Flag;
|
||||||
int32_t iTotalNumMbRec; //record current number of decoded MB
|
int32_t iTotalNumMbRec; //record current number of decoded MB
|
||||||
#ifdef LONG_TERM_REF
|
#ifdef LONG_TERM_REF
|
||||||
bool bParamSetsLostFlag; //sps or pps do not exist or not correct
|
bool bParamSetsLostFlag; //sps or pps do not exist or not correct
|
||||||
|
|
||||||
bool
|
bool
|
||||||
bCurAuContainLtrMarkSeFlag; //current AU has the LTR marking syntax element, mark the previous frame or self
|
bCurAuContainLtrMarkSeFlag; //current AU has the LTR marking syntax element, mark the previous frame or self
|
||||||
int32_t iFrameNumOfAuMarkedLtr; //if bCurAuContainLtrMarkSeFlag==true, SHOULD set this variable
|
int32_t iFrameNumOfAuMarkedLtr; //if bCurAuContainLtrMarkSeFlag==true, SHOULD set this variable
|
||||||
|
|
||||||
uint16_t uiCurIdrPicId;
|
uint16_t uiCurIdrPicId;
|
||||||
#endif
|
#endif
|
||||||
bool bNewSeqBegin;
|
bool bNewSeqBegin;
|
||||||
bool bNextNewSeqBegin;
|
bool bNextNewSeqBegin;
|
||||||
int iOverwriteFlags;
|
int iOverwriteFlags;
|
||||||
int32_t iErrorConMethod; //
|
int32_t iErrorConMethod; //
|
||||||
PPicture pPreviousDecodedPictureInDpb; //pointer to previously decoded picture in DPB for error concealment
|
PPicture pPreviousDecodedPictureInDpb; //pointer to previously decoded picture in DPB for error concealment
|
||||||
PGetIntraPredFunc pGetI16x16LumaPredFunc[7]; //h264_predict_copy_16x16;
|
PGetIntraPredFunc pGetI16x16LumaPredFunc[7]; //h264_predict_copy_16x16;
|
||||||
PGetIntraPredFunc pGetI4x4LumaPredFunc[14]; // h264_predict_4x4_t
|
PGetIntraPredFunc pGetI4x4LumaPredFunc[14]; // h264_predict_4x4_t
|
||||||
PGetIntraPredFunc pGetIChromaPredFunc[7]; // h264_predict_8x8_t
|
PGetIntraPredFunc pGetIChromaPredFunc[7]; // h264_predict_8x8_t
|
||||||
PIdctResAddPredFunc pIdctResAddPredFunc;
|
PIdctResAddPredFunc pIdctResAddPredFunc;
|
||||||
SMcFunc sMcFunc;
|
SMcFunc sMcFunc;
|
||||||
|
|
||||||
//For error concealment
|
//For error concealment
|
||||||
SCopyFunc sCopyFunc;
|
SCopyFunc sCopyFunc;
|
||||||
/* For Deblocking */
|
/* For Deblocking */
|
||||||
SDeblockingFunc sDeblockingFunc;
|
SDeblockingFunc sDeblockingFunc;
|
||||||
SExpandPicFunc sExpandPicFunc;
|
SExpandPicFunc sExpandPicFunc;
|
||||||
|
|
||||||
/* For Block */
|
/* For Block */
|
||||||
SBlockFunc sBlockFunc;
|
SBlockFunc sBlockFunc;
|
||||||
|
|
||||||
int32_t iCurSeqIntervalTargetDependId;
|
int32_t iCurSeqIntervalTargetDependId;
|
||||||
int32_t iCurSeqIntervalMaxPicWidth;
|
int32_t iCurSeqIntervalMaxPicWidth;
|
||||||
int32_t iCurSeqIntervalMaxPicHeight;
|
int32_t iCurSeqIntervalMaxPicHeight;
|
||||||
|
|
||||||
PWelsFillNeighborMbInfoIntra4x4Func pFillInfoCacheIntra4x4Func;
|
PWelsFillNeighborMbInfoIntra4x4Func pFillInfoCacheIntra4x4Func;
|
||||||
PWelsParseIntra4x4ModeFunc pParseIntra4x4ModeFunc;
|
PWelsParseIntra4x4ModeFunc pParseIntra4x4ModeFunc;
|
||||||
PWelsParseIntra16x16ModeFunc pParseIntra16x16ModeFunc;
|
PWelsParseIntra16x16ModeFunc pParseIntra16x16ModeFunc;
|
||||||
|
|
||||||
//feedback whether or not have VCL in current AU, and the temporal ID
|
//feedback whether or not have VCL in current AU, and the temporal ID
|
||||||
int32_t iFeedbackVclNalInAu;
|
int32_t iFeedbackVclNalInAu;
|
||||||
int32_t iFeedbackTidInAu;
|
int32_t iFeedbackTidInAu;
|
||||||
|
|
||||||
bool bAuReadyFlag; // true: one au is ready for decoding; false: default value
|
bool bAuReadyFlag; // true: one au is ready for decoding; false: default value
|
||||||
|
bool bDecErrorConedFlag; //true: current decoder is error coned
|
||||||
|
|
||||||
//trace handle
|
bool bPrintFrameErrorTraceFlag; //true: can print info for upper layer
|
||||||
void* pTraceHandle;
|
int32_t iIgnoredErrorInfoPacketCount; //store the packet number with error decoding info
|
||||||
|
//trace handle
|
||||||
|
void* pTraceHandle;
|
||||||
|
|
||||||
#ifdef NO_WAITING_AU
|
//Save the last nal header info
|
||||||
//Save the last nal header info
|
SNalUnitHeaderExt sLastNalHdrExt;
|
||||||
SNalUnitHeaderExt sLastNalHdrExt;
|
SSliceHeader sLastSliceHeader;
|
||||||
SSliceHeader sLastSliceHeader;
|
|
||||||
#endif
|
|
||||||
|
|
||||||
} SWelsDecoderContext, *PWelsDecoderContext;
|
} SWelsDecoderContext, *PWelsDecoderContext;
|
||||||
|
|
||||||
static inline void ResetActiveSPSForEachLayer (PWelsDecoderContext pCtx) {
|
static inline void ResetActiveSPSForEachLayer (PWelsDecoderContext pCtx) {
|
||||||
for (int i = 0; i < MAX_LAYER_NUM; i++) {
|
for (int i = 0; i < MAX_LAYER_NUM; i++) {
|
||||||
pCtx->pActiveLayerSps[i] = NULL;
|
pCtx->pActiveLayerSps[i] = NULL;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
//#ifdef __cplusplus
|
//#ifdef __cplusplus
|
||||||
//}
|
//}
|
||||||
|
|||||||
@@ -48,6 +48,28 @@
|
|||||||
#include "codec_def.h"
|
#include "codec_def.h"
|
||||||
|
|
||||||
namespace WelsDec {
|
namespace WelsDec {
|
||||||
|
/*
|
||||||
|
* InitBsBuffer
|
||||||
|
* Memory allocation for Bitstream Buffer
|
||||||
|
* return:
|
||||||
|
* 0 - success; otherwise returned error_no defined in error_no.h.
|
||||||
|
*/
|
||||||
|
int32_t InitBsBuffer (PWelsDecoderContext pCtx);
|
||||||
|
|
||||||
|
/*
|
||||||
|
* ExpandBsBuffer
|
||||||
|
* Expand current BS buffer and copy its content
|
||||||
|
* new buffer size will consider input size as a reference
|
||||||
|
* return:
|
||||||
|
* 0 - success; otherwise returned error_no defined in error_no.h.
|
||||||
|
*/
|
||||||
|
int32_t ExpandBsBuffer (PWelsDecoderContext pCtx, const int32_t kiSrcLen);
|
||||||
|
|
||||||
|
/*
|
||||||
|
* CheckBsBuffer
|
||||||
|
* Check if current buffer size is enough
|
||||||
|
*/
|
||||||
|
int32_t CheckBsBuffer (PWelsDecoderContext pCtx, const int32_t kiSrcLen);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* WelsInitMemory
|
* WelsInitMemory
|
||||||
@@ -56,7 +78,7 @@ namespace WelsDec {
|
|||||||
* rbsp_au_buffer, cur_dq_layer_ptr and ref_dq_layer_ptr in MB info cache.
|
* rbsp_au_buffer, cur_dq_layer_ptr and ref_dq_layer_ptr in MB info cache.
|
||||||
* return:
|
* return:
|
||||||
* 0 - success; otherwise returned error_no defined in error_no.h.
|
* 0 - success; otherwise returned error_no defined in error_no.h.
|
||||||
*/
|
*/
|
||||||
int32_t WelsInitMemory (PWelsDecoderContext pCtx);
|
int32_t WelsInitMemory (PWelsDecoderContext pCtx);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@@ -117,8 +139,12 @@ int32_t ConstructAccessUnit (PWelsDecoderContext pCtx, uint8_t** ppDst, SBufferI
|
|||||||
* DecodeCurrentAccessUnit
|
* DecodeCurrentAccessUnit
|
||||||
* Decode current access unit when current AU is completed.
|
* Decode current access unit when current AU is completed.
|
||||||
*/
|
*/
|
||||||
int32_t DecodeCurrentAccessUnit (PWelsDecoderContext pCtx, uint8_t** ppDst, int32_t* iDstLen, int32_t* pWidth,
|
int32_t DecodeCurrentAccessUnit (PWelsDecoderContext pCtx, uint8_t** ppDst, SBufferInfo* pDstInfo);
|
||||||
int32_t* pHeight, SBufferInfo* pDstInfo);
|
|
||||||
|
/*
|
||||||
|
* Check if frame is completed and EC is required
|
||||||
|
*/
|
||||||
|
bool CheckAndDoEC (PWelsDecoderContext pCtx, uint8_t** pDst, SBufferInfo* pDstInfo);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Prepare current dq layer context initialization.
|
* Prepare current dq layer context initialization.
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user