Merge mozilla-central to mozilla-inbound. a=merge CLOSED TREE

This commit is contained in:
Bogdan Tara 2018-09-20 07:17:01 +03:00
Родитель e6fabc8bd9 86023d88c4
Коммит 9b4a1c1a7e
582 изменённых файлов: 34182 добавлений и 15249 удалений

Просмотреть файл

@ -109,7 +109,22 @@ tasks:
dependencies: []
requires: all-completed
priority: lowest
priority:
# Most times, there is plenty of worker capacity so everything runs
# quickly, but sometimes a storm of action tasks lands. Then we
# want, from highest to lowest:
# - cron tasks (time-sensitive) (low)
# - decision tasks (minimize user-visible delay) (very-low)
# - action tasks (avoid interfering with the other two) (lowest)
# SCM levels all use different workerTypes, so there is no need for priority
# between levels; "low" is the highest priority available at all levels, and
# nothing runs at any higher priority on these workerTypes.
$if: "tasks_for == 'cron'"
then: low
else:
$if: "tasks_for == 'hg-push'"
then: very-low
else: lowest # tasks_for == 'action'
retries: 5
payload:

Просмотреть файл

@ -105,3 +105,6 @@ tags = mcb
support-files =
test_no_mcb_for_onions.html
[browser_check_identity_state.js]
[browser_iframe_navigation.js]
support-files =
iframe_navigation.html

Просмотреть файл

@ -0,0 +1,97 @@
/* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
/* vim: set ts=8 sts=2 et sw=2 tw=80: */
/* Any copyright is dedicated to the Public Domain.
* http://creativecommons.org/publicdomain/zero/1.0/ */
// Tests that the site identity icon and related machinery reflects the correct
// security state after navigating an iframe in various contexts.
// See bug 1490982.
const SECURE_TEST_URI =
"https://example.com/browser/browser/base/content/test/siteIdentity/iframe_navigation.html";
const INSECURE_TEST_URI =
"http://example.com/browser/browser/base/content/test/siteIdentity/iframe_navigation.html";
// From a secure URI, navigate the iframe to about:blank (should still be
// secure).
add_task(async function() {
let uri = SECURE_TEST_URI + "#blank";
await BrowserTestUtils.withNewTab(uri, async (browser) => {
let identityMode = window.document.getElementById("identity-box").className;
is(identityMode, "verifiedDomain", "identity should be secure before");
await ContentTask.spawn(browser, null, async () => {
content.postMessage("", "*"); // This kicks off the navigation.
await ContentTaskUtils.waitForCondition(() => {
return !content.document.body.classList.contains("running");
});
});
let newIdentityMode = window.document.getElementById("identity-box").className;
is(newIdentityMode, "verifiedDomain", "identity should be secure after");
});
});
// From a secure URI, navigate the iframe to an insecure URI (http://...)
// (mixed active content should be blocked, should still be secure).
add_task(async function() {
let uri = SECURE_TEST_URI + "#insecure";
await BrowserTestUtils.withNewTab(uri, async (browser) => {
let identityMode = window.document.getElementById("identity-box").className;
is(identityMode, "verifiedDomain", "identity should be secure before");
await ContentTask.spawn(browser, null, async () => {
content.postMessage("", "*"); // This kicks off the navigation.
await ContentTaskUtils.waitForCondition(() => {
return !content.document.body.classList.contains("running");
});
});
let newIdentityMode = window.document.getElementById("identity-box").classList;
ok(newIdentityMode.contains("mixedActiveBlocked"),
"identity should be blocked mixed active content after");
ok(newIdentityMode.contains("verifiedDomain"),
"identity should still contain 'verifiedDomain'");
is(newIdentityMode.length, 2, "shouldn't have any other identity states");
});
});
// From an insecure URI (http://..), navigate the iframe to about:blank (should
// still be insecure).
add_task(async function() {
let uri = INSECURE_TEST_URI + "#blank";
await BrowserTestUtils.withNewTab(uri, async (browser) => {
let identityMode = window.document.getElementById("identity-box").className;
is(identityMode, "unknownIdentity", "identity should be 'unknown' before");
await ContentTask.spawn(browser, null, async () => {
content.postMessage("", "*"); // This kicks off the navigation.
await ContentTaskUtils.waitForCondition(() => {
return !content.document.body.classList.contains("running");
});
});
let newIdentityMode = window.document.getElementById("identity-box").className;
is(newIdentityMode, "unknownIdentity", "identity should be 'unknown' after");
});
});
// From an insecure URI (http://..), navigate the iframe to a secure URI
// (https://...) (should still be insecure).
add_task(async function() {
let uri = INSECURE_TEST_URI + "#secure";
await BrowserTestUtils.withNewTab(uri, async (browser) => {
let identityMode = window.document.getElementById("identity-box").className;
is(identityMode, "unknownIdentity", "identity should be 'unknown' before");
await ContentTask.spawn(browser, null, async () => {
content.postMessage("", "*"); // This kicks off the navigation.
await ContentTaskUtils.waitForCondition(() => {
return !content.document.body.classList.contains("running");
});
});
let newIdentityMode = window.document.getElementById("identity-box").className;
is(newIdentityMode, "unknownIdentity", "identity should be 'unknown' after");
});
});

Просмотреть файл

@ -0,0 +1,43 @@
<!DOCTYPE html>
<!-- Any copyright is dedicated to the Public Domain.
- http://creativecommons.org/publicdomain/zero/1.0/ -->
<html>
<head>
<meta charset="UTF-8">
</head>
<body class="running">
<script>
window.addEventListener("message", doNavigation);
function doNavigation() {
let destination;
let destinationIdentifier = window.location.hash.substring(1);
switch (destinationIdentifier) {
case "blank":
destination = "about:blank";
break;
case "secure":
destination =
"https://example.com/browser/browser/base/content/test/siteIdentity/dummy_page.html";
break;
case "insecure":
destination =
"http://example.com/browser/browser/base/content/test/siteIdentity/dummy_page.html";
break;
}
setTimeout(() => {
let frame = document.getElementById("navigateMe");
frame.onload = done;
frame.onerror = done;
frame.src = destination;
}, 0);
}
function done() {
document.body.classList.toggle("running");
}
</script>
<iframe id="navigateMe" src="dummy_page.html">
</iframe>
</body>
</html>

Просмотреть файл

@ -444,12 +444,12 @@ function promisePopupEvent(aPopup, aEventSuffix) {
// This is a simpler version of the context menu check that
// exists in contextmenu_common.js.
function checkContextMenu(aContextMenu, aExpectedEntries, aWindow = window) {
let childNodes = [...aContextMenu.childNodes];
let children = [...aContextMenu.children];
// Ignore hidden nodes:
childNodes = childNodes.filter((n) => !n.hidden);
children = children.filter((n) => !n.hidden);
for (let i = 0; i < childNodes.length; i++) {
let menuitem = childNodes[i];
for (let i = 0; i < children.length; i++) {
let menuitem = children[i];
try {
if (aExpectedEntries[i][0] == "---") {
is(menuitem.localName, "menuseparator", "menuseparator expected");

Просмотреть файл

@ -125,8 +125,12 @@ export default class AddressForm extends PaymentStateSubscriberMixin(PaymentRequ
let editing = !!addressPage.guid;
this.cancelButton.textContent = this.dataset.cancelButtonLabel;
this.backButton.textContent = this.dataset.backButtonLabel;
this.saveButton.textContent = editing ? this.dataset.updateButtonLabel :
this.dataset.addButtonLabel;
if (page.onboardingWizard) {
this.saveButton.textContent = this.dataset.nextButtonLabel;
} else {
this.saveButton.textContent = editing ? this.dataset.updateButtonLabel :
this.dataset.addButtonLabel;
}
this.persistCheckbox.label = this.dataset.persistCheckboxLabel;
this.backButton.hidden = page.onboardingWizard;

Просмотреть файл

@ -127,8 +127,12 @@ export default class BasicCardForm extends PaymentStateSubscriberMixin(PaymentRe
let editing = !!basicCardPage.guid;
this.cancelButton.textContent = this.dataset.cancelButtonLabel;
this.backButton.textContent = this.dataset.backButtonLabel;
this.saveButton.textContent = editing ? this.dataset.updateButtonLabel :
this.dataset.addButtonLabel;
if (page.onboardingWizard) {
this.saveButton.textContent = this.dataset.nextButtonLabel;
} else {
this.saveButton.textContent = editing ? this.dataset.updateButtonLabel :
this.dataset.addButtonLabel;
}
this.persistCheckbox.label = this.dataset.persistCheckboxLabel;
this.addressAddLink.textContent = this.dataset.addressAddLinkLabel;
this.addressEditLink.textContent = this.dataset.addressEditLinkLabel;

Просмотреть файл

@ -47,7 +47,9 @@ export default class CompletionErrorPage extends PaymentStateSubscriberMixin(Pay
let {request} = this.requestStore.getState();
let {displayHost} = request.topLevelPrincipal.URI;
for (let key of ["pageTitle", "suggestion-heading", "suggestion-1", "suggestion-2"]) {
for (let key of [
"pageTitle", "suggestion-heading", "suggestion-1", "suggestion-2", "suggestion-3",
]) {
if (this.dataset[key]) {
this.dataset[key] = this.dataset[key].replace("**host-name**", displayHost);
}
@ -65,6 +67,9 @@ export default class CompletionErrorPage extends PaymentStateSubscriberMixin(Pay
if (this.dataset["suggestion-2"]) {
this.suggestions[1] = this.dataset["suggestion-2"];
}
if (this.dataset["suggestion-3"]) {
this.suggestions[2] = this.dataset["suggestion-3"];
}
let suggestionsFragment = document.createDocumentFragment();
for (let suggestionText of this.suggestions) {

Просмотреть файл

@ -55,18 +55,21 @@
<!ENTITY basicCardPage.addressEditLink.label "Edit">
<!ENTITY basicCardPage.backButton.label "Back">
<!ENTITY basicCardPage.addButton.label "Add">
<!ENTITY basicCardPage.nextButton.label "Next">
<!ENTITY basicCardPage.updateButton.label "Update">
<!ENTITY basicCardPage.persistCheckbox.label "Save credit card to &brandShortName; (Security code will not be saved)">
<!ENTITY addressPage.error.genericSave "There was an error saving the address.">
<!ENTITY addressPage.cancelButton.label "Cancel">
<!ENTITY addressPage.backButton.label "Back">
<!ENTITY addressPage.addButton.label "Add">
<!ENTITY addressPage.nextButton.label "Next">
<!ENTITY addressPage.updateButton.label "Update">
<!ENTITY addressPage.persistCheckbox.label "Save address to &brandShortName;">
<!ENTITY failErrorPage.title "We couldnt complete your payment to **host-name**">
<!ENTITY failErrorPage.suggestionHeading "The most likely cause is a hiccup with your credit card.">
<!ENTITY failErrorPage.suggestion1 "Make sure the card youre using hasnt expired">
<!ENTITY failErrorPage.suggestion2 "Double check the card number and expiration date">
<!ENTITY failErrorPage.suggestion3 "If your credit card information is correct, contact the merchant for more information">
<!ENTITY failErrorPage.doneButton.label "Close">
<!ENTITY timeoutErrorPage.title "**host-name** is taking too long to respond.">
<!ENTITY timeoutErrorPage.suggestionHeading "The most likely cause is a temporary connection hiccup. Open a new tab to check your network connection or click “Close” to try again.">
@ -182,6 +185,7 @@
data-billing-address-title-edit="&billingAddress.editPage.title;"
data-back-button-label="&basicCardPage.backButton.label;"
data-add-button-label="&basicCardPage.addButton.label;"
data-next-button-label="&basicCardPage.nextButton.label;"
data-update-button-label="&basicCardPage.updateButton.label;"
data-cancel-button-label="&cancelPaymentButton.label;"
data-persist-checkbox-label="&basicCardPage.persistCheckbox.label;"
@ -194,6 +198,7 @@
data-cancel-button-label="&addressPage.cancelButton.label;"
data-back-button-label="&addressPage.backButton.label;"
data-add-button-label="&addressPage.addButton.label;"
data-next-button-label="&addressPage.nextButton.label;"
data-update-button-label="&addressPage.updateButton.label;"
data-persist-checkbox-label="&addressPage.persistCheckbox.label;"
data-field-required-symbol="&fieldRequiredSymbol;"
@ -210,6 +215,7 @@
data-suggestion-heading="&failErrorPage.suggestionHeading;"
data-suggestion-1="&failErrorPage.suggestion1;"
data-suggestion-2="&failErrorPage.suggestion2;"
data-suggestion-3="&failErrorPage.suggestion3;"
data-branding-label="&webPaymentsBranding.label;"
data-done-button-label="&failErrorPage.doneButton.label;"
hidden="hidden"></completion-error-page>

Просмотреть файл

@ -142,6 +142,9 @@ add_task(async function test_edit_link() {
let title = content.document.querySelector("address-form h2");
is(title.textContent, "Edit Shipping Address", "Page title should be set");
let saveButton = content.document.querySelector("address-form .save-button");
is(saveButton.textContent, "Update", "Save button has the correct label");
});
let editOptions = {
@ -235,6 +238,9 @@ add_task(async function test_add_payer_contact_name_email_link() {
let title = content.document.querySelector("address-form h2");
is(title.textContent, "Add Payer Contact", "Page title should be set");
let saveButton = content.document.querySelector("address-form .save-button");
is(saveButton.textContent, "Add", "Save button has the correct label");
info("check that non-payer requested fields are hidden");
for (let selector of ["#organization", "#tel"]) {
let element = content.document.querySelector(selector);
@ -321,6 +327,9 @@ add_task(async function test_edit_payer_contact_name_email_phone_link() {
let title = content.document.querySelector("address-form h2");
is(title.textContent, "Edit Payer Contact", "Page title should be set");
let saveButton = content.document.querySelector("address-form .save-button");
is(saveButton.textContent, "Update", "Save button has the correct label");
info("check that non-payer requested fields are hidden");
let formElements =
content.document.querySelectorAll("address-form :-moz-any(input, select, textarea");

Просмотреть файл

@ -43,6 +43,9 @@ async function add_link(aOptions = {}) {
let title = content.document.querySelector("basic-card-form h2");
is(title.textContent, "Add Credit Card", "Add title should be set");
let saveButton = content.document.querySelector("basic-card-form .save-button");
is(saveButton.textContent, "Add", "Save button has the correct label");
is(state.isPrivate, testArgs.isPrivate,
"isPrivate flag has expected value when shown from a private/non-private session");
}, aOptions);
@ -400,6 +403,9 @@ add_task(async function test_edit_link() {
let title = content.document.querySelector("basic-card-form h2");
is(title.textContent, "Edit Credit Card", "Edit title should be set");
let saveButton = content.document.querySelector("basic-card-form .save-button");
is(saveButton.textContent, "Update", "Save button has the correct label");
let card = Object.assign({}, PTU.BasicCards.JohnDoe);
// cc-number cannot be modified
delete card["cc-number"];

Просмотреть файл

@ -43,6 +43,8 @@ add_task(async function test_onboarding_wizard_without_saved_addresses_and_saved
info("Checking if the address page has been rendered");
let addressSaveButton = content.document.querySelector("address-form .save-button");
ok(content.isVisible(addressSaveButton), "Address save button is rendered");
is(addressSaveButton.textContent, "Next",
"Address save button has the correct label during onboarding");
info("Check if the total header is visible on the address page during on-boarding");
let header = content.document.querySelector("header");
@ -74,6 +76,8 @@ add_task(async function test_onboarding_wizard_without_saved_addresses_and_saved
}, "Basic card page is shown after the address page during on boarding");
let cardSaveButton = content.document.querySelector("basic-card-form .save-button");
is(cardSaveButton.textContent, "Next",
"Card save button has the correct label during onboarding");
ok(content.isVisible(cardSaveButton), "Basic card page is rendered");
let basicCardTitle = content.document.querySelector("basic-card-form h2");

Просмотреть файл

@ -21,6 +21,7 @@ Test the completion-error-page component
data-suggestion-heading="Sample suggestion heading"
data-suggestion-1="Sample suggestion"
data-suggestion-2="Sample suggestion"
data-suggestion-3="Sample suggestion"
data-branding-label="Sample Brand"
data-done-button-label="OK"></completion-error-page>
</p>
@ -45,6 +46,8 @@ add_task(async function test_no_values() {
"Suggestion 1 set on page");
is(page.dataset["suggestion-2"], "Sample suggestion",
"Suggestion 2 set on page");
is(page.dataset["suggestion-3"], "Sample suggestion",
"Suggestion 3 set on page");
is(page.dataset.brandingLabel, "Sample Brand", "Branding string set");
page.dataset.pageTitle = "Oh noes! **host-name** is having an issue";

Просмотреть файл

@ -51,6 +51,7 @@
<ul>
<li>&aboutPrivateBrowsing.info.bookmarks;</li>
<li>&aboutPrivateBrowsing.info.downloads;</li>
<li>&aboutPrivateBrowsing.info.clipboard;</li>
</ul>
</div>
<p>&aboutPrivateBrowsing.note.before;<strong>&aboutPrivateBrowsing.note.emphasize;</strong>&aboutPrivateBrowsing.note.after;</p>

Просмотреть файл

@ -20,6 +20,7 @@
<!ENTITY aboutPrivateBrowsing.info.saved.after2 " your:">
<!ENTITY aboutPrivateBrowsing.info.downloads "downloads">
<!ENTITY aboutPrivateBrowsing.info.bookmarks "bookmarks">
<!ENTITY aboutPrivateBrowsing.info.clipboard "copied text">
<!ENTITY aboutPrivateBrowsing.note.before "Private Browsing ">
<!ENTITY aboutPrivateBrowsing.note.emphasize "doesnt make you anonymous">
<!ENTITY aboutPrivateBrowsing.note.after " on the Internet. Your employer or Internet service provider can still know what page you visit.">

Просмотреть файл

@ -4,12 +4,6 @@
"use strict";
const { BrowserLoader } =
ChromeUtils.import("resource://devtools/client/shared/browser-loader.js", {});
const { require } = BrowserLoader({
baseURI: "resource://devtools/client/aboutdebugging-new/",
window,
});
const Services = require("Services");
const { bindActionCreators } = require("devtools/client/shared/vendor/redux");
@ -96,15 +90,13 @@ const AboutDebugging = {
const state = this.store.getState();
L10nRegistry.removeSource("aboutdebugging");
// Call removeNetworkLocationsObserver before unwatchRuntime,
// follow up in Bug 1490950.
removeNetworkLocationsObserver(this.onNetworkLocationsUpdated);
const currentRuntimeId = state.runtimes.selectedRuntimeId;
if (currentRuntimeId) {
await this.actions.unwatchRuntime(currentRuntimeId);
}
removeNetworkLocationsObserver(this.onNetworkLocationsUpdated);
setDebugTargetCollapsibilities(state.ui.debugTargetCollapsibilities);
unmountComponentAtNode(this.mount);
},

Просмотреть файл

@ -7,7 +7,17 @@
<meta charset="utf-8" />
<link rel="stylesheet" href="chrome://global/skin/in-content/common.css" type="text/css"/>
<link rel="stylesheet" href="chrome://devtools/content/aboutdebugging-new/aboutdebugging.css"/>
<script src="chrome://devtools/content/aboutdebugging-new/aboutdebugging.js"></script>
<script>
"use strict";
const { BrowserLoader } =
ChromeUtils.import("resource://devtools/client/shared/browser-loader.js", {});
const { require } = BrowserLoader({
baseURI: "resource://devtools/client/aboutdebugging-new/",
window,
});
require("./aboutdebugging");
</script>
</head>
<body>
<div id="mount"></div>

Просмотреть файл

@ -2,6 +2,10 @@
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
DevToolsModules(
'aboutdebugging.js',
)
DIRS += [
'src',
]

Просмотреть файл

@ -89,7 +89,6 @@ devtools.jar:
content/aboutdebugging/aboutdebugging.css (aboutdebugging/aboutdebugging.css)
content/aboutdebugging-new/index.html (aboutdebugging-new/index.html)
content/aboutdebugging-new/aboutdebugging.css (aboutdebugging-new/aboutdebugging.css)
content/aboutdebugging-new/aboutdebugging.js (aboutdebugging-new/aboutdebugging.js)
# The following line is temporary until the strings for the new
# about:debugging feature stabilize.
content/aboutdebugging-new/tmp-locale/en-US/aboutdebugging.ftl (aboutdebugging-new/tmp-locale/en-US/aboutdebugging.notftl)

Просмотреть файл

@ -7565,8 +7565,8 @@ exports.CSS_PROPERTIES = {
"overflow": {
"isInherited": false,
"subproperties": [
"overflow-y",
"overflow-x"
"overflow-x",
"overflow-y"
],
"supports": [],
"values": [

Просмотреть файл

@ -1213,13 +1213,12 @@ ChromeTooltipListener::MouseMove(Event* aMouseEvent)
if (mTooltipTimer) {
mTooltipTimer->Cancel();
mTooltipTimer = nullptr;
}
if (!mShowingTooltip && !mTooltipShownOnce) {
if (!mShowingTooltip) {
nsIEventTarget* target = nullptr;
nsCOMPtr<EventTarget> eventTarget = aMouseEvent->GetComposedTarget();
if (eventTarget) {
if (nsCOMPtr<EventTarget> eventTarget = aMouseEvent->GetComposedTarget()) {
mPossibleTooltipNode = do_QueryInterface(eventTarget);
nsCOMPtr<nsIGlobalObject> global(eventTarget->GetOwnerGlobal());
if (global) {
@ -1365,7 +1364,9 @@ ChromeTooltipListener::sTooltipCallback(nsITimer* aTimer,
self->mPossibleTooltipNode, getter_Copies(tooltipText),
getter_Copies(directionText), &textFound);
if (textFound) {
if (textFound &&
(!self->mTooltipShownOnce ||
tooltipText != self->mLastShownTooltipText)) {
LayoutDeviceIntPoint screenDot = widget->WidgetToScreenOffset();
double scaleFactor = 1.0;
if (shell->GetPresContext()) {
@ -1377,6 +1378,7 @@ ChromeTooltipListener::sTooltipCallback(nsITimer* aTimer,
self->ShowTooltip(self->mMouseScreenX - screenDot.x / scaleFactor,
self->mMouseScreenY - screenDot.y / scaleFactor,
tooltipText, directionText);
self->mLastShownTooltipText = std::move(tooltipText);
}
}

Просмотреть файл

@ -174,12 +174,16 @@ private:
int32_t mMouseScreenY;
bool mShowingTooltip;
bool mTooltipShownOnce;
// The string of text that we last displayed.
nsString mLastShownTooltipText;
// The node hovered over that fired the timer. This may turn into the node
// that triggered the tooltip, but only if the timer ever gets around to
// firing. This is a strong reference, because the tooltip content can be
// destroyed while we're waiting for the tooltip to pup up, and we need to
// destroyed while we're waiting for the tooltip to pop up, and we need to
// detect that. It's set only when the tooltip timer is created and launched.
// The timer must either fire or be cancelled (or possibly released?), and we
// release this reference in each of those cases. So we don't leak.

Просмотреть файл

@ -26,15 +26,16 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=789773
*/
SimpleTest.waitForExplicitFinish();
var calledListenerForBrowserXUL = false;
var calledListenerForBrowserChromeURL = false;
var testProgressListener = {
START_DOC: Ci.nsIWebProgressListener.STATE_START | Ci.nsIWebProgressListener.STATE_IS_DOCUMENT,
onStateChange: function(wp, req, stateFlags, status) {
if (/browser.xul/.test(req.name)) {
let browserChromeFileName = AppConstants.BROWSER_CHROME_URL.split("/").reverse()[0];
if (req.name.includes(browserChromeFileName)) {
wp.DOMWindow; // Force the lazy creation of a DOM window.
calledListenerForBrowserXUL = true;
calledListenerForBrowserChromeURL = true;
}
if (/mozilla.xhtml/.test(req.name) && (stateFlags & Ci.nsIWebProgressListener.STATE_STOP))
if (req.name.includes("mozilla.xhtml") && (stateFlags & Ci.nsIWebProgressListener.STATE_STOP))
finishTest();
},
QueryInterface: function(iid) {
@ -56,7 +57,7 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=789773
function finishTest() {
webProgress.removeProgressListener(testProgressListener);
ok(true, "Loaded the popup window without spinning forever in the event loop!");
ok(calledListenerForBrowserXUL, "Should have called the progress listener for browser.xul");
ok(calledListenerForBrowserChromeURL, "Should have called the progress listener for browser.xul");
popup.close();
SimpleTest.finish();
}

Просмотреть файл

@ -1356,6 +1356,7 @@ class RTCPeerConnection {
}
addTransceiver(sendTrackOrKind, init) {
this._checkClosed();
let transceiver = this._addTransceiverNoEvents(sendTrackOrKind, init);
this.updateNegotiationNeeded();
return transceiver;

Просмотреть файл

@ -1778,21 +1778,16 @@ PeerConnectionWrapper.prototype = {
* The stats to check from this PeerConnectionWrapper
*/
checkStats : function(stats, twoMachines) {
const isWinXP = navigator.userAgent.includes("Windows NT 5.1");
// Use spec way of enumerating stats
var counters = {};
for (let [key, res] of stats) {
info("Checking stats for " + key + " : " + res);
// validate stats
ok(res.id == key, "Coherent stats id");
var nowish = Date.now() + 1000; // TODO: clock drift observed
var minimum = this.whenCreated - 1000; // on Windows XP (Bug 979649)
if (isWinXP) {
todo(false, "Can't reliably test rtcp timestamps on WinXP (Bug 979649)");
} else if (false) { // Bug 1325430 - timestamps aren't working properly in update 49
// else if (!twoMachines) {
var nowish = Date.now();
var minimum = this.whenCreated;
if (false) { // Bug 1325430 - timestamps aren't working properly in update 49
// if (!twoMachines) {
// Bug 1225729: On android, sometimes the first RTCP of the first
// test run gets this value, likely because no RTP has been sent yet.
if (res.timestamp != 2085978496000) {

Просмотреть файл

@ -20,7 +20,7 @@ function boom(){
o_2.style.MozBorderEndStyle = "dotted";
doc.style.MozPerspective = "24.5pt";
o_0.style.MozTransformStyle = "preserve-3d";
doc.style.overflow = "hidden scroll";
doc.style.overflow = "scroll hidden";
doc.style.textOverflow = "''";
o_0.style.offsetInlineStart = "calc(3*25px)";
doc.style.paddingTop = "calc(67108864%)";

Просмотреть файл

@ -549,7 +549,8 @@ IsBaselineEnabled(JSContext* cx)
#ifdef JS_CODEGEN_NONE
return false;
#else
return cx->options().baseline();
return cx->options().baseline() &&
cx->runtime()->jitSupportsFloatingPoint;
#endif
}

Просмотреть файл

@ -40,7 +40,7 @@ div {
#content {
-ms-overflow-style: none;
overflow: scroll hidden;
overflow: hidden scroll;
height: 100%;
background: #fefee0;
}

Просмотреть файл

@ -5,7 +5,7 @@
#opt1 { display: table-footer-group; }
#opt1 { visibility: collapse; }
#opt1 { overflow: scroll hidden; }
#opt1 { overflow: hidden scroll; }
#opt2 { display: table-cell; }
#opt2 { clear: left; }

Просмотреть файл

@ -6,7 +6,7 @@
body * {
display: table-footer-group;
overflow: scroll hidden;
overflow: hidden scroll;
}
</style>

Просмотреть файл

@ -9397,6 +9397,8 @@ nsDisplayPerspective::CreateWebRenderCommands(
Point3D roundedOrigin(NS_round(newOrigin.x), NS_round(newOrigin.y), 0);
gfx::Matrix4x4 transformForSC = gfx::Matrix4x4::Translation(roundedOrigin);
nsIFrame* perspectiveFrame = mFrame->GetContainingBlock(nsIFrame::SKIP_SCROLLED_FRAME);
nsTArray<mozilla::wr::WrFilterOp> filters;
StackingContextHelper sc(aSc,
@ -9410,7 +9412,7 @@ nsDisplayPerspective::CreateWebRenderCommands(
&perspectiveMatrix,
gfx::CompositionOp::OP_OVER,
!BackfaceIsHidden(),
true);
perspectiveFrame->Extend3DContext());
return mList.CreateWebRenderCommands(
aBuilder, aResources, sc, aManager, aDisplayListBuilder);

Просмотреть файл

@ -1866,7 +1866,7 @@ test-pref(dom.webcomponents.shadowdom.enabled,true) == 1066554-1.html 1066554-1-
== 1069716-1.html 1069716-1-ref.html
== 1078262-1.html about:blank
test-pref(layout.testing.overlay-scrollbars.always-visible,false) == 1081072-1.html 1081072-1-ref.html
== 1081185-1.html 1081185-1-ref.html
fuzzy-if(webrender,64-64,485-486) == 1081185-1.html 1081185-1-ref.html
== 1097437-1.html 1097437-1-ref.html
== 1103258-1.html 1103258-1-ref.html # assertion crash test with layers culling test
== 1105137-1.html 1105137-1-ref.html

Просмотреть файл

@ -87,7 +87,7 @@ fuzzy-if(webrender,0-1,0-16) == mask-layer-3.html mask-layer-ref.html
== split-intersect1.html split-intersect1-ref.html
fuzzy(0-255,0-150) == split-intersect2.html split-intersect2-ref.html
fuzzy(0-255,0-100) == split-non-ortho1.html split-non-ortho1-ref.html
fuzzy-if(winWidget,0-150,0-120) fuzzy-if(webrender&&cocoaWidget,99-99,133-133) == component-alpha-1.html component-alpha-1-ref.html
fuzzy-if(winWidget,0-150,0-120) == component-alpha-1.html component-alpha-1-ref.html
== nested-transform-1.html nested-transform-1-ref.html
== transform-geometry-1.html transform-geometry-1-ref.html
== intermediate-1.html intermediate-1-ref.html

Просмотреть файл

@ -3854,21 +3854,21 @@ nsComputedDOMStyle::DoGetOverflow()
{
const nsStyleDisplay* display = StyleDisplay();
RefPtr<nsROCSSPrimitiveValue> overflowY = new nsROCSSPrimitiveValue;
overflowY->SetIdent(
nsCSSProps::ValueToKeywordEnum(display->mOverflowY,
nsCSSProps::kOverflowKTable));
if (display->mOverflowX == display->mOverflowY) {
return overflowY.forget();
}
RefPtr<nsDOMCSSValueList> valueList = GetROCSSValueList(false);
valueList->AppendCSSValue(overflowY.forget());
RefPtr<nsROCSSPrimitiveValue> overflowX = new nsROCSSPrimitiveValue;
overflowX->SetIdent(
nsCSSProps::ValueToKeywordEnum(display->mOverflowX,
nsCSSProps::kOverflowKTable));
if (display->mOverflowX == display->mOverflowY) {
return overflowX.forget();
}
RefPtr<nsDOMCSSValueList> valueList = GetROCSSValueList(false);
valueList->AppendCSSValue(overflowX.forget());
RefPtr<nsROCSSPrimitiveValue> overflowY= new nsROCSSPrimitiveValue;
overflowY->SetIdent(
nsCSSProps::ValueToKeywordEnum(display->mOverflowY,
nsCSSProps::kOverflowKTable));
valueList->AppendCSSValue(overflowY.forget());
return valueList.forget();
}

Просмотреть файл

@ -38,14 +38,14 @@ if (SpecialPowers.getBoolPref("layout.css.overflow.moz-scrollbars.enabled")) {
$('t').style.overflow = mozVals[0];
is($('t').style.getPropertyValue("overflow-y"), "scroll", "Roundtrip");
is($('t').style.getPropertyValue("overflow-x"), "hidden", "Roundtrip");
is($('t').style.overflow, "scroll hidden", "Shorthand read directly");
is(c(), "scroll hidden", "Shorthand computed");
is($('t').style.overflow, "hidden scroll", "Shorthand read directly");
is(c(), "hidden scroll", "Shorthand computed");
$('t').style.overflow = mozVals[1];
is($('t').style.getPropertyValue("overflow-x"), "scroll", "Roundtrip");
is($('t').style.getPropertyValue("overflow-y"), "hidden", "Roundtrip");
is($('t').style.overflow, "hidden scroll", "Shorthand read directly");
is(c(), "hidden scroll", "Shorthand computed");
is($('t').style.overflow, "scroll hidden", "Shorthand read directly");
is(c(), "scroll hidden", "Shorthand computed");
}
for (i = 0; i < vals.length; ++i) {
@ -58,7 +58,7 @@ for (i = 0; i < vals.length; ++i) {
if (i == j) {
is($('t').style.overflow, vals[i], "Shorthand serialization");
} else {
is($('t').style.overflow, vals[j] + " " + vals[i], "Shorthand serialization");
is($('t').style.overflow, vals[i] + " " + vals[j], "Shorthand serialization");
}
// "visible" overflow-x and overflow-y become "auto" in computed style if
@ -70,7 +70,7 @@ for (i = 0; i < vals.length; ++i) {
} else {
let x = vals[i] == "visible" ? "auto" : vals[i];
let y = vals[j] == "visible" ? "auto" : vals[j];
is(c(), y + " " + x, "Shorthand computation");
is(c(), x + " " + y, "Shorthand computation");
}
}
}

Просмотреть файл

@ -22,4 +22,4 @@ To update to a fork, use
The last update was pulled from https://aomedia.googlesource.com/aom/
The git commit ID used was b25610052a1398032320008d69b51d2da94f5928 (Mon Jul 23 18:08:58 2018 +0000).
The git commit ID used was 1e227d41f0616de9548a673a83a21ef990b62591 (Tue Sep 18 17:30:35 2018 +0000).

Просмотреть файл

@ -161,6 +161,21 @@ def evaluate(variables, cache_variables, parsed):
cache_variables.append(variable)
except ValueError:
variables[variable] = ' '.join(values)
# we need to emulate the behavior of these function calls
# because we don't support interpreting them directly
# see bug 1492292
elif command in ['set_aom_config_var', 'set_aom_detect_var']:
variable = arguments[0]
value = arguments[1]
if variable not in variables:
variables[variable] = value
cache_variables.append(variable)
elif command == 'set_aom_option_var':
# option vars cannot go into cache_variables
variable = arguments[0]
value = arguments[2]
if variable not in variables:
variables[variable] = value
elif command == 'add_asm_library':
try:
sources.extend(variables[arguments[1]].split(' '))

Просмотреть файл

@ -14,6 +14,7 @@ ARCH_MIPS equ 0
ARCH_PPC equ 0
ARCH_X86 equ 0
ARCH_X86_64 equ 0
CONFIG_2PASS_PARTITION_SEARCH_LVL equ 1
CONFIG_ACCOUNTING equ 0
CONFIG_ANALYZER equ 0
CONFIG_AV1_DECODER equ 1
@ -21,30 +22,35 @@ CONFIG_AV1_ENCODER equ 0
CONFIG_BIG_ENDIAN equ 0
CONFIG_BITSTREAM_DEBUG equ 0
CONFIG_COEFFICIENT_RANGE_CHECKING equ 0
CONFIG_COLLECT_INTER_MODE_RD_STATS equ 1
CONFIG_COLLECT_INTER_MODE_RD_STATS equ 0
CONFIG_COLLECT_RD_STATS equ 0
CONFIG_DEBUG equ 0
CONFIG_DENOISE equ 0
CONFIG_DIST_8X8 equ 1
CONFIG_DENOISE equ 1
CONFIG_DIST_8X8 equ 0
CONFIG_ENTROPY_STATS equ 0
CONFIG_FILEOPTIONS equ 1
CONFIG_FIX_GF_LENGTH equ 1
CONFIG_FP_MB_STATS equ 0
CONFIG_GCC equ 1
CONFIG_GCOV equ 0
CONFIG_GLOBAL_MOTION_SEARCH equ 1
CONFIG_GPROF equ 0
CONFIG_INSPECTION equ 0
CONFIG_INTERNAL_STATS equ 0
CONFIG_INTER_STATS_ONLY equ 0
CONFIG_LIBYUV equ 0
CONFIG_LOWBITDEPTH equ 0
CONFIG_LOWBITDEPTH equ 1
CONFIG_MAX_DECODE_PROFILE equ 2
CONFIG_MISMATCH_DEBUG equ 0
CONFIG_MSVS equ 0
CONFIG_MULTITHREAD equ 1
CONFIG_NORMAL_TILE_MODE equ 0
CONFIG_OS_SUPPORT equ 1
CONFIG_PIC equ 0
CONFIG_RD_DEBUG equ 0
CONFIG_REDUCED_ENCODER_BORDER equ 0
CONFIG_RUNTIME_CPU_DETECT equ 1
CONFIG_SHARED equ 0
CONFIG_SHARP_SETTINGS equ 0
CONFIG_SIZE_LIMIT equ 0
CONFIG_SPATIAL_RESAMPLING equ 1
CONFIG_STATIC equ 1

Просмотреть файл

@ -16,6 +16,7 @@
#define ARCH_PPC 0
#define ARCH_X86 0
#define ARCH_X86_64 0
#define CONFIG_2PASS_PARTITION_SEARCH_LVL 1
#define CONFIG_ACCOUNTING 0
#define CONFIG_ANALYZER 0
#define CONFIG_AV1_DECODER 1
@ -23,30 +24,35 @@
#define CONFIG_BIG_ENDIAN 0
#define CONFIG_BITSTREAM_DEBUG 0
#define CONFIG_COEFFICIENT_RANGE_CHECKING 0
#define CONFIG_COLLECT_INTER_MODE_RD_STATS 1
#define CONFIG_COLLECT_INTER_MODE_RD_STATS 0
#define CONFIG_COLLECT_RD_STATS 0
#define CONFIG_DEBUG 0
#define CONFIG_DENOISE 0
#define CONFIG_DIST_8X8 1
#define CONFIG_DENOISE 1
#define CONFIG_DIST_8X8 0
#define CONFIG_ENTROPY_STATS 0
#define CONFIG_FILEOPTIONS 1
#define CONFIG_FIX_GF_LENGTH 1
#define CONFIG_FP_MB_STATS 0
#define CONFIG_GCC 1
#define CONFIG_GCOV 0
#define CONFIG_GLOBAL_MOTION_SEARCH 1
#define CONFIG_GPROF 0
#define CONFIG_INSPECTION 0
#define CONFIG_INTERNAL_STATS 0
#define CONFIG_INTER_STATS_ONLY 0
#define CONFIG_LIBYUV 0
#define CONFIG_LOWBITDEPTH 0
#define CONFIG_LOWBITDEPTH 1
#define CONFIG_MAX_DECODE_PROFILE 2
#define CONFIG_MISMATCH_DEBUG 0
#define CONFIG_MSVS 0
#define CONFIG_MULTITHREAD 1
#define CONFIG_NORMAL_TILE_MODE 0
#define CONFIG_OS_SUPPORT 1
#define CONFIG_PIC 0
#define CONFIG_RD_DEBUG 0
#define CONFIG_REDUCED_ENCODER_BORDER 0
#define CONFIG_RUNTIME_CPU_DETECT 1
#define CONFIG_SHARED 0
#define CONFIG_SHARP_SETTINGS 0
#define CONFIG_SIZE_LIMIT 0
#define CONFIG_SPATIAL_RESAMPLING 1
#define CONFIG_STATIC 1

Просмотреть файл

@ -1,6 +1,6 @@
// This file is generated. Do not edit.
#ifndef AOM_RTCD_H_
#define AOM_RTCD_H_
#ifndef AV1_RTCD_H_
#define AV1_RTCD_H_
#ifdef RTCD_C
#define RTCD_EXTERN
@ -141,6 +141,27 @@ void av1_highbd_dr_prediction_z2_c(uint16_t *dst, ptrdiff_t stride, int bw, int
void av1_highbd_dr_prediction_z3_c(uint16_t *dst, ptrdiff_t stride, int bw, int bh, const uint16_t *above, const uint16_t *left, int upsample_left, int dx, int dy, int bd);
#define av1_highbd_dr_prediction_z3 av1_highbd_dr_prediction_z3_c
void av1_highbd_inv_txfm_add_c(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
#define av1_highbd_inv_txfm_add av1_highbd_inv_txfm_add_c
void av1_highbd_inv_txfm_add_16x16_c(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
#define av1_highbd_inv_txfm_add_16x16 av1_highbd_inv_txfm_add_16x16_c
void av1_highbd_inv_txfm_add_16x8_c(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
#define av1_highbd_inv_txfm_add_16x8 av1_highbd_inv_txfm_add_16x8_c
void av1_highbd_inv_txfm_add_32x32_c(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
#define av1_highbd_inv_txfm_add_32x32 av1_highbd_inv_txfm_add_32x32_c
void av1_highbd_inv_txfm_add_4x4_c(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
#define av1_highbd_inv_txfm_add_4x4 av1_highbd_inv_txfm_add_4x4_c
void av1_highbd_inv_txfm_add_8x16_c(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
#define av1_highbd_inv_txfm_add_8x16 av1_highbd_inv_txfm_add_8x16_c
void av1_highbd_inv_txfm_add_8x8_c(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
#define av1_highbd_inv_txfm_add_8x8 av1_highbd_inv_txfm_add_8x8_c
void av1_highbd_iwht4x4_16_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride, int bd);
#define av1_highbd_iwht4x4_16_add av1_highbd_iwht4x4_16_add_c
@ -237,9 +258,9 @@ void av1_jnt_convolve_x_c(const uint8_t *src, int src_stride, uint8_t *dst, int
void av1_jnt_convolve_y_c(const uint8_t *src, int src_stride, uint8_t *dst, int dst_stride, int w, int h, const InterpFilterParams *filter_params_x, const InterpFilterParams *filter_params_y, const int subpel_x_q4, const int subpel_y_q4, ConvolveParams *conv_params);
#define av1_jnt_convolve_y av1_jnt_convolve_y_c
void av1_selfguided_restoration_c(const uint8_t *dgd8, int width, int height,
int dgd_stride, int32_t *flt0, int32_t *flt1, int flt_stride,
int sgr_params_idx, int bit_depth, int highbd);
int av1_selfguided_restoration_c(const uint8_t *dgd8, int width, int height,
int dgd_stride, int32_t *flt0, int32_t *flt1, int flt_stride,
int sgr_params_idx, int bit_depth, int highbd);
#define av1_selfguided_restoration av1_selfguided_restoration_c
void av1_upsample_intra_edge_c(uint8_t *p, int sz);
@ -293,7 +314,7 @@ cfl_predict_lbd_fn get_predict_lbd_fn_c(TX_SIZE tx_size);
cfl_subtract_average_fn get_subtract_average_fn_c(TX_SIZE tx_size);
#define get_subtract_average_fn get_subtract_average_fn_c
void aom_rtcd(void);
void av1_rtcd(void);
#include "config/aom_config.h"

Просмотреть файл

@ -14,6 +14,7 @@
.equ ARCH_PPC, 0
.equ ARCH_X86, 0
.equ ARCH_X86_64, 0
.equ CONFIG_2PASS_PARTITION_SEARCH_LVL, 1
.equ CONFIG_ACCOUNTING, 0
.equ CONFIG_ANALYZER, 0
.equ CONFIG_AV1_DECODER, 1
@ -21,30 +22,35 @@
.equ CONFIG_BIG_ENDIAN, 0
.equ CONFIG_BITSTREAM_DEBUG, 0
.equ CONFIG_COEFFICIENT_RANGE_CHECKING, 0
.equ CONFIG_COLLECT_INTER_MODE_RD_STATS, 1
.equ CONFIG_COLLECT_INTER_MODE_RD_STATS, 0
.equ CONFIG_COLLECT_RD_STATS, 0
.equ CONFIG_DEBUG, 0
.equ CONFIG_DENOISE, 0
.equ CONFIG_DIST_8X8, 1
.equ CONFIG_DENOISE, 1
.equ CONFIG_DIST_8X8, 0
.equ CONFIG_ENTROPY_STATS, 0
.equ CONFIG_FILEOPTIONS, 1
.equ CONFIG_FIX_GF_LENGTH, 1
.equ CONFIG_FP_MB_STATS, 0
.equ CONFIG_GCC, 1
.equ CONFIG_GCOV, 0
.equ CONFIG_GLOBAL_MOTION_SEARCH, 1
.equ CONFIG_GPROF, 0
.equ CONFIG_INSPECTION, 0
.equ CONFIG_INTERNAL_STATS, 0
.equ CONFIG_INTER_STATS_ONLY, 0
.equ CONFIG_LIBYUV, 0
.equ CONFIG_LOWBITDEPTH, 0
.equ CONFIG_LOWBITDEPTH, 1
.equ CONFIG_MAX_DECODE_PROFILE, 2
.equ CONFIG_MISMATCH_DEBUG, 0
.equ CONFIG_MSVS, 0
.equ CONFIG_MULTITHREAD, 1
.equ CONFIG_NORMAL_TILE_MODE, 0
.equ CONFIG_OS_SUPPORT, 1
.equ CONFIG_PIC, 0
.equ CONFIG_PIC, 1
.equ CONFIG_RD_DEBUG, 0
.equ CONFIG_REDUCED_ENCODER_BORDER, 0
.equ CONFIG_RUNTIME_CPU_DETECT, 1
.equ CONFIG_SHARED, 0
.equ CONFIG_SHARP_SETTINGS, 0
.equ CONFIG_SIZE_LIMIT, 0
.equ CONFIG_SPATIAL_RESAMPLING, 1
.equ CONFIG_STATIC, 1

Просмотреть файл

@ -16,6 +16,7 @@
#define ARCH_PPC 0
#define ARCH_X86 0
#define ARCH_X86_64 0
#define CONFIG_2PASS_PARTITION_SEARCH_LVL 1
#define CONFIG_ACCOUNTING 0
#define CONFIG_ANALYZER 0
#define CONFIG_AV1_DECODER 1
@ -23,30 +24,35 @@
#define CONFIG_BIG_ENDIAN 0
#define CONFIG_BITSTREAM_DEBUG 0
#define CONFIG_COEFFICIENT_RANGE_CHECKING 0
#define CONFIG_COLLECT_INTER_MODE_RD_STATS 1
#define CONFIG_COLLECT_INTER_MODE_RD_STATS 0
#define CONFIG_COLLECT_RD_STATS 0
#define CONFIG_DEBUG 0
#define CONFIG_DENOISE 0
#define CONFIG_DIST_8X8 1
#define CONFIG_DENOISE 1
#define CONFIG_DIST_8X8 0
#define CONFIG_ENTROPY_STATS 0
#define CONFIG_FILEOPTIONS 1
#define CONFIG_FIX_GF_LENGTH 1
#define CONFIG_FP_MB_STATS 0
#define CONFIG_GCC 1
#define CONFIG_GCOV 0
#define CONFIG_GLOBAL_MOTION_SEARCH 1
#define CONFIG_GPROF 0
#define CONFIG_INSPECTION 0
#define CONFIG_INTERNAL_STATS 0
#define CONFIG_INTER_STATS_ONLY 0
#define CONFIG_LIBYUV 0
#define CONFIG_LOWBITDEPTH 0
#define CONFIG_LOWBITDEPTH 1
#define CONFIG_MAX_DECODE_PROFILE 2
#define CONFIG_MISMATCH_DEBUG 0
#define CONFIG_MSVS 0
#define CONFIG_MULTITHREAD 1
#define CONFIG_NORMAL_TILE_MODE 0
#define CONFIG_OS_SUPPORT 1
#define CONFIG_PIC 0
#define CONFIG_PIC 1
#define CONFIG_RD_DEBUG 0
#define CONFIG_REDUCED_ENCODER_BORDER 0
#define CONFIG_RUNTIME_CPU_DETECT 1
#define CONFIG_SHARED 0
#define CONFIG_SHARP_SETTINGS 0
#define CONFIG_SIZE_LIMIT 0
#define CONFIG_SPATIAL_RESAMPLING 1
#define CONFIG_STATIC 1

Просмотреть файл

@ -1412,7 +1412,7 @@ void aom_dsp_rtcd(void);
#include "aom_ports/arm.h"
static void setup_rtcd_internal(void)
{
int flags = arm_cpu_caps();
int flags = aom_arm_cpu_caps();
(void)flags;

Просмотреть файл

@ -76,7 +76,7 @@ void aom_scale_rtcd(void);
#include "aom_ports/arm.h"
static void setup_rtcd_internal(void)
{
int flags = arm_cpu_caps();
int flags = aom_arm_cpu_caps();
(void)flags;

Просмотреть файл

@ -1,6 +1,6 @@
// This file is generated. Do not edit.
#ifndef AOM_RTCD_H_
#define AOM_RTCD_H_
#ifndef AV1_RTCD_H_
#define AV1_RTCD_H_
#ifdef RTCD_C
#define RTCD_EXTERN
@ -147,6 +147,27 @@ void av1_highbd_dr_prediction_z2_c(uint16_t *dst, ptrdiff_t stride, int bw, int
void av1_highbd_dr_prediction_z3_c(uint16_t *dst, ptrdiff_t stride, int bw, int bh, const uint16_t *above, const uint16_t *left, int upsample_left, int dx, int dy, int bd);
#define av1_highbd_dr_prediction_z3 av1_highbd_dr_prediction_z3_c
void av1_highbd_inv_txfm_add_c(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
#define av1_highbd_inv_txfm_add av1_highbd_inv_txfm_add_c
void av1_highbd_inv_txfm_add_16x16_c(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
#define av1_highbd_inv_txfm_add_16x16 av1_highbd_inv_txfm_add_16x16_c
void av1_highbd_inv_txfm_add_16x8_c(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
#define av1_highbd_inv_txfm_add_16x8 av1_highbd_inv_txfm_add_16x8_c
void av1_highbd_inv_txfm_add_32x32_c(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
#define av1_highbd_inv_txfm_add_32x32 av1_highbd_inv_txfm_add_32x32_c
void av1_highbd_inv_txfm_add_4x4_c(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
#define av1_highbd_inv_txfm_add_4x4 av1_highbd_inv_txfm_add_4x4_c
void av1_highbd_inv_txfm_add_8x16_c(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
#define av1_highbd_inv_txfm_add_8x16 av1_highbd_inv_txfm_add_8x16_c
void av1_highbd_inv_txfm_add_8x8_c(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
#define av1_highbd_inv_txfm_add_8x8 av1_highbd_inv_txfm_add_8x8_c
void av1_highbd_iwht4x4_16_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride, int bd);
#define av1_highbd_iwht4x4_16_add av1_highbd_iwht4x4_16_add_c
@ -248,15 +269,15 @@ void av1_jnt_convolve_y_c(const uint8_t *src, int src_stride, uint8_t *dst, int
void av1_jnt_convolve_y_neon(const uint8_t *src, int src_stride, uint8_t *dst, int dst_stride, int w, int h, const InterpFilterParams *filter_params_x, const InterpFilterParams *filter_params_y, const int subpel_x_q4, const int subpel_y_q4, ConvolveParams *conv_params);
RTCD_EXTERN void (*av1_jnt_convolve_y)(const uint8_t *src, int src_stride, uint8_t *dst, int dst_stride, int w, int h, const InterpFilterParams *filter_params_x, const InterpFilterParams *filter_params_y, const int subpel_x_q4, const int subpel_y_q4, ConvolveParams *conv_params);
void av1_selfguided_restoration_c(const uint8_t *dgd8, int width, int height,
int dgd_stride, int32_t *flt0, int32_t *flt1, int flt_stride,
int sgr_params_idx, int bit_depth, int highbd);
void av1_selfguided_restoration_neon(const uint8_t *dgd8, int width, int height,
int dgd_stride, int32_t *flt0, int32_t *flt1, int flt_stride,
int sgr_params_idx, int bit_depth, int highbd);
RTCD_EXTERN void (*av1_selfguided_restoration)(const uint8_t *dgd8, int width, int height,
int dgd_stride, int32_t *flt0, int32_t *flt1, int flt_stride,
int sgr_params_idx, int bit_depth, int highbd);
int av1_selfguided_restoration_c(const uint8_t *dgd8, int width, int height,
int dgd_stride, int32_t *flt0, int32_t *flt1, int flt_stride,
int sgr_params_idx, int bit_depth, int highbd);
int av1_selfguided_restoration_neon(const uint8_t *dgd8, int width, int height,
int dgd_stride, int32_t *flt0, int32_t *flt1, int flt_stride,
int sgr_params_idx, int bit_depth, int highbd);
RTCD_EXTERN int (*av1_selfguided_restoration)(const uint8_t *dgd8, int width, int height,
int dgd_stride, int32_t *flt0, int32_t *flt1, int flt_stride,
int sgr_params_idx, int bit_depth, int highbd);
void av1_upsample_intra_edge_c(uint8_t *p, int sz);
#define av1_upsample_intra_edge av1_upsample_intra_edge_c
@ -265,7 +286,8 @@ void av1_upsample_intra_edge_high_c(uint16_t *p, int sz, int bd);
#define av1_upsample_intra_edge_high av1_upsample_intra_edge_high_c
void av1_warp_affine_c(const int32_t *mat, const uint8_t *ref, int width, int height, int stride, uint8_t *pred, int p_col, int p_row, int p_width, int p_height, int p_stride, int subsampling_x, int subsampling_y, ConvolveParams *conv_params, int16_t alpha, int16_t beta, int16_t gamma, int16_t delta);
#define av1_warp_affine av1_warp_affine_c
void av1_warp_affine_neon(const int32_t *mat, const uint8_t *ref, int width, int height, int stride, uint8_t *pred, int p_col, int p_row, int p_width, int p_height, int p_stride, int subsampling_x, int subsampling_y, ConvolveParams *conv_params, int16_t alpha, int16_t beta, int16_t gamma, int16_t delta);
RTCD_EXTERN void (*av1_warp_affine)(const int32_t *mat, const uint8_t *ref, int width, int height, int stride, uint8_t *pred, int p_col, int p_row, int p_width, int p_height, int p_stride, int subsampling_x, int subsampling_y, ConvolveParams *conv_params, int16_t alpha, int16_t beta, int16_t gamma, int16_t delta);
void av1_wiener_convolve_add_src_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h, const ConvolveParams *conv_params);
void av1_wiener_convolve_add_src_neon(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h, const ConvolveParams *conv_params);
@ -323,7 +345,7 @@ cfl_subtract_average_fn get_subtract_average_fn_c(TX_SIZE tx_size);
cfl_subtract_average_fn get_subtract_average_fn_neon(TX_SIZE tx_size);
RTCD_EXTERN cfl_subtract_average_fn (*get_subtract_average_fn)(TX_SIZE tx_size);
void aom_rtcd(void);
void av1_rtcd(void);
#include "config/aom_config.h"
@ -331,7 +353,7 @@ void aom_rtcd(void);
#include "aom_ports/arm.h"
static void setup_rtcd_internal(void)
{
int flags = arm_cpu_caps();
int flags = aom_arm_cpu_caps();
(void)flags;
@ -359,6 +381,8 @@ static void setup_rtcd_internal(void)
if (flags & HAS_NEON) av1_jnt_convolve_y = av1_jnt_convolve_y_neon;
av1_selfguided_restoration = av1_selfguided_restoration_c;
if (flags & HAS_NEON) av1_selfguided_restoration = av1_selfguided_restoration_neon;
av1_warp_affine = av1_warp_affine_c;
if (flags & HAS_NEON) av1_warp_affine = av1_warp_affine_neon;
av1_wiener_convolve_add_src = av1_wiener_convolve_add_src_c;
if (flags & HAS_NEON) av1_wiener_convolve_add_src = av1_wiener_convolve_add_src_neon;
cdef_filter_block = cdef_filter_block_c;

Просмотреть файл

@ -14,6 +14,7 @@ ARCH_MIPS equ 0
ARCH_PPC equ 0
ARCH_X86 equ 1
ARCH_X86_64 equ 0
CONFIG_2PASS_PARTITION_SEARCH_LVL equ 1
CONFIG_ACCOUNTING equ 0
CONFIG_ANALYZER equ 0
CONFIG_AV1_DECODER equ 1
@ -21,30 +22,35 @@ CONFIG_AV1_ENCODER equ 0
CONFIG_BIG_ENDIAN equ 0
CONFIG_BITSTREAM_DEBUG equ 0
CONFIG_COEFFICIENT_RANGE_CHECKING equ 0
CONFIG_COLLECT_INTER_MODE_RD_STATS equ 1
CONFIG_COLLECT_INTER_MODE_RD_STATS equ 0
CONFIG_COLLECT_RD_STATS equ 0
CONFIG_DEBUG equ 0
CONFIG_DENOISE equ 0
CONFIG_DIST_8X8 equ 1
CONFIG_DENOISE equ 1
CONFIG_DIST_8X8 equ 0
CONFIG_ENTROPY_STATS equ 0
CONFIG_FILEOPTIONS equ 1
CONFIG_FIX_GF_LENGTH equ 1
CONFIG_FP_MB_STATS equ 0
CONFIG_GCC equ 1
CONFIG_GCOV equ 0
CONFIG_GLOBAL_MOTION_SEARCH equ 1
CONFIG_GPROF equ 0
CONFIG_INSPECTION equ 0
CONFIG_INTERNAL_STATS equ 0
CONFIG_INTER_STATS_ONLY equ 0
CONFIG_LIBYUV equ 0
CONFIG_LOWBITDEPTH equ 0
CONFIG_LOWBITDEPTH equ 1
CONFIG_MAX_DECODE_PROFILE equ 2
CONFIG_MISMATCH_DEBUG equ 0
CONFIG_MSVS equ 0
CONFIG_MULTITHREAD equ 1
CONFIG_NORMAL_TILE_MODE equ 0
CONFIG_OS_SUPPORT equ 1
CONFIG_PIC equ 1
CONFIG_RD_DEBUG equ 0
CONFIG_REDUCED_ENCODER_BORDER equ 0
CONFIG_RUNTIME_CPU_DETECT equ 1
CONFIG_SHARED equ 0
CONFIG_SHARP_SETTINGS equ 0
CONFIG_SIZE_LIMIT equ 0
CONFIG_SPATIAL_RESAMPLING equ 1
CONFIG_STATIC equ 1

Просмотреть файл

@ -16,6 +16,7 @@
#define ARCH_PPC 0
#define ARCH_X86 1
#define ARCH_X86_64 0
#define CONFIG_2PASS_PARTITION_SEARCH_LVL 1
#define CONFIG_ACCOUNTING 0
#define CONFIG_ANALYZER 0
#define CONFIG_AV1_DECODER 1
@ -23,30 +24,35 @@
#define CONFIG_BIG_ENDIAN 0
#define CONFIG_BITSTREAM_DEBUG 0
#define CONFIG_COEFFICIENT_RANGE_CHECKING 0
#define CONFIG_COLLECT_INTER_MODE_RD_STATS 1
#define CONFIG_COLLECT_INTER_MODE_RD_STATS 0
#define CONFIG_COLLECT_RD_STATS 0
#define CONFIG_DEBUG 0
#define CONFIG_DENOISE 0
#define CONFIG_DIST_8X8 1
#define CONFIG_DENOISE 1
#define CONFIG_DIST_8X8 0
#define CONFIG_ENTROPY_STATS 0
#define CONFIG_FILEOPTIONS 1
#define CONFIG_FIX_GF_LENGTH 1
#define CONFIG_FP_MB_STATS 0
#define CONFIG_GCC 1
#define CONFIG_GCOV 0
#define CONFIG_GLOBAL_MOTION_SEARCH 1
#define CONFIG_GPROF 0
#define CONFIG_INSPECTION 0
#define CONFIG_INTERNAL_STATS 0
#define CONFIG_INTER_STATS_ONLY 0
#define CONFIG_LIBYUV 0
#define CONFIG_LOWBITDEPTH 0
#define CONFIG_LOWBITDEPTH 1
#define CONFIG_MAX_DECODE_PROFILE 2
#define CONFIG_MISMATCH_DEBUG 0
#define CONFIG_MSVS 0
#define CONFIG_MULTITHREAD 1
#define CONFIG_NORMAL_TILE_MODE 0
#define CONFIG_OS_SUPPORT 1
#define CONFIG_PIC 1
#define CONFIG_RD_DEBUG 0
#define CONFIG_REDUCED_ENCODER_BORDER 0
#define CONFIG_RUNTIME_CPU_DETECT 1
#define CONFIG_SHARED 0
#define CONFIG_SHARP_SETTINGS 0
#define CONFIG_SIZE_LIMIT 0
#define CONFIG_SPATIAL_RESAMPLING 1
#define CONFIG_STATIC 1

Просмотреть файл

@ -28,6 +28,7 @@ RTCD_EXTERN void (*aom_blend_a64_hmask)(uint8_t *dst, uint32_t dst_stride, const
void aom_blend_a64_mask_c(uint8_t *dst, uint32_t dst_stride, const uint8_t *src0, uint32_t src0_stride, const uint8_t *src1, uint32_t src1_stride, const uint8_t *mask, uint32_t mask_stride, int w, int h, int subx, int suby);
void aom_blend_a64_mask_sse4_1(uint8_t *dst, uint32_t dst_stride, const uint8_t *src0, uint32_t src0_stride, const uint8_t *src1, uint32_t src1_stride, const uint8_t *mask, uint32_t mask_stride, int w, int h, int subx, int suby);
void aom_blend_a64_mask_avx2(uint8_t *dst, uint32_t dst_stride, const uint8_t *src0, uint32_t src0_stride, const uint8_t *src1, uint32_t src1_stride, const uint8_t *mask, uint32_t mask_stride, int w, int h, int subx, int suby);
RTCD_EXTERN void (*aom_blend_a64_mask)(uint8_t *dst, uint32_t dst_stride, const uint8_t *src0, uint32_t src0_stride, const uint8_t *src1, uint32_t src1_stride, const uint8_t *mask, uint32_t mask_stride, int w, int h, int subx, int suby);
void aom_blend_a64_vmask_c(uint8_t *dst, uint32_t dst_stride, const uint8_t *src0, uint32_t src0_stride, const uint8_t *src1, uint32_t src1_stride, const uint8_t *mask, int w, int h);
@ -1230,6 +1231,7 @@ RTCD_EXTERN void (*aom_highbd_v_predictor_8x8)(uint16_t *dst, ptrdiff_t y_stride
void aom_lowbd_blend_a64_d16_mask_c(uint8_t *dst, uint32_t dst_stride, const CONV_BUF_TYPE *src0, uint32_t src0_stride, const CONV_BUF_TYPE *src1, uint32_t src1_stride, const uint8_t *mask, uint32_t mask_stride, int w, int h, int subx, int suby, ConvolveParams *conv_params);
void aom_lowbd_blend_a64_d16_mask_sse4_1(uint8_t *dst, uint32_t dst_stride, const CONV_BUF_TYPE *src0, uint32_t src0_stride, const CONV_BUF_TYPE *src1, uint32_t src1_stride, const uint8_t *mask, uint32_t mask_stride, int w, int h, int subx, int suby, ConvolveParams *conv_params);
void aom_lowbd_blend_a64_d16_mask_avx2(uint8_t *dst, uint32_t dst_stride, const CONV_BUF_TYPE *src0, uint32_t src0_stride, const CONV_BUF_TYPE *src1, uint32_t src1_stride, const uint8_t *mask, uint32_t mask_stride, int w, int h, int subx, int suby, ConvolveParams *conv_params);
RTCD_EXTERN void (*aom_lowbd_blend_a64_d16_mask)(uint8_t *dst, uint32_t dst_stride, const CONV_BUF_TYPE *src0, uint32_t src0_stride, const CONV_BUF_TYPE *src1, uint32_t src1_stride, const uint8_t *mask, uint32_t mask_stride, int w, int h, int subx, int suby, ConvolveParams *conv_params);
void aom_lpf_horizontal_14_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh);
@ -1725,6 +1727,7 @@ static void setup_rtcd_internal(void)
if (flags & HAS_SSE4_1) aom_blend_a64_hmask = aom_blend_a64_hmask_sse4_1;
aom_blend_a64_mask = aom_blend_a64_mask_c;
if (flags & HAS_SSE4_1) aom_blend_a64_mask = aom_blend_a64_mask_sse4_1;
if (flags & HAS_AVX2) aom_blend_a64_mask = aom_blend_a64_mask_avx2;
aom_blend_a64_vmask = aom_blend_a64_vmask_c;
if (flags & HAS_SSE4_1) aom_blend_a64_vmask = aom_blend_a64_vmask_sse4_1;
aom_convolve8_horiz = aom_convolve8_horiz_c;
@ -2125,6 +2128,7 @@ static void setup_rtcd_internal(void)
if (flags & HAS_SSE2) aom_highbd_v_predictor_8x8 = aom_highbd_v_predictor_8x8_sse2;
aom_lowbd_blend_a64_d16_mask = aom_lowbd_blend_a64_d16_mask_c;
if (flags & HAS_SSE4_1) aom_lowbd_blend_a64_d16_mask = aom_lowbd_blend_a64_d16_mask_sse4_1;
if (flags & HAS_AVX2) aom_lowbd_blend_a64_d16_mask = aom_lowbd_blend_a64_d16_mask_avx2;
aom_lpf_horizontal_14 = aom_lpf_horizontal_14_c;
if (flags & HAS_SSE2) aom_lpf_horizontal_14 = aom_lpf_horizontal_14_sse2;
aom_lpf_horizontal_14_dual = aom_lpf_horizontal_14_dual_c;

Просмотреть файл

@ -1,6 +1,6 @@
// This file is generated. Do not edit.
#ifndef AOM_RTCD_H_
#define AOM_RTCD_H_
#ifndef AV1_RTCD_H_
#define AV1_RTCD_H_
#ifdef RTCD_C
#define RTCD_EXTERN
@ -58,10 +58,12 @@ RTCD_EXTERN void (*apply_selfguided_restoration)(const uint8_t *dat, int width,
void av1_build_compound_diffwtd_mask_c(uint8_t *mask, DIFFWTD_MASK_TYPE mask_type, const uint8_t *src0, int src0_stride, const uint8_t *src1, int src1_stride, int h, int w);
void av1_build_compound_diffwtd_mask_sse4_1(uint8_t *mask, DIFFWTD_MASK_TYPE mask_type, const uint8_t *src0, int src0_stride, const uint8_t *src1, int src1_stride, int h, int w);
void av1_build_compound_diffwtd_mask_avx2(uint8_t *mask, DIFFWTD_MASK_TYPE mask_type, const uint8_t *src0, int src0_stride, const uint8_t *src1, int src1_stride, int h, int w);
RTCD_EXTERN void (*av1_build_compound_diffwtd_mask)(uint8_t *mask, DIFFWTD_MASK_TYPE mask_type, const uint8_t *src0, int src0_stride, const uint8_t *src1, int src1_stride, int h, int w);
void av1_build_compound_diffwtd_mask_d16_c(uint8_t *mask, DIFFWTD_MASK_TYPE mask_type, const CONV_BUF_TYPE *src0, int src0_stride, const CONV_BUF_TYPE *src1, int src1_stride, int h, int w, ConvolveParams *conv_params, int bd);
void av1_build_compound_diffwtd_mask_d16_sse4_1(uint8_t *mask, DIFFWTD_MASK_TYPE mask_type, const CONV_BUF_TYPE *src0, int src0_stride, const CONV_BUF_TYPE *src1, int src1_stride, int h, int w, ConvolveParams *conv_params, int bd);
void av1_build_compound_diffwtd_mask_d16_avx2(uint8_t *mask, DIFFWTD_MASK_TYPE mask_type, const CONV_BUF_TYPE *src0, int src0_stride, const CONV_BUF_TYPE *src1, int src1_stride, int h, int w, ConvolveParams *conv_params, int bd);
RTCD_EXTERN void (*av1_build_compound_diffwtd_mask_d16)(uint8_t *mask, DIFFWTD_MASK_TYPE mask_type, const CONV_BUF_TYPE *src0, int src0_stride, const CONV_BUF_TYPE *src1, int src1_stride, int h, int w, ConvolveParams *conv_params, int bd);
void av1_build_compound_diffwtd_mask_highbd_c(uint8_t *mask, DIFFWTD_MASK_TYPE mask_type, const uint8_t *src0, int src0_stride, const uint8_t *src1, int src1_stride, int h, int w, int bd);
@ -170,6 +172,36 @@ void av1_highbd_dr_prediction_z2_c(uint16_t *dst, ptrdiff_t stride, int bw, int
void av1_highbd_dr_prediction_z3_c(uint16_t *dst, ptrdiff_t stride, int bw, int bh, const uint16_t *above, const uint16_t *left, int upsample_left, int dx, int dy, int bd);
#define av1_highbd_dr_prediction_z3 av1_highbd_dr_prediction_z3_c
void av1_highbd_inv_txfm_add_c(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_sse4_1(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_avx2(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
RTCD_EXTERN void (*av1_highbd_inv_txfm_add)(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_16x16_c(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_16x16_sse4_1(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
RTCD_EXTERN void (*av1_highbd_inv_txfm_add_16x16)(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_16x8_c(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_16x8_sse4_1(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
RTCD_EXTERN void (*av1_highbd_inv_txfm_add_16x8)(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_32x32_c(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_32x32_sse4_1(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_32x32_avx2(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
RTCD_EXTERN void (*av1_highbd_inv_txfm_add_32x32)(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_4x4_c(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_4x4_sse4_1(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
RTCD_EXTERN void (*av1_highbd_inv_txfm_add_4x4)(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_8x16_c(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_8x16_sse4_1(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
RTCD_EXTERN void (*av1_highbd_inv_txfm_add_8x16)(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_8x8_c(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_8x8_sse4_1(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
RTCD_EXTERN void (*av1_highbd_inv_txfm_add_8x8)(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_iwht4x4_16_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride, int bd);
#define av1_highbd_iwht4x4_16_add av1_highbd_iwht4x4_16_add_c
@ -206,8 +238,7 @@ void av1_highbd_wiener_convolve_add_src_avx2(const uint8_t *src, ptrdiff_t src_s
RTCD_EXTERN void (*av1_highbd_wiener_convolve_add_src)(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h, const ConvolveParams *conv_params, int bps);
void av1_inv_txfm2d_add_16x16_c(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd);
void av1_inv_txfm2d_add_16x16_sse4_1(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd);
RTCD_EXTERN void (*av1_inv_txfm2d_add_16x16)(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd);
#define av1_inv_txfm2d_add_16x16 av1_inv_txfm2d_add_16x16_c
void av1_inv_txfm2d_add_16x32_c(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd);
#define av1_inv_txfm2d_add_16x32 av1_inv_txfm2d_add_16x32_c
@ -225,8 +256,7 @@ void av1_inv_txfm2d_add_32x16_c(const int32_t *input, uint16_t *output, int stri
#define av1_inv_txfm2d_add_32x16 av1_inv_txfm2d_add_32x16_c
void av1_inv_txfm2d_add_32x32_c(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd);
void av1_inv_txfm2d_add_32x32_avx2(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd);
RTCD_EXTERN void (*av1_inv_txfm2d_add_32x32)(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd);
#define av1_inv_txfm2d_add_32x32 av1_inv_txfm2d_add_32x32_c
void av1_inv_txfm2d_add_32x64_c(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd);
#define av1_inv_txfm2d_add_32x64 av1_inv_txfm2d_add_32x64_c
@ -251,8 +281,7 @@ void av1_inv_txfm2d_add_64x32_c(const int32_t *input, uint16_t *output, int stri
#define av1_inv_txfm2d_add_64x32 av1_inv_txfm2d_add_64x32_c
void av1_inv_txfm2d_add_64x64_c(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd);
void av1_inv_txfm2d_add_64x64_sse4_1(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd);
RTCD_EXTERN void (*av1_inv_txfm2d_add_64x64)(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd);
#define av1_inv_txfm2d_add_64x64 av1_inv_txfm2d_add_64x64_c
void av1_inv_txfm2d_add_8x16_c(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd);
#define av1_inv_txfm2d_add_8x16 av1_inv_txfm2d_add_8x16_c
@ -292,18 +321,18 @@ void av1_jnt_convolve_y_sse2(const uint8_t *src, int src_stride, uint8_t *dst, i
void av1_jnt_convolve_y_avx2(const uint8_t *src, int src_stride, uint8_t *dst, int dst_stride, int w, int h, const InterpFilterParams *filter_params_x, const InterpFilterParams *filter_params_y, const int subpel_x_q4, const int subpel_y_q4, ConvolveParams *conv_params);
RTCD_EXTERN void (*av1_jnt_convolve_y)(const uint8_t *src, int src_stride, uint8_t *dst, int dst_stride, int w, int h, const InterpFilterParams *filter_params_x, const InterpFilterParams *filter_params_y, const int subpel_x_q4, const int subpel_y_q4, ConvolveParams *conv_params);
void av1_selfguided_restoration_c(const uint8_t *dgd8, int width, int height,
int dgd_stride, int32_t *flt0, int32_t *flt1, int flt_stride,
int sgr_params_idx, int bit_depth, int highbd);
void av1_selfguided_restoration_sse4_1(const uint8_t *dgd8, int width, int height,
int dgd_stride, int32_t *flt0, int32_t *flt1, int flt_stride,
int sgr_params_idx, int bit_depth, int highbd);
void av1_selfguided_restoration_avx2(const uint8_t *dgd8, int width, int height,
int dgd_stride, int32_t *flt0, int32_t *flt1, int flt_stride,
int sgr_params_idx, int bit_depth, int highbd);
RTCD_EXTERN void (*av1_selfguided_restoration)(const uint8_t *dgd8, int width, int height,
int dgd_stride, int32_t *flt0, int32_t *flt1, int flt_stride,
int sgr_params_idx, int bit_depth, int highbd);
int av1_selfguided_restoration_c(const uint8_t *dgd8, int width, int height,
int dgd_stride, int32_t *flt0, int32_t *flt1, int flt_stride,
int sgr_params_idx, int bit_depth, int highbd);
int av1_selfguided_restoration_sse4_1(const uint8_t *dgd8, int width, int height,
int dgd_stride, int32_t *flt0, int32_t *flt1, int flt_stride,
int sgr_params_idx, int bit_depth, int highbd);
int av1_selfguided_restoration_avx2(const uint8_t *dgd8, int width, int height,
int dgd_stride, int32_t *flt0, int32_t *flt1, int flt_stride,
int sgr_params_idx, int bit_depth, int highbd);
RTCD_EXTERN int (*av1_selfguided_restoration)(const uint8_t *dgd8, int width, int height,
int dgd_stride, int32_t *flt0, int32_t *flt1, int flt_stride,
int sgr_params_idx, int bit_depth, int highbd);
void av1_upsample_intra_edge_c(uint8_t *p, int sz);
void av1_upsample_intra_edge_sse4_1(uint8_t *p, int sz);
@ -395,7 +424,7 @@ cfl_subtract_average_fn get_subtract_average_fn_sse2(TX_SIZE tx_size);
cfl_subtract_average_fn get_subtract_average_fn_avx2(TX_SIZE tx_size);
RTCD_EXTERN cfl_subtract_average_fn (*get_subtract_average_fn)(TX_SIZE tx_size);
void aom_rtcd(void);
void av1_rtcd(void);
#ifdef RTCD_C
#include "aom_ports/x86.h"
@ -410,8 +439,10 @@ static void setup_rtcd_internal(void)
if (flags & HAS_AVX2) apply_selfguided_restoration = apply_selfguided_restoration_avx2;
av1_build_compound_diffwtd_mask = av1_build_compound_diffwtd_mask_c;
if (flags & HAS_SSE4_1) av1_build_compound_diffwtd_mask = av1_build_compound_diffwtd_mask_sse4_1;
if (flags & HAS_AVX2) av1_build_compound_diffwtd_mask = av1_build_compound_diffwtd_mask_avx2;
av1_build_compound_diffwtd_mask_d16 = av1_build_compound_diffwtd_mask_d16_c;
if (flags & HAS_SSE4_1) av1_build_compound_diffwtd_mask_d16 = av1_build_compound_diffwtd_mask_d16_sse4_1;
if (flags & HAS_AVX2) av1_build_compound_diffwtd_mask_d16 = av1_build_compound_diffwtd_mask_d16_avx2;
av1_build_compound_diffwtd_mask_highbd = av1_build_compound_diffwtd_mask_highbd_c;
if (flags & HAS_SSSE3) av1_build_compound_diffwtd_mask_highbd = av1_build_compound_diffwtd_mask_highbd_ssse3;
if (flags & HAS_AVX2) av1_build_compound_diffwtd_mask_highbd = av1_build_compound_diffwtd_mask_highbd_avx2;
@ -453,6 +484,22 @@ static void setup_rtcd_internal(void)
av1_highbd_convolve_y_sr = av1_highbd_convolve_y_sr_c;
if (flags & HAS_SSSE3) av1_highbd_convolve_y_sr = av1_highbd_convolve_y_sr_ssse3;
if (flags & HAS_AVX2) av1_highbd_convolve_y_sr = av1_highbd_convolve_y_sr_avx2;
av1_highbd_inv_txfm_add = av1_highbd_inv_txfm_add_c;
if (flags & HAS_SSE4_1) av1_highbd_inv_txfm_add = av1_highbd_inv_txfm_add_sse4_1;
if (flags & HAS_AVX2) av1_highbd_inv_txfm_add = av1_highbd_inv_txfm_add_avx2;
av1_highbd_inv_txfm_add_16x16 = av1_highbd_inv_txfm_add_16x16_c;
if (flags & HAS_SSE4_1) av1_highbd_inv_txfm_add_16x16 = av1_highbd_inv_txfm_add_16x16_sse4_1;
av1_highbd_inv_txfm_add_16x8 = av1_highbd_inv_txfm_add_16x8_c;
if (flags & HAS_SSE4_1) av1_highbd_inv_txfm_add_16x8 = av1_highbd_inv_txfm_add_16x8_sse4_1;
av1_highbd_inv_txfm_add_32x32 = av1_highbd_inv_txfm_add_32x32_c;
if (flags & HAS_SSE4_1) av1_highbd_inv_txfm_add_32x32 = av1_highbd_inv_txfm_add_32x32_sse4_1;
if (flags & HAS_AVX2) av1_highbd_inv_txfm_add_32x32 = av1_highbd_inv_txfm_add_32x32_avx2;
av1_highbd_inv_txfm_add_4x4 = av1_highbd_inv_txfm_add_4x4_c;
if (flags & HAS_SSE4_1) av1_highbd_inv_txfm_add_4x4 = av1_highbd_inv_txfm_add_4x4_sse4_1;
av1_highbd_inv_txfm_add_8x16 = av1_highbd_inv_txfm_add_8x16_c;
if (flags & HAS_SSE4_1) av1_highbd_inv_txfm_add_8x16 = av1_highbd_inv_txfm_add_8x16_sse4_1;
av1_highbd_inv_txfm_add_8x8 = av1_highbd_inv_txfm_add_8x8_c;
if (flags & HAS_SSE4_1) av1_highbd_inv_txfm_add_8x8 = av1_highbd_inv_txfm_add_8x8_sse4_1;
av1_highbd_jnt_convolve_2d = av1_highbd_jnt_convolve_2d_c;
if (flags & HAS_SSE4_1) av1_highbd_jnt_convolve_2d = av1_highbd_jnt_convolve_2d_sse4_1;
if (flags & HAS_AVX2) av1_highbd_jnt_convolve_2d = av1_highbd_jnt_convolve_2d_avx2;
@ -470,14 +517,8 @@ static void setup_rtcd_internal(void)
av1_highbd_wiener_convolve_add_src = av1_highbd_wiener_convolve_add_src_c;
if (flags & HAS_SSSE3) av1_highbd_wiener_convolve_add_src = av1_highbd_wiener_convolve_add_src_ssse3;
if (flags & HAS_AVX2) av1_highbd_wiener_convolve_add_src = av1_highbd_wiener_convolve_add_src_avx2;
av1_inv_txfm2d_add_16x16 = av1_inv_txfm2d_add_16x16_c;
if (flags & HAS_SSE4_1) av1_inv_txfm2d_add_16x16 = av1_inv_txfm2d_add_16x16_sse4_1;
av1_inv_txfm2d_add_32x32 = av1_inv_txfm2d_add_32x32_c;
if (flags & HAS_AVX2) av1_inv_txfm2d_add_32x32 = av1_inv_txfm2d_add_32x32_avx2;
av1_inv_txfm2d_add_4x4 = av1_inv_txfm2d_add_4x4_c;
if (flags & HAS_SSE4_1) av1_inv_txfm2d_add_4x4 = av1_inv_txfm2d_add_4x4_sse4_1;
av1_inv_txfm2d_add_64x64 = av1_inv_txfm2d_add_64x64_c;
if (flags & HAS_SSE4_1) av1_inv_txfm2d_add_64x64 = av1_inv_txfm2d_add_64x64_sse4_1;
av1_inv_txfm2d_add_8x8 = av1_inv_txfm2d_add_8x8_c;
if (flags & HAS_SSE4_1) av1_inv_txfm2d_add_8x8 = av1_inv_txfm2d_add_8x8_sse4_1;
av1_inv_txfm_add = av1_inv_txfm_add_c;

Просмотреть файл

@ -14,6 +14,7 @@ ARCH_MIPS equ 0
ARCH_PPC equ 0
ARCH_X86 equ 0
ARCH_X86_64 equ 1
CONFIG_2PASS_PARTITION_SEARCH_LVL equ 1
CONFIG_ACCOUNTING equ 0
CONFIG_ANALYZER equ 0
CONFIG_AV1_DECODER equ 1
@ -21,30 +22,35 @@ CONFIG_AV1_ENCODER equ 0
CONFIG_BIG_ENDIAN equ 0
CONFIG_BITSTREAM_DEBUG equ 0
CONFIG_COEFFICIENT_RANGE_CHECKING equ 0
CONFIG_COLLECT_INTER_MODE_RD_STATS equ 1
CONFIG_COLLECT_INTER_MODE_RD_STATS equ 0
CONFIG_COLLECT_RD_STATS equ 0
CONFIG_DEBUG equ 0
CONFIG_DENOISE equ 0
CONFIG_DIST_8X8 equ 1
CONFIG_DENOISE equ 1
CONFIG_DIST_8X8 equ 0
CONFIG_ENTROPY_STATS equ 0
CONFIG_FILEOPTIONS equ 1
CONFIG_FIX_GF_LENGTH equ 1
CONFIG_FP_MB_STATS equ 0
CONFIG_GCC equ 1
CONFIG_GCOV equ 0
CONFIG_GLOBAL_MOTION_SEARCH equ 1
CONFIG_GPROF equ 0
CONFIG_INSPECTION equ 0
CONFIG_INTERNAL_STATS equ 0
CONFIG_INTER_STATS_ONLY equ 0
CONFIG_LIBYUV equ 0
CONFIG_LOWBITDEPTH equ 0
CONFIG_LOWBITDEPTH equ 1
CONFIG_MAX_DECODE_PROFILE equ 2
CONFIG_MISMATCH_DEBUG equ 0
CONFIG_MSVS equ 0
CONFIG_MULTITHREAD equ 1
CONFIG_NORMAL_TILE_MODE equ 0
CONFIG_OS_SUPPORT equ 1
CONFIG_PIC equ 0
CONFIG_RD_DEBUG equ 0
CONFIG_REDUCED_ENCODER_BORDER equ 0
CONFIG_RUNTIME_CPU_DETECT equ 1
CONFIG_SHARED equ 0
CONFIG_SHARP_SETTINGS equ 0
CONFIG_SIZE_LIMIT equ 0
CONFIG_SPATIAL_RESAMPLING equ 1
CONFIG_STATIC equ 1

Просмотреть файл

@ -16,6 +16,7 @@
#define ARCH_PPC 0
#define ARCH_X86 0
#define ARCH_X86_64 1
#define CONFIG_2PASS_PARTITION_SEARCH_LVL 1
#define CONFIG_ACCOUNTING 0
#define CONFIG_ANALYZER 0
#define CONFIG_AV1_DECODER 1
@ -23,30 +24,35 @@
#define CONFIG_BIG_ENDIAN 0
#define CONFIG_BITSTREAM_DEBUG 0
#define CONFIG_COEFFICIENT_RANGE_CHECKING 0
#define CONFIG_COLLECT_INTER_MODE_RD_STATS 1
#define CONFIG_COLLECT_INTER_MODE_RD_STATS 0
#define CONFIG_COLLECT_RD_STATS 0
#define CONFIG_DEBUG 0
#define CONFIG_DENOISE 0
#define CONFIG_DIST_8X8 1
#define CONFIG_DENOISE 1
#define CONFIG_DIST_8X8 0
#define CONFIG_ENTROPY_STATS 0
#define CONFIG_FILEOPTIONS 1
#define CONFIG_FIX_GF_LENGTH 1
#define CONFIG_FP_MB_STATS 0
#define CONFIG_GCC 1
#define CONFIG_GCOV 0
#define CONFIG_GLOBAL_MOTION_SEARCH 1
#define CONFIG_GPROF 0
#define CONFIG_INSPECTION 0
#define CONFIG_INTERNAL_STATS 0
#define CONFIG_INTER_STATS_ONLY 0
#define CONFIG_LIBYUV 0
#define CONFIG_LOWBITDEPTH 0
#define CONFIG_LOWBITDEPTH 1
#define CONFIG_MAX_DECODE_PROFILE 2
#define CONFIG_MISMATCH_DEBUG 0
#define CONFIG_MSVS 0
#define CONFIG_MULTITHREAD 1
#define CONFIG_NORMAL_TILE_MODE 0
#define CONFIG_OS_SUPPORT 1
#define CONFIG_PIC 0
#define CONFIG_RD_DEBUG 0
#define CONFIG_REDUCED_ENCODER_BORDER 0
#define CONFIG_RUNTIME_CPU_DETECT 1
#define CONFIG_SHARED 0
#define CONFIG_SHARP_SETTINGS 0
#define CONFIG_SIZE_LIMIT 0
#define CONFIG_SPATIAL_RESAMPLING 1
#define CONFIG_STATIC 1

Просмотреть файл

@ -28,6 +28,7 @@ RTCD_EXTERN void (*aom_blend_a64_hmask)(uint8_t *dst, uint32_t dst_stride, const
void aom_blend_a64_mask_c(uint8_t *dst, uint32_t dst_stride, const uint8_t *src0, uint32_t src0_stride, const uint8_t *src1, uint32_t src1_stride, const uint8_t *mask, uint32_t mask_stride, int w, int h, int subx, int suby);
void aom_blend_a64_mask_sse4_1(uint8_t *dst, uint32_t dst_stride, const uint8_t *src0, uint32_t src0_stride, const uint8_t *src1, uint32_t src1_stride, const uint8_t *mask, uint32_t mask_stride, int w, int h, int subx, int suby);
void aom_blend_a64_mask_avx2(uint8_t *dst, uint32_t dst_stride, const uint8_t *src0, uint32_t src0_stride, const uint8_t *src1, uint32_t src1_stride, const uint8_t *mask, uint32_t mask_stride, int w, int h, int subx, int suby);
RTCD_EXTERN void (*aom_blend_a64_mask)(uint8_t *dst, uint32_t dst_stride, const uint8_t *src0, uint32_t src0_stride, const uint8_t *src1, uint32_t src1_stride, const uint8_t *mask, uint32_t mask_stride, int w, int h, int subx, int suby);
void aom_blend_a64_vmask_c(uint8_t *dst, uint32_t dst_stride, const uint8_t *src0, uint32_t src0_stride, const uint8_t *src1, uint32_t src1_stride, const uint8_t *mask, int w, int h);
@ -1232,6 +1233,7 @@ void aom_highbd_v_predictor_8x8_sse2(uint16_t *dst, ptrdiff_t y_stride, const ui
void aom_lowbd_blend_a64_d16_mask_c(uint8_t *dst, uint32_t dst_stride, const CONV_BUF_TYPE *src0, uint32_t src0_stride, const CONV_BUF_TYPE *src1, uint32_t src1_stride, const uint8_t *mask, uint32_t mask_stride, int w, int h, int subx, int suby, ConvolveParams *conv_params);
void aom_lowbd_blend_a64_d16_mask_sse4_1(uint8_t *dst, uint32_t dst_stride, const CONV_BUF_TYPE *src0, uint32_t src0_stride, const CONV_BUF_TYPE *src1, uint32_t src1_stride, const uint8_t *mask, uint32_t mask_stride, int w, int h, int subx, int suby, ConvolveParams *conv_params);
void aom_lowbd_blend_a64_d16_mask_avx2(uint8_t *dst, uint32_t dst_stride, const CONV_BUF_TYPE *src0, uint32_t src0_stride, const CONV_BUF_TYPE *src1, uint32_t src1_stride, const uint8_t *mask, uint32_t mask_stride, int w, int h, int subx, int suby, ConvolveParams *conv_params);
RTCD_EXTERN void (*aom_lowbd_blend_a64_d16_mask)(uint8_t *dst, uint32_t dst_stride, const CONV_BUF_TYPE *src0, uint32_t src0_stride, const CONV_BUF_TYPE *src1, uint32_t src1_stride, const uint8_t *mask, uint32_t mask_stride, int w, int h, int subx, int suby, ConvolveParams *conv_params);
void aom_lpf_horizontal_14_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh);
@ -1727,6 +1729,7 @@ static void setup_rtcd_internal(void)
if (flags & HAS_SSE4_1) aom_blend_a64_hmask = aom_blend_a64_hmask_sse4_1;
aom_blend_a64_mask = aom_blend_a64_mask_c;
if (flags & HAS_SSE4_1) aom_blend_a64_mask = aom_blend_a64_mask_sse4_1;
if (flags & HAS_AVX2) aom_blend_a64_mask = aom_blend_a64_mask_avx2;
aom_blend_a64_vmask = aom_blend_a64_vmask_c;
if (flags & HAS_SSE4_1) aom_blend_a64_vmask = aom_blend_a64_vmask_sse4_1;
aom_convolve8_horiz = aom_convolve8_horiz_sse2;
@ -1811,6 +1814,7 @@ static void setup_rtcd_internal(void)
if (flags & HAS_AVX2) aom_highbd_lpf_vertical_8_dual = aom_highbd_lpf_vertical_8_dual_avx2;
aom_lowbd_blend_a64_d16_mask = aom_lowbd_blend_a64_d16_mask_c;
if (flags & HAS_SSE4_1) aom_lowbd_blend_a64_d16_mask = aom_lowbd_blend_a64_d16_mask_sse4_1;
if (flags & HAS_AVX2) aom_lowbd_blend_a64_d16_mask = aom_lowbd_blend_a64_d16_mask_avx2;
aom_paeth_predictor_16x16 = aom_paeth_predictor_16x16_c;
if (flags & HAS_SSSE3) aom_paeth_predictor_16x16 = aom_paeth_predictor_16x16_ssse3;
if (flags & HAS_AVX2) aom_paeth_predictor_16x16 = aom_paeth_predictor_16x16_avx2;

Просмотреть файл

@ -1,6 +1,6 @@
// This file is generated. Do not edit.
#ifndef AOM_RTCD_H_
#define AOM_RTCD_H_
#ifndef AV1_RTCD_H_
#define AV1_RTCD_H_
#ifdef RTCD_C
#define RTCD_EXTERN
@ -58,10 +58,12 @@ RTCD_EXTERN void (*apply_selfguided_restoration)(const uint8_t *dat, int width,
void av1_build_compound_diffwtd_mask_c(uint8_t *mask, DIFFWTD_MASK_TYPE mask_type, const uint8_t *src0, int src0_stride, const uint8_t *src1, int src1_stride, int h, int w);
void av1_build_compound_diffwtd_mask_sse4_1(uint8_t *mask, DIFFWTD_MASK_TYPE mask_type, const uint8_t *src0, int src0_stride, const uint8_t *src1, int src1_stride, int h, int w);
void av1_build_compound_diffwtd_mask_avx2(uint8_t *mask, DIFFWTD_MASK_TYPE mask_type, const uint8_t *src0, int src0_stride, const uint8_t *src1, int src1_stride, int h, int w);
RTCD_EXTERN void (*av1_build_compound_diffwtd_mask)(uint8_t *mask, DIFFWTD_MASK_TYPE mask_type, const uint8_t *src0, int src0_stride, const uint8_t *src1, int src1_stride, int h, int w);
void av1_build_compound_diffwtd_mask_d16_c(uint8_t *mask, DIFFWTD_MASK_TYPE mask_type, const CONV_BUF_TYPE *src0, int src0_stride, const CONV_BUF_TYPE *src1, int src1_stride, int h, int w, ConvolveParams *conv_params, int bd);
void av1_build_compound_diffwtd_mask_d16_sse4_1(uint8_t *mask, DIFFWTD_MASK_TYPE mask_type, const CONV_BUF_TYPE *src0, int src0_stride, const CONV_BUF_TYPE *src1, int src1_stride, int h, int w, ConvolveParams *conv_params, int bd);
void av1_build_compound_diffwtd_mask_d16_avx2(uint8_t *mask, DIFFWTD_MASK_TYPE mask_type, const CONV_BUF_TYPE *src0, int src0_stride, const CONV_BUF_TYPE *src1, int src1_stride, int h, int w, ConvolveParams *conv_params, int bd);
RTCD_EXTERN void (*av1_build_compound_diffwtd_mask_d16)(uint8_t *mask, DIFFWTD_MASK_TYPE mask_type, const CONV_BUF_TYPE *src0, int src0_stride, const CONV_BUF_TYPE *src1, int src1_stride, int h, int w, ConvolveParams *conv_params, int bd);
void av1_build_compound_diffwtd_mask_highbd_c(uint8_t *mask, DIFFWTD_MASK_TYPE mask_type, const uint8_t *src0, int src0_stride, const uint8_t *src1, int src1_stride, int h, int w, int bd);
@ -173,6 +175,36 @@ void av1_highbd_dr_prediction_z2_c(uint16_t *dst, ptrdiff_t stride, int bw, int
void av1_highbd_dr_prediction_z3_c(uint16_t *dst, ptrdiff_t stride, int bw, int bh, const uint16_t *above, const uint16_t *left, int upsample_left, int dx, int dy, int bd);
#define av1_highbd_dr_prediction_z3 av1_highbd_dr_prediction_z3_c
void av1_highbd_inv_txfm_add_c(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_sse4_1(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_avx2(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
RTCD_EXTERN void (*av1_highbd_inv_txfm_add)(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_16x16_c(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_16x16_sse4_1(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
RTCD_EXTERN void (*av1_highbd_inv_txfm_add_16x16)(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_16x8_c(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_16x8_sse4_1(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
RTCD_EXTERN void (*av1_highbd_inv_txfm_add_16x8)(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_32x32_c(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_32x32_sse4_1(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_32x32_avx2(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
RTCD_EXTERN void (*av1_highbd_inv_txfm_add_32x32)(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_4x4_c(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_4x4_sse4_1(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
RTCD_EXTERN void (*av1_highbd_inv_txfm_add_4x4)(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_8x16_c(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_8x16_sse4_1(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
RTCD_EXTERN void (*av1_highbd_inv_txfm_add_8x16)(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_8x8_c(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_8x8_sse4_1(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
RTCD_EXTERN void (*av1_highbd_inv_txfm_add_8x8)(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_iwht4x4_16_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride, int bd);
#define av1_highbd_iwht4x4_16_add av1_highbd_iwht4x4_16_add_c
@ -209,8 +241,7 @@ void av1_highbd_wiener_convolve_add_src_avx2(const uint8_t *src, ptrdiff_t src_s
RTCD_EXTERN void (*av1_highbd_wiener_convolve_add_src)(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h, const ConvolveParams *conv_params, int bps);
void av1_inv_txfm2d_add_16x16_c(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd);
void av1_inv_txfm2d_add_16x16_sse4_1(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd);
RTCD_EXTERN void (*av1_inv_txfm2d_add_16x16)(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd);
#define av1_inv_txfm2d_add_16x16 av1_inv_txfm2d_add_16x16_c
void av1_inv_txfm2d_add_16x32_c(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd);
#define av1_inv_txfm2d_add_16x32 av1_inv_txfm2d_add_16x32_c
@ -228,8 +259,7 @@ void av1_inv_txfm2d_add_32x16_c(const int32_t *input, uint16_t *output, int stri
#define av1_inv_txfm2d_add_32x16 av1_inv_txfm2d_add_32x16_c
void av1_inv_txfm2d_add_32x32_c(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd);
void av1_inv_txfm2d_add_32x32_avx2(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd);
RTCD_EXTERN void (*av1_inv_txfm2d_add_32x32)(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd);
#define av1_inv_txfm2d_add_32x32 av1_inv_txfm2d_add_32x32_c
void av1_inv_txfm2d_add_32x64_c(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd);
#define av1_inv_txfm2d_add_32x64 av1_inv_txfm2d_add_32x64_c
@ -254,8 +284,7 @@ void av1_inv_txfm2d_add_64x32_c(const int32_t *input, uint16_t *output, int stri
#define av1_inv_txfm2d_add_64x32 av1_inv_txfm2d_add_64x32_c
void av1_inv_txfm2d_add_64x64_c(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd);
void av1_inv_txfm2d_add_64x64_sse4_1(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd);
RTCD_EXTERN void (*av1_inv_txfm2d_add_64x64)(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd);
#define av1_inv_txfm2d_add_64x64 av1_inv_txfm2d_add_64x64_c
void av1_inv_txfm2d_add_8x16_c(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd);
#define av1_inv_txfm2d_add_8x16 av1_inv_txfm2d_add_8x16_c
@ -295,18 +324,18 @@ void av1_jnt_convolve_y_sse2(const uint8_t *src, int src_stride, uint8_t *dst, i
void av1_jnt_convolve_y_avx2(const uint8_t *src, int src_stride, uint8_t *dst, int dst_stride, int w, int h, const InterpFilterParams *filter_params_x, const InterpFilterParams *filter_params_y, const int subpel_x_q4, const int subpel_y_q4, ConvolveParams *conv_params);
RTCD_EXTERN void (*av1_jnt_convolve_y)(const uint8_t *src, int src_stride, uint8_t *dst, int dst_stride, int w, int h, const InterpFilterParams *filter_params_x, const InterpFilterParams *filter_params_y, const int subpel_x_q4, const int subpel_y_q4, ConvolveParams *conv_params);
void av1_selfguided_restoration_c(const uint8_t *dgd8, int width, int height,
int dgd_stride, int32_t *flt0, int32_t *flt1, int flt_stride,
int sgr_params_idx, int bit_depth, int highbd);
void av1_selfguided_restoration_sse4_1(const uint8_t *dgd8, int width, int height,
int dgd_stride, int32_t *flt0, int32_t *flt1, int flt_stride,
int sgr_params_idx, int bit_depth, int highbd);
void av1_selfguided_restoration_avx2(const uint8_t *dgd8, int width, int height,
int dgd_stride, int32_t *flt0, int32_t *flt1, int flt_stride,
int sgr_params_idx, int bit_depth, int highbd);
RTCD_EXTERN void (*av1_selfguided_restoration)(const uint8_t *dgd8, int width, int height,
int dgd_stride, int32_t *flt0, int32_t *flt1, int flt_stride,
int sgr_params_idx, int bit_depth, int highbd);
int av1_selfguided_restoration_c(const uint8_t *dgd8, int width, int height,
int dgd_stride, int32_t *flt0, int32_t *flt1, int flt_stride,
int sgr_params_idx, int bit_depth, int highbd);
int av1_selfguided_restoration_sse4_1(const uint8_t *dgd8, int width, int height,
int dgd_stride, int32_t *flt0, int32_t *flt1, int flt_stride,
int sgr_params_idx, int bit_depth, int highbd);
int av1_selfguided_restoration_avx2(const uint8_t *dgd8, int width, int height,
int dgd_stride, int32_t *flt0, int32_t *flt1, int flt_stride,
int sgr_params_idx, int bit_depth, int highbd);
RTCD_EXTERN int (*av1_selfguided_restoration)(const uint8_t *dgd8, int width, int height,
int dgd_stride, int32_t *flt0, int32_t *flt1, int flt_stride,
int sgr_params_idx, int bit_depth, int highbd);
void av1_upsample_intra_edge_c(uint8_t *p, int sz);
void av1_upsample_intra_edge_sse4_1(uint8_t *p, int sz);
@ -398,7 +427,7 @@ cfl_subtract_average_fn get_subtract_average_fn_sse2(TX_SIZE tx_size);
cfl_subtract_average_fn get_subtract_average_fn_avx2(TX_SIZE tx_size);
RTCD_EXTERN cfl_subtract_average_fn (*get_subtract_average_fn)(TX_SIZE tx_size);
void aom_rtcd(void);
void av1_rtcd(void);
#ifdef RTCD_C
#include "aom_ports/x86.h"
@ -413,8 +442,10 @@ static void setup_rtcd_internal(void)
if (flags & HAS_AVX2) apply_selfguided_restoration = apply_selfguided_restoration_avx2;
av1_build_compound_diffwtd_mask = av1_build_compound_diffwtd_mask_c;
if (flags & HAS_SSE4_1) av1_build_compound_diffwtd_mask = av1_build_compound_diffwtd_mask_sse4_1;
if (flags & HAS_AVX2) av1_build_compound_diffwtd_mask = av1_build_compound_diffwtd_mask_avx2;
av1_build_compound_diffwtd_mask_d16 = av1_build_compound_diffwtd_mask_d16_c;
if (flags & HAS_SSE4_1) av1_build_compound_diffwtd_mask_d16 = av1_build_compound_diffwtd_mask_d16_sse4_1;
if (flags & HAS_AVX2) av1_build_compound_diffwtd_mask_d16 = av1_build_compound_diffwtd_mask_d16_avx2;
av1_build_compound_diffwtd_mask_highbd = av1_build_compound_diffwtd_mask_highbd_c;
if (flags & HAS_SSSE3) av1_build_compound_diffwtd_mask_highbd = av1_build_compound_diffwtd_mask_highbd_ssse3;
if (flags & HAS_AVX2) av1_build_compound_diffwtd_mask_highbd = av1_build_compound_diffwtd_mask_highbd_avx2;
@ -451,6 +482,22 @@ static void setup_rtcd_internal(void)
av1_highbd_convolve_y_sr = av1_highbd_convolve_y_sr_c;
if (flags & HAS_SSSE3) av1_highbd_convolve_y_sr = av1_highbd_convolve_y_sr_ssse3;
if (flags & HAS_AVX2) av1_highbd_convolve_y_sr = av1_highbd_convolve_y_sr_avx2;
av1_highbd_inv_txfm_add = av1_highbd_inv_txfm_add_c;
if (flags & HAS_SSE4_1) av1_highbd_inv_txfm_add = av1_highbd_inv_txfm_add_sse4_1;
if (flags & HAS_AVX2) av1_highbd_inv_txfm_add = av1_highbd_inv_txfm_add_avx2;
av1_highbd_inv_txfm_add_16x16 = av1_highbd_inv_txfm_add_16x16_c;
if (flags & HAS_SSE4_1) av1_highbd_inv_txfm_add_16x16 = av1_highbd_inv_txfm_add_16x16_sse4_1;
av1_highbd_inv_txfm_add_16x8 = av1_highbd_inv_txfm_add_16x8_c;
if (flags & HAS_SSE4_1) av1_highbd_inv_txfm_add_16x8 = av1_highbd_inv_txfm_add_16x8_sse4_1;
av1_highbd_inv_txfm_add_32x32 = av1_highbd_inv_txfm_add_32x32_c;
if (flags & HAS_SSE4_1) av1_highbd_inv_txfm_add_32x32 = av1_highbd_inv_txfm_add_32x32_sse4_1;
if (flags & HAS_AVX2) av1_highbd_inv_txfm_add_32x32 = av1_highbd_inv_txfm_add_32x32_avx2;
av1_highbd_inv_txfm_add_4x4 = av1_highbd_inv_txfm_add_4x4_c;
if (flags & HAS_SSE4_1) av1_highbd_inv_txfm_add_4x4 = av1_highbd_inv_txfm_add_4x4_sse4_1;
av1_highbd_inv_txfm_add_8x16 = av1_highbd_inv_txfm_add_8x16_c;
if (flags & HAS_SSE4_1) av1_highbd_inv_txfm_add_8x16 = av1_highbd_inv_txfm_add_8x16_sse4_1;
av1_highbd_inv_txfm_add_8x8 = av1_highbd_inv_txfm_add_8x8_c;
if (flags & HAS_SSE4_1) av1_highbd_inv_txfm_add_8x8 = av1_highbd_inv_txfm_add_8x8_sse4_1;
av1_highbd_jnt_convolve_2d = av1_highbd_jnt_convolve_2d_c;
if (flags & HAS_SSE4_1) av1_highbd_jnt_convolve_2d = av1_highbd_jnt_convolve_2d_sse4_1;
if (flags & HAS_AVX2) av1_highbd_jnt_convolve_2d = av1_highbd_jnt_convolve_2d_avx2;
@ -468,14 +515,8 @@ static void setup_rtcd_internal(void)
av1_highbd_wiener_convolve_add_src = av1_highbd_wiener_convolve_add_src_c;
if (flags & HAS_SSSE3) av1_highbd_wiener_convolve_add_src = av1_highbd_wiener_convolve_add_src_ssse3;
if (flags & HAS_AVX2) av1_highbd_wiener_convolve_add_src = av1_highbd_wiener_convolve_add_src_avx2;
av1_inv_txfm2d_add_16x16 = av1_inv_txfm2d_add_16x16_c;
if (flags & HAS_SSE4_1) av1_inv_txfm2d_add_16x16 = av1_inv_txfm2d_add_16x16_sse4_1;
av1_inv_txfm2d_add_32x32 = av1_inv_txfm2d_add_32x32_c;
if (flags & HAS_AVX2) av1_inv_txfm2d_add_32x32 = av1_inv_txfm2d_add_32x32_avx2;
av1_inv_txfm2d_add_4x4 = av1_inv_txfm2d_add_4x4_c;
if (flags & HAS_SSE4_1) av1_inv_txfm2d_add_4x4 = av1_inv_txfm2d_add_4x4_sse4_1;
av1_inv_txfm2d_add_64x64 = av1_inv_txfm2d_add_64x64_c;
if (flags & HAS_SSE4_1) av1_inv_txfm2d_add_64x64 = av1_inv_txfm2d_add_64x64_sse4_1;
av1_inv_txfm2d_add_8x8 = av1_inv_txfm2d_add_8x8_c;
if (flags & HAS_SSE4_1) av1_inv_txfm2d_add_8x8 = av1_inv_txfm2d_add_8x8_sse4_1;
av1_inv_txfm_add = av1_inv_txfm_add_c;

Просмотреть файл

@ -14,6 +14,7 @@ ARCH_MIPS equ 0
ARCH_PPC equ 0
ARCH_X86 equ 0
ARCH_X86_64 equ 1
CONFIG_2PASS_PARTITION_SEARCH_LVL equ 1
CONFIG_ACCOUNTING equ 0
CONFIG_ANALYZER equ 0
CONFIG_AV1_DECODER equ 1
@ -21,30 +22,35 @@ CONFIG_AV1_ENCODER equ 0
CONFIG_BIG_ENDIAN equ 0
CONFIG_BITSTREAM_DEBUG equ 0
CONFIG_COEFFICIENT_RANGE_CHECKING equ 0
CONFIG_COLLECT_INTER_MODE_RD_STATS equ 1
CONFIG_COLLECT_INTER_MODE_RD_STATS equ 0
CONFIG_COLLECT_RD_STATS equ 0
CONFIG_DEBUG equ 0
CONFIG_DENOISE equ 0
CONFIG_DIST_8X8 equ 1
CONFIG_DENOISE equ 1
CONFIG_DIST_8X8 equ 0
CONFIG_ENTROPY_STATS equ 0
CONFIG_FILEOPTIONS equ 1
CONFIG_FIX_GF_LENGTH equ 1
CONFIG_FP_MB_STATS equ 0
CONFIG_GCC equ 1
CONFIG_GCOV equ 0
CONFIG_GLOBAL_MOTION_SEARCH equ 1
CONFIG_GPROF equ 0
CONFIG_INSPECTION equ 0
CONFIG_INTERNAL_STATS equ 0
CONFIG_INTER_STATS_ONLY equ 0
CONFIG_LIBYUV equ 0
CONFIG_LOWBITDEPTH equ 0
CONFIG_LOWBITDEPTH equ 1
CONFIG_MAX_DECODE_PROFILE equ 2
CONFIG_MISMATCH_DEBUG equ 0
CONFIG_MSVS equ 0
CONFIG_MULTITHREAD equ 1
CONFIG_NORMAL_TILE_MODE equ 0
CONFIG_OS_SUPPORT equ 1
CONFIG_PIC equ 0
CONFIG_RD_DEBUG equ 0
CONFIG_REDUCED_ENCODER_BORDER equ 0
CONFIG_RUNTIME_CPU_DETECT equ 1
CONFIG_SHARED equ 0
CONFIG_SHARP_SETTINGS equ 0
CONFIG_SIZE_LIMIT equ 0
CONFIG_SPATIAL_RESAMPLING equ 1
CONFIG_STATIC equ 1

Просмотреть файл

@ -16,6 +16,7 @@
#define ARCH_PPC 0
#define ARCH_X86 0
#define ARCH_X86_64 1
#define CONFIG_2PASS_PARTITION_SEARCH_LVL 1
#define CONFIG_ACCOUNTING 0
#define CONFIG_ANALYZER 0
#define CONFIG_AV1_DECODER 1
@ -23,30 +24,35 @@
#define CONFIG_BIG_ENDIAN 0
#define CONFIG_BITSTREAM_DEBUG 0
#define CONFIG_COEFFICIENT_RANGE_CHECKING 0
#define CONFIG_COLLECT_INTER_MODE_RD_STATS 1
#define CONFIG_COLLECT_INTER_MODE_RD_STATS 0
#define CONFIG_COLLECT_RD_STATS 0
#define CONFIG_DEBUG 0
#define CONFIG_DENOISE 0
#define CONFIG_DIST_8X8 1
#define CONFIG_DENOISE 1
#define CONFIG_DIST_8X8 0
#define CONFIG_ENTROPY_STATS 0
#define CONFIG_FILEOPTIONS 1
#define CONFIG_FIX_GF_LENGTH 1
#define CONFIG_FP_MB_STATS 0
#define CONFIG_GCC 1
#define CONFIG_GCOV 0
#define CONFIG_GLOBAL_MOTION_SEARCH 1
#define CONFIG_GPROF 0
#define CONFIG_INSPECTION 0
#define CONFIG_INTERNAL_STATS 0
#define CONFIG_INTER_STATS_ONLY 0
#define CONFIG_LIBYUV 0
#define CONFIG_LOWBITDEPTH 0
#define CONFIG_LOWBITDEPTH 1
#define CONFIG_MAX_DECODE_PROFILE 2
#define CONFIG_MISMATCH_DEBUG 0
#define CONFIG_MSVS 0
#define CONFIG_MULTITHREAD 1
#define CONFIG_NORMAL_TILE_MODE 0
#define CONFIG_OS_SUPPORT 1
#define CONFIG_PIC 0
#define CONFIG_RD_DEBUG 0
#define CONFIG_REDUCED_ENCODER_BORDER 0
#define CONFIG_RUNTIME_CPU_DETECT 1
#define CONFIG_SHARED 0
#define CONFIG_SHARP_SETTINGS 0
#define CONFIG_SIZE_LIMIT 0
#define CONFIG_SPATIAL_RESAMPLING 1
#define CONFIG_STATIC 1

Просмотреть файл

@ -28,6 +28,7 @@ RTCD_EXTERN void (*aom_blend_a64_hmask)(uint8_t *dst, uint32_t dst_stride, const
void aom_blend_a64_mask_c(uint8_t *dst, uint32_t dst_stride, const uint8_t *src0, uint32_t src0_stride, const uint8_t *src1, uint32_t src1_stride, const uint8_t *mask, uint32_t mask_stride, int w, int h, int subx, int suby);
void aom_blend_a64_mask_sse4_1(uint8_t *dst, uint32_t dst_stride, const uint8_t *src0, uint32_t src0_stride, const uint8_t *src1, uint32_t src1_stride, const uint8_t *mask, uint32_t mask_stride, int w, int h, int subx, int suby);
void aom_blend_a64_mask_avx2(uint8_t *dst, uint32_t dst_stride, const uint8_t *src0, uint32_t src0_stride, const uint8_t *src1, uint32_t src1_stride, const uint8_t *mask, uint32_t mask_stride, int w, int h, int subx, int suby);
RTCD_EXTERN void (*aom_blend_a64_mask)(uint8_t *dst, uint32_t dst_stride, const uint8_t *src0, uint32_t src0_stride, const uint8_t *src1, uint32_t src1_stride, const uint8_t *mask, uint32_t mask_stride, int w, int h, int subx, int suby);
void aom_blend_a64_vmask_c(uint8_t *dst, uint32_t dst_stride, const uint8_t *src0, uint32_t src0_stride, const uint8_t *src1, uint32_t src1_stride, const uint8_t *mask, int w, int h);
@ -1232,6 +1233,7 @@ void aom_highbd_v_predictor_8x8_sse2(uint16_t *dst, ptrdiff_t y_stride, const ui
void aom_lowbd_blend_a64_d16_mask_c(uint8_t *dst, uint32_t dst_stride, const CONV_BUF_TYPE *src0, uint32_t src0_stride, const CONV_BUF_TYPE *src1, uint32_t src1_stride, const uint8_t *mask, uint32_t mask_stride, int w, int h, int subx, int suby, ConvolveParams *conv_params);
void aom_lowbd_blend_a64_d16_mask_sse4_1(uint8_t *dst, uint32_t dst_stride, const CONV_BUF_TYPE *src0, uint32_t src0_stride, const CONV_BUF_TYPE *src1, uint32_t src1_stride, const uint8_t *mask, uint32_t mask_stride, int w, int h, int subx, int suby, ConvolveParams *conv_params);
void aom_lowbd_blend_a64_d16_mask_avx2(uint8_t *dst, uint32_t dst_stride, const CONV_BUF_TYPE *src0, uint32_t src0_stride, const CONV_BUF_TYPE *src1, uint32_t src1_stride, const uint8_t *mask, uint32_t mask_stride, int w, int h, int subx, int suby, ConvolveParams *conv_params);
RTCD_EXTERN void (*aom_lowbd_blend_a64_d16_mask)(uint8_t *dst, uint32_t dst_stride, const CONV_BUF_TYPE *src0, uint32_t src0_stride, const CONV_BUF_TYPE *src1, uint32_t src1_stride, const uint8_t *mask, uint32_t mask_stride, int w, int h, int subx, int suby, ConvolveParams *conv_params);
void aom_lpf_horizontal_14_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh);
@ -1727,6 +1729,7 @@ static void setup_rtcd_internal(void)
if (flags & HAS_SSE4_1) aom_blend_a64_hmask = aom_blend_a64_hmask_sse4_1;
aom_blend_a64_mask = aom_blend_a64_mask_c;
if (flags & HAS_SSE4_1) aom_blend_a64_mask = aom_blend_a64_mask_sse4_1;
if (flags & HAS_AVX2) aom_blend_a64_mask = aom_blend_a64_mask_avx2;
aom_blend_a64_vmask = aom_blend_a64_vmask_c;
if (flags & HAS_SSE4_1) aom_blend_a64_vmask = aom_blend_a64_vmask_sse4_1;
aom_convolve8_horiz = aom_convolve8_horiz_sse2;
@ -1811,6 +1814,7 @@ static void setup_rtcd_internal(void)
if (flags & HAS_AVX2) aom_highbd_lpf_vertical_8_dual = aom_highbd_lpf_vertical_8_dual_avx2;
aom_lowbd_blend_a64_d16_mask = aom_lowbd_blend_a64_d16_mask_c;
if (flags & HAS_SSE4_1) aom_lowbd_blend_a64_d16_mask = aom_lowbd_blend_a64_d16_mask_sse4_1;
if (flags & HAS_AVX2) aom_lowbd_blend_a64_d16_mask = aom_lowbd_blend_a64_d16_mask_avx2;
aom_paeth_predictor_16x16 = aom_paeth_predictor_16x16_c;
if (flags & HAS_SSSE3) aom_paeth_predictor_16x16 = aom_paeth_predictor_16x16_ssse3;
if (flags & HAS_AVX2) aom_paeth_predictor_16x16 = aom_paeth_predictor_16x16_avx2;

Просмотреть файл

@ -1,6 +1,6 @@
// This file is generated. Do not edit.
#ifndef AOM_RTCD_H_
#define AOM_RTCD_H_
#ifndef AV1_RTCD_H_
#define AV1_RTCD_H_
#ifdef RTCD_C
#define RTCD_EXTERN
@ -58,10 +58,12 @@ RTCD_EXTERN void (*apply_selfguided_restoration)(const uint8_t *dat, int width,
void av1_build_compound_diffwtd_mask_c(uint8_t *mask, DIFFWTD_MASK_TYPE mask_type, const uint8_t *src0, int src0_stride, const uint8_t *src1, int src1_stride, int h, int w);
void av1_build_compound_diffwtd_mask_sse4_1(uint8_t *mask, DIFFWTD_MASK_TYPE mask_type, const uint8_t *src0, int src0_stride, const uint8_t *src1, int src1_stride, int h, int w);
void av1_build_compound_diffwtd_mask_avx2(uint8_t *mask, DIFFWTD_MASK_TYPE mask_type, const uint8_t *src0, int src0_stride, const uint8_t *src1, int src1_stride, int h, int w);
RTCD_EXTERN void (*av1_build_compound_diffwtd_mask)(uint8_t *mask, DIFFWTD_MASK_TYPE mask_type, const uint8_t *src0, int src0_stride, const uint8_t *src1, int src1_stride, int h, int w);
void av1_build_compound_diffwtd_mask_d16_c(uint8_t *mask, DIFFWTD_MASK_TYPE mask_type, const CONV_BUF_TYPE *src0, int src0_stride, const CONV_BUF_TYPE *src1, int src1_stride, int h, int w, ConvolveParams *conv_params, int bd);
void av1_build_compound_diffwtd_mask_d16_sse4_1(uint8_t *mask, DIFFWTD_MASK_TYPE mask_type, const CONV_BUF_TYPE *src0, int src0_stride, const CONV_BUF_TYPE *src1, int src1_stride, int h, int w, ConvolveParams *conv_params, int bd);
void av1_build_compound_diffwtd_mask_d16_avx2(uint8_t *mask, DIFFWTD_MASK_TYPE mask_type, const CONV_BUF_TYPE *src0, int src0_stride, const CONV_BUF_TYPE *src1, int src1_stride, int h, int w, ConvolveParams *conv_params, int bd);
RTCD_EXTERN void (*av1_build_compound_diffwtd_mask_d16)(uint8_t *mask, DIFFWTD_MASK_TYPE mask_type, const CONV_BUF_TYPE *src0, int src0_stride, const CONV_BUF_TYPE *src1, int src1_stride, int h, int w, ConvolveParams *conv_params, int bd);
void av1_build_compound_diffwtd_mask_highbd_c(uint8_t *mask, DIFFWTD_MASK_TYPE mask_type, const uint8_t *src0, int src0_stride, const uint8_t *src1, int src1_stride, int h, int w, int bd);
@ -173,6 +175,36 @@ void av1_highbd_dr_prediction_z2_c(uint16_t *dst, ptrdiff_t stride, int bw, int
void av1_highbd_dr_prediction_z3_c(uint16_t *dst, ptrdiff_t stride, int bw, int bh, const uint16_t *above, const uint16_t *left, int upsample_left, int dx, int dy, int bd);
#define av1_highbd_dr_prediction_z3 av1_highbd_dr_prediction_z3_c
void av1_highbd_inv_txfm_add_c(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_sse4_1(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_avx2(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
RTCD_EXTERN void (*av1_highbd_inv_txfm_add)(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_16x16_c(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_16x16_sse4_1(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
RTCD_EXTERN void (*av1_highbd_inv_txfm_add_16x16)(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_16x8_c(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_16x8_sse4_1(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
RTCD_EXTERN void (*av1_highbd_inv_txfm_add_16x8)(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_32x32_c(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_32x32_sse4_1(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_32x32_avx2(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
RTCD_EXTERN void (*av1_highbd_inv_txfm_add_32x32)(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_4x4_c(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_4x4_sse4_1(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
RTCD_EXTERN void (*av1_highbd_inv_txfm_add_4x4)(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_8x16_c(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_8x16_sse4_1(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
RTCD_EXTERN void (*av1_highbd_inv_txfm_add_8x16)(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_8x8_c(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_8x8_sse4_1(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
RTCD_EXTERN void (*av1_highbd_inv_txfm_add_8x8)(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_iwht4x4_16_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride, int bd);
#define av1_highbd_iwht4x4_16_add av1_highbd_iwht4x4_16_add_c
@ -209,8 +241,7 @@ void av1_highbd_wiener_convolve_add_src_avx2(const uint8_t *src, ptrdiff_t src_s
RTCD_EXTERN void (*av1_highbd_wiener_convolve_add_src)(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h, const ConvolveParams *conv_params, int bps);
void av1_inv_txfm2d_add_16x16_c(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd);
void av1_inv_txfm2d_add_16x16_sse4_1(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd);
RTCD_EXTERN void (*av1_inv_txfm2d_add_16x16)(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd);
#define av1_inv_txfm2d_add_16x16 av1_inv_txfm2d_add_16x16_c
void av1_inv_txfm2d_add_16x32_c(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd);
#define av1_inv_txfm2d_add_16x32 av1_inv_txfm2d_add_16x32_c
@ -228,8 +259,7 @@ void av1_inv_txfm2d_add_32x16_c(const int32_t *input, uint16_t *output, int stri
#define av1_inv_txfm2d_add_32x16 av1_inv_txfm2d_add_32x16_c
void av1_inv_txfm2d_add_32x32_c(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd);
void av1_inv_txfm2d_add_32x32_avx2(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd);
RTCD_EXTERN void (*av1_inv_txfm2d_add_32x32)(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd);
#define av1_inv_txfm2d_add_32x32 av1_inv_txfm2d_add_32x32_c
void av1_inv_txfm2d_add_32x64_c(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd);
#define av1_inv_txfm2d_add_32x64 av1_inv_txfm2d_add_32x64_c
@ -254,8 +284,7 @@ void av1_inv_txfm2d_add_64x32_c(const int32_t *input, uint16_t *output, int stri
#define av1_inv_txfm2d_add_64x32 av1_inv_txfm2d_add_64x32_c
void av1_inv_txfm2d_add_64x64_c(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd);
void av1_inv_txfm2d_add_64x64_sse4_1(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd);
RTCD_EXTERN void (*av1_inv_txfm2d_add_64x64)(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd);
#define av1_inv_txfm2d_add_64x64 av1_inv_txfm2d_add_64x64_c
void av1_inv_txfm2d_add_8x16_c(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd);
#define av1_inv_txfm2d_add_8x16 av1_inv_txfm2d_add_8x16_c
@ -295,18 +324,18 @@ void av1_jnt_convolve_y_sse2(const uint8_t *src, int src_stride, uint8_t *dst, i
void av1_jnt_convolve_y_avx2(const uint8_t *src, int src_stride, uint8_t *dst, int dst_stride, int w, int h, const InterpFilterParams *filter_params_x, const InterpFilterParams *filter_params_y, const int subpel_x_q4, const int subpel_y_q4, ConvolveParams *conv_params);
RTCD_EXTERN void (*av1_jnt_convolve_y)(const uint8_t *src, int src_stride, uint8_t *dst, int dst_stride, int w, int h, const InterpFilterParams *filter_params_x, const InterpFilterParams *filter_params_y, const int subpel_x_q4, const int subpel_y_q4, ConvolveParams *conv_params);
void av1_selfguided_restoration_c(const uint8_t *dgd8, int width, int height,
int dgd_stride, int32_t *flt0, int32_t *flt1, int flt_stride,
int sgr_params_idx, int bit_depth, int highbd);
void av1_selfguided_restoration_sse4_1(const uint8_t *dgd8, int width, int height,
int dgd_stride, int32_t *flt0, int32_t *flt1, int flt_stride,
int sgr_params_idx, int bit_depth, int highbd);
void av1_selfguided_restoration_avx2(const uint8_t *dgd8, int width, int height,
int dgd_stride, int32_t *flt0, int32_t *flt1, int flt_stride,
int sgr_params_idx, int bit_depth, int highbd);
RTCD_EXTERN void (*av1_selfguided_restoration)(const uint8_t *dgd8, int width, int height,
int dgd_stride, int32_t *flt0, int32_t *flt1, int flt_stride,
int sgr_params_idx, int bit_depth, int highbd);
int av1_selfguided_restoration_c(const uint8_t *dgd8, int width, int height,
int dgd_stride, int32_t *flt0, int32_t *flt1, int flt_stride,
int sgr_params_idx, int bit_depth, int highbd);
int av1_selfguided_restoration_sse4_1(const uint8_t *dgd8, int width, int height,
int dgd_stride, int32_t *flt0, int32_t *flt1, int flt_stride,
int sgr_params_idx, int bit_depth, int highbd);
int av1_selfguided_restoration_avx2(const uint8_t *dgd8, int width, int height,
int dgd_stride, int32_t *flt0, int32_t *flt1, int flt_stride,
int sgr_params_idx, int bit_depth, int highbd);
RTCD_EXTERN int (*av1_selfguided_restoration)(const uint8_t *dgd8, int width, int height,
int dgd_stride, int32_t *flt0, int32_t *flt1, int flt_stride,
int sgr_params_idx, int bit_depth, int highbd);
void av1_upsample_intra_edge_c(uint8_t *p, int sz);
void av1_upsample_intra_edge_sse4_1(uint8_t *p, int sz);
@ -398,7 +427,7 @@ cfl_subtract_average_fn get_subtract_average_fn_sse2(TX_SIZE tx_size);
cfl_subtract_average_fn get_subtract_average_fn_avx2(TX_SIZE tx_size);
RTCD_EXTERN cfl_subtract_average_fn (*get_subtract_average_fn)(TX_SIZE tx_size);
void aom_rtcd(void);
void av1_rtcd(void);
#ifdef RTCD_C
#include "aom_ports/x86.h"
@ -413,8 +442,10 @@ static void setup_rtcd_internal(void)
if (flags & HAS_AVX2) apply_selfguided_restoration = apply_selfguided_restoration_avx2;
av1_build_compound_diffwtd_mask = av1_build_compound_diffwtd_mask_c;
if (flags & HAS_SSE4_1) av1_build_compound_diffwtd_mask = av1_build_compound_diffwtd_mask_sse4_1;
if (flags & HAS_AVX2) av1_build_compound_diffwtd_mask = av1_build_compound_diffwtd_mask_avx2;
av1_build_compound_diffwtd_mask_d16 = av1_build_compound_diffwtd_mask_d16_c;
if (flags & HAS_SSE4_1) av1_build_compound_diffwtd_mask_d16 = av1_build_compound_diffwtd_mask_d16_sse4_1;
if (flags & HAS_AVX2) av1_build_compound_diffwtd_mask_d16 = av1_build_compound_diffwtd_mask_d16_avx2;
av1_build_compound_diffwtd_mask_highbd = av1_build_compound_diffwtd_mask_highbd_c;
if (flags & HAS_SSSE3) av1_build_compound_diffwtd_mask_highbd = av1_build_compound_diffwtd_mask_highbd_ssse3;
if (flags & HAS_AVX2) av1_build_compound_diffwtd_mask_highbd = av1_build_compound_diffwtd_mask_highbd_avx2;
@ -451,6 +482,22 @@ static void setup_rtcd_internal(void)
av1_highbd_convolve_y_sr = av1_highbd_convolve_y_sr_c;
if (flags & HAS_SSSE3) av1_highbd_convolve_y_sr = av1_highbd_convolve_y_sr_ssse3;
if (flags & HAS_AVX2) av1_highbd_convolve_y_sr = av1_highbd_convolve_y_sr_avx2;
av1_highbd_inv_txfm_add = av1_highbd_inv_txfm_add_c;
if (flags & HAS_SSE4_1) av1_highbd_inv_txfm_add = av1_highbd_inv_txfm_add_sse4_1;
if (flags & HAS_AVX2) av1_highbd_inv_txfm_add = av1_highbd_inv_txfm_add_avx2;
av1_highbd_inv_txfm_add_16x16 = av1_highbd_inv_txfm_add_16x16_c;
if (flags & HAS_SSE4_1) av1_highbd_inv_txfm_add_16x16 = av1_highbd_inv_txfm_add_16x16_sse4_1;
av1_highbd_inv_txfm_add_16x8 = av1_highbd_inv_txfm_add_16x8_c;
if (flags & HAS_SSE4_1) av1_highbd_inv_txfm_add_16x8 = av1_highbd_inv_txfm_add_16x8_sse4_1;
av1_highbd_inv_txfm_add_32x32 = av1_highbd_inv_txfm_add_32x32_c;
if (flags & HAS_SSE4_1) av1_highbd_inv_txfm_add_32x32 = av1_highbd_inv_txfm_add_32x32_sse4_1;
if (flags & HAS_AVX2) av1_highbd_inv_txfm_add_32x32 = av1_highbd_inv_txfm_add_32x32_avx2;
av1_highbd_inv_txfm_add_4x4 = av1_highbd_inv_txfm_add_4x4_c;
if (flags & HAS_SSE4_1) av1_highbd_inv_txfm_add_4x4 = av1_highbd_inv_txfm_add_4x4_sse4_1;
av1_highbd_inv_txfm_add_8x16 = av1_highbd_inv_txfm_add_8x16_c;
if (flags & HAS_SSE4_1) av1_highbd_inv_txfm_add_8x16 = av1_highbd_inv_txfm_add_8x16_sse4_1;
av1_highbd_inv_txfm_add_8x8 = av1_highbd_inv_txfm_add_8x8_c;
if (flags & HAS_SSE4_1) av1_highbd_inv_txfm_add_8x8 = av1_highbd_inv_txfm_add_8x8_sse4_1;
av1_highbd_jnt_convolve_2d = av1_highbd_jnt_convolve_2d_c;
if (flags & HAS_SSE4_1) av1_highbd_jnt_convolve_2d = av1_highbd_jnt_convolve_2d_sse4_1;
if (flags & HAS_AVX2) av1_highbd_jnt_convolve_2d = av1_highbd_jnt_convolve_2d_avx2;
@ -468,14 +515,8 @@ static void setup_rtcd_internal(void)
av1_highbd_wiener_convolve_add_src = av1_highbd_wiener_convolve_add_src_c;
if (flags & HAS_SSSE3) av1_highbd_wiener_convolve_add_src = av1_highbd_wiener_convolve_add_src_ssse3;
if (flags & HAS_AVX2) av1_highbd_wiener_convolve_add_src = av1_highbd_wiener_convolve_add_src_avx2;
av1_inv_txfm2d_add_16x16 = av1_inv_txfm2d_add_16x16_c;
if (flags & HAS_SSE4_1) av1_inv_txfm2d_add_16x16 = av1_inv_txfm2d_add_16x16_sse4_1;
av1_inv_txfm2d_add_32x32 = av1_inv_txfm2d_add_32x32_c;
if (flags & HAS_AVX2) av1_inv_txfm2d_add_32x32 = av1_inv_txfm2d_add_32x32_avx2;
av1_inv_txfm2d_add_4x4 = av1_inv_txfm2d_add_4x4_c;
if (flags & HAS_SSE4_1) av1_inv_txfm2d_add_4x4 = av1_inv_txfm2d_add_4x4_sse4_1;
av1_inv_txfm2d_add_64x64 = av1_inv_txfm2d_add_64x64_c;
if (flags & HAS_SSE4_1) av1_inv_txfm2d_add_64x64 = av1_inv_txfm2d_add_64x64_sse4_1;
av1_inv_txfm2d_add_8x8 = av1_inv_txfm2d_add_8x8_c;
if (flags & HAS_SSE4_1) av1_inv_txfm2d_add_8x8 = av1_inv_txfm2d_add_8x8_sse4_1;
av1_inv_txfm_add = av1_inv_txfm_add_c;

Просмотреть файл

@ -14,6 +14,7 @@ ARCH_MIPS equ 0
ARCH_PPC equ 0
ARCH_X86 equ 1
ARCH_X86_64 equ 0
CONFIG_2PASS_PARTITION_SEARCH_LVL equ 1
CONFIG_ACCOUNTING equ 0
CONFIG_ANALYZER equ 0
CONFIG_AV1_DECODER equ 1
@ -21,30 +22,35 @@ CONFIG_AV1_ENCODER equ 0
CONFIG_BIG_ENDIAN equ 0
CONFIG_BITSTREAM_DEBUG equ 0
CONFIG_COEFFICIENT_RANGE_CHECKING equ 0
CONFIG_COLLECT_INTER_MODE_RD_STATS equ 1
CONFIG_COLLECT_INTER_MODE_RD_STATS equ 0
CONFIG_COLLECT_RD_STATS equ 0
CONFIG_DEBUG equ 0
CONFIG_DENOISE equ 0
CONFIG_DIST_8X8 equ 1
CONFIG_DENOISE equ 1
CONFIG_DIST_8X8 equ 0
CONFIG_ENTROPY_STATS equ 0
CONFIG_FILEOPTIONS equ 1
CONFIG_FIX_GF_LENGTH equ 1
CONFIG_FP_MB_STATS equ 0
CONFIG_GCC equ 1
CONFIG_GCOV equ 0
CONFIG_GLOBAL_MOTION_SEARCH equ 1
CONFIG_GPROF equ 0
CONFIG_INSPECTION equ 0
CONFIG_INTERNAL_STATS equ 0
CONFIG_INTER_STATS_ONLY equ 0
CONFIG_LIBYUV equ 0
CONFIG_LOWBITDEPTH equ 0
CONFIG_LOWBITDEPTH equ 1
CONFIG_MAX_DECODE_PROFILE equ 2
CONFIG_MISMATCH_DEBUG equ 0
CONFIG_MSVS equ 1
CONFIG_MULTITHREAD equ 1
CONFIG_NORMAL_TILE_MODE equ 0
CONFIG_OS_SUPPORT equ 1
CONFIG_PIC equ 0
CONFIG_RD_DEBUG equ 0
CONFIG_REDUCED_ENCODER_BORDER equ 0
CONFIG_RUNTIME_CPU_DETECT equ 1
CONFIG_SHARED equ 0
CONFIG_SHARP_SETTINGS equ 0
CONFIG_SIZE_LIMIT equ 0
CONFIG_SPATIAL_RESAMPLING equ 1
CONFIG_STATIC equ 1

Просмотреть файл

@ -16,6 +16,7 @@
#define ARCH_PPC 0
#define ARCH_X86 1
#define ARCH_X86_64 0
#define CONFIG_2PASS_PARTITION_SEARCH_LVL 1
#define CONFIG_ACCOUNTING 0
#define CONFIG_ANALYZER 0
#define CONFIG_AV1_DECODER 1
@ -23,30 +24,35 @@
#define CONFIG_BIG_ENDIAN 0
#define CONFIG_BITSTREAM_DEBUG 0
#define CONFIG_COEFFICIENT_RANGE_CHECKING 0
#define CONFIG_COLLECT_INTER_MODE_RD_STATS 1
#define CONFIG_COLLECT_INTER_MODE_RD_STATS 0
#define CONFIG_COLLECT_RD_STATS 0
#define CONFIG_DEBUG 0
#define CONFIG_DENOISE 0
#define CONFIG_DIST_8X8 1
#define CONFIG_DENOISE 1
#define CONFIG_DIST_8X8 0
#define CONFIG_ENTROPY_STATS 0
#define CONFIG_FILEOPTIONS 1
#define CONFIG_FIX_GF_LENGTH 1
#define CONFIG_FP_MB_STATS 0
#define CONFIG_GCC 1
#define CONFIG_GCOV 0
#define CONFIG_GLOBAL_MOTION_SEARCH 1
#define CONFIG_GPROF 0
#define CONFIG_INSPECTION 0
#define CONFIG_INTERNAL_STATS 0
#define CONFIG_INTER_STATS_ONLY 0
#define CONFIG_LIBYUV 0
#define CONFIG_LOWBITDEPTH 0
#define CONFIG_LOWBITDEPTH 1
#define CONFIG_MAX_DECODE_PROFILE 2
#define CONFIG_MISMATCH_DEBUG 0
#define CONFIG_MSVS 1
#define CONFIG_MULTITHREAD 1
#define CONFIG_NORMAL_TILE_MODE 0
#define CONFIG_OS_SUPPORT 1
#define CONFIG_PIC 0
#define CONFIG_RD_DEBUG 0
#define CONFIG_REDUCED_ENCODER_BORDER 0
#define CONFIG_RUNTIME_CPU_DETECT 1
#define CONFIG_SHARED 0
#define CONFIG_SHARP_SETTINGS 0
#define CONFIG_SIZE_LIMIT 0
#define CONFIG_SPATIAL_RESAMPLING 1
#define CONFIG_STATIC 1

Просмотреть файл

@ -28,6 +28,7 @@ RTCD_EXTERN void (*aom_blend_a64_hmask)(uint8_t *dst, uint32_t dst_stride, const
void aom_blend_a64_mask_c(uint8_t *dst, uint32_t dst_stride, const uint8_t *src0, uint32_t src0_stride, const uint8_t *src1, uint32_t src1_stride, const uint8_t *mask, uint32_t mask_stride, int w, int h, int subx, int suby);
void aom_blend_a64_mask_sse4_1(uint8_t *dst, uint32_t dst_stride, const uint8_t *src0, uint32_t src0_stride, const uint8_t *src1, uint32_t src1_stride, const uint8_t *mask, uint32_t mask_stride, int w, int h, int subx, int suby);
void aom_blend_a64_mask_avx2(uint8_t *dst, uint32_t dst_stride, const uint8_t *src0, uint32_t src0_stride, const uint8_t *src1, uint32_t src1_stride, const uint8_t *mask, uint32_t mask_stride, int w, int h, int subx, int suby);
RTCD_EXTERN void (*aom_blend_a64_mask)(uint8_t *dst, uint32_t dst_stride, const uint8_t *src0, uint32_t src0_stride, const uint8_t *src1, uint32_t src1_stride, const uint8_t *mask, uint32_t mask_stride, int w, int h, int subx, int suby);
void aom_blend_a64_vmask_c(uint8_t *dst, uint32_t dst_stride, const uint8_t *src0, uint32_t src0_stride, const uint8_t *src1, uint32_t src1_stride, const uint8_t *mask, int w, int h);
@ -1230,6 +1231,7 @@ RTCD_EXTERN void (*aom_highbd_v_predictor_8x8)(uint16_t *dst, ptrdiff_t y_stride
void aom_lowbd_blend_a64_d16_mask_c(uint8_t *dst, uint32_t dst_stride, const CONV_BUF_TYPE *src0, uint32_t src0_stride, const CONV_BUF_TYPE *src1, uint32_t src1_stride, const uint8_t *mask, uint32_t mask_stride, int w, int h, int subx, int suby, ConvolveParams *conv_params);
void aom_lowbd_blend_a64_d16_mask_sse4_1(uint8_t *dst, uint32_t dst_stride, const CONV_BUF_TYPE *src0, uint32_t src0_stride, const CONV_BUF_TYPE *src1, uint32_t src1_stride, const uint8_t *mask, uint32_t mask_stride, int w, int h, int subx, int suby, ConvolveParams *conv_params);
void aom_lowbd_blend_a64_d16_mask_avx2(uint8_t *dst, uint32_t dst_stride, const CONV_BUF_TYPE *src0, uint32_t src0_stride, const CONV_BUF_TYPE *src1, uint32_t src1_stride, const uint8_t *mask, uint32_t mask_stride, int w, int h, int subx, int suby, ConvolveParams *conv_params);
RTCD_EXTERN void (*aom_lowbd_blend_a64_d16_mask)(uint8_t *dst, uint32_t dst_stride, const CONV_BUF_TYPE *src0, uint32_t src0_stride, const CONV_BUF_TYPE *src1, uint32_t src1_stride, const uint8_t *mask, uint32_t mask_stride, int w, int h, int subx, int suby, ConvolveParams *conv_params);
void aom_lpf_horizontal_14_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh);
@ -1725,6 +1727,7 @@ static void setup_rtcd_internal(void)
if (flags & HAS_SSE4_1) aom_blend_a64_hmask = aom_blend_a64_hmask_sse4_1;
aom_blend_a64_mask = aom_blend_a64_mask_c;
if (flags & HAS_SSE4_1) aom_blend_a64_mask = aom_blend_a64_mask_sse4_1;
if (flags & HAS_AVX2) aom_blend_a64_mask = aom_blend_a64_mask_avx2;
aom_blend_a64_vmask = aom_blend_a64_vmask_c;
if (flags & HAS_SSE4_1) aom_blend_a64_vmask = aom_blend_a64_vmask_sse4_1;
aom_convolve8_horiz = aom_convolve8_horiz_c;
@ -2125,6 +2128,7 @@ static void setup_rtcd_internal(void)
if (flags & HAS_SSE2) aom_highbd_v_predictor_8x8 = aom_highbd_v_predictor_8x8_sse2;
aom_lowbd_blend_a64_d16_mask = aom_lowbd_blend_a64_d16_mask_c;
if (flags & HAS_SSE4_1) aom_lowbd_blend_a64_d16_mask = aom_lowbd_blend_a64_d16_mask_sse4_1;
if (flags & HAS_AVX2) aom_lowbd_blend_a64_d16_mask = aom_lowbd_blend_a64_d16_mask_avx2;
aom_lpf_horizontal_14 = aom_lpf_horizontal_14_c;
if (flags & HAS_SSE2) aom_lpf_horizontal_14 = aom_lpf_horizontal_14_sse2;
aom_lpf_horizontal_14_dual = aom_lpf_horizontal_14_dual_c;

Просмотреть файл

@ -1,6 +1,6 @@
// This file is generated. Do not edit.
#ifndef AOM_RTCD_H_
#define AOM_RTCD_H_
#ifndef AV1_RTCD_H_
#define AV1_RTCD_H_
#ifdef RTCD_C
#define RTCD_EXTERN
@ -58,10 +58,12 @@ RTCD_EXTERN void (*apply_selfguided_restoration)(const uint8_t *dat, int width,
void av1_build_compound_diffwtd_mask_c(uint8_t *mask, DIFFWTD_MASK_TYPE mask_type, const uint8_t *src0, int src0_stride, const uint8_t *src1, int src1_stride, int h, int w);
void av1_build_compound_diffwtd_mask_sse4_1(uint8_t *mask, DIFFWTD_MASK_TYPE mask_type, const uint8_t *src0, int src0_stride, const uint8_t *src1, int src1_stride, int h, int w);
void av1_build_compound_diffwtd_mask_avx2(uint8_t *mask, DIFFWTD_MASK_TYPE mask_type, const uint8_t *src0, int src0_stride, const uint8_t *src1, int src1_stride, int h, int w);
RTCD_EXTERN void (*av1_build_compound_diffwtd_mask)(uint8_t *mask, DIFFWTD_MASK_TYPE mask_type, const uint8_t *src0, int src0_stride, const uint8_t *src1, int src1_stride, int h, int w);
void av1_build_compound_diffwtd_mask_d16_c(uint8_t *mask, DIFFWTD_MASK_TYPE mask_type, const CONV_BUF_TYPE *src0, int src0_stride, const CONV_BUF_TYPE *src1, int src1_stride, int h, int w, ConvolveParams *conv_params, int bd);
void av1_build_compound_diffwtd_mask_d16_sse4_1(uint8_t *mask, DIFFWTD_MASK_TYPE mask_type, const CONV_BUF_TYPE *src0, int src0_stride, const CONV_BUF_TYPE *src1, int src1_stride, int h, int w, ConvolveParams *conv_params, int bd);
void av1_build_compound_diffwtd_mask_d16_avx2(uint8_t *mask, DIFFWTD_MASK_TYPE mask_type, const CONV_BUF_TYPE *src0, int src0_stride, const CONV_BUF_TYPE *src1, int src1_stride, int h, int w, ConvolveParams *conv_params, int bd);
RTCD_EXTERN void (*av1_build_compound_diffwtd_mask_d16)(uint8_t *mask, DIFFWTD_MASK_TYPE mask_type, const CONV_BUF_TYPE *src0, int src0_stride, const CONV_BUF_TYPE *src1, int src1_stride, int h, int w, ConvolveParams *conv_params, int bd);
void av1_build_compound_diffwtd_mask_highbd_c(uint8_t *mask, DIFFWTD_MASK_TYPE mask_type, const uint8_t *src0, int src0_stride, const uint8_t *src1, int src1_stride, int h, int w, int bd);
@ -170,6 +172,36 @@ void av1_highbd_dr_prediction_z2_c(uint16_t *dst, ptrdiff_t stride, int bw, int
void av1_highbd_dr_prediction_z3_c(uint16_t *dst, ptrdiff_t stride, int bw, int bh, const uint16_t *above, const uint16_t *left, int upsample_left, int dx, int dy, int bd);
#define av1_highbd_dr_prediction_z3 av1_highbd_dr_prediction_z3_c
void av1_highbd_inv_txfm_add_c(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_sse4_1(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_avx2(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
RTCD_EXTERN void (*av1_highbd_inv_txfm_add)(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_16x16_c(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_16x16_sse4_1(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
RTCD_EXTERN void (*av1_highbd_inv_txfm_add_16x16)(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_16x8_c(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_16x8_sse4_1(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
RTCD_EXTERN void (*av1_highbd_inv_txfm_add_16x8)(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_32x32_c(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_32x32_sse4_1(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_32x32_avx2(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
RTCD_EXTERN void (*av1_highbd_inv_txfm_add_32x32)(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_4x4_c(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_4x4_sse4_1(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
RTCD_EXTERN void (*av1_highbd_inv_txfm_add_4x4)(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_8x16_c(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_8x16_sse4_1(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
RTCD_EXTERN void (*av1_highbd_inv_txfm_add_8x16)(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_8x8_c(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_8x8_sse4_1(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
RTCD_EXTERN void (*av1_highbd_inv_txfm_add_8x8)(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_iwht4x4_16_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride, int bd);
#define av1_highbd_iwht4x4_16_add av1_highbd_iwht4x4_16_add_c
@ -206,8 +238,7 @@ void av1_highbd_wiener_convolve_add_src_avx2(const uint8_t *src, ptrdiff_t src_s
RTCD_EXTERN void (*av1_highbd_wiener_convolve_add_src)(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h, const ConvolveParams *conv_params, int bps);
void av1_inv_txfm2d_add_16x16_c(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd);
void av1_inv_txfm2d_add_16x16_sse4_1(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd);
RTCD_EXTERN void (*av1_inv_txfm2d_add_16x16)(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd);
#define av1_inv_txfm2d_add_16x16 av1_inv_txfm2d_add_16x16_c
void av1_inv_txfm2d_add_16x32_c(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd);
#define av1_inv_txfm2d_add_16x32 av1_inv_txfm2d_add_16x32_c
@ -225,8 +256,7 @@ void av1_inv_txfm2d_add_32x16_c(const int32_t *input, uint16_t *output, int stri
#define av1_inv_txfm2d_add_32x16 av1_inv_txfm2d_add_32x16_c
void av1_inv_txfm2d_add_32x32_c(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd);
void av1_inv_txfm2d_add_32x32_avx2(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd);
RTCD_EXTERN void (*av1_inv_txfm2d_add_32x32)(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd);
#define av1_inv_txfm2d_add_32x32 av1_inv_txfm2d_add_32x32_c
void av1_inv_txfm2d_add_32x64_c(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd);
#define av1_inv_txfm2d_add_32x64 av1_inv_txfm2d_add_32x64_c
@ -251,8 +281,7 @@ void av1_inv_txfm2d_add_64x32_c(const int32_t *input, uint16_t *output, int stri
#define av1_inv_txfm2d_add_64x32 av1_inv_txfm2d_add_64x32_c
void av1_inv_txfm2d_add_64x64_c(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd);
void av1_inv_txfm2d_add_64x64_sse4_1(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd);
RTCD_EXTERN void (*av1_inv_txfm2d_add_64x64)(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd);
#define av1_inv_txfm2d_add_64x64 av1_inv_txfm2d_add_64x64_c
void av1_inv_txfm2d_add_8x16_c(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd);
#define av1_inv_txfm2d_add_8x16 av1_inv_txfm2d_add_8x16_c
@ -292,18 +321,18 @@ void av1_jnt_convolve_y_sse2(const uint8_t *src, int src_stride, uint8_t *dst, i
void av1_jnt_convolve_y_avx2(const uint8_t *src, int src_stride, uint8_t *dst, int dst_stride, int w, int h, const InterpFilterParams *filter_params_x, const InterpFilterParams *filter_params_y, const int subpel_x_q4, const int subpel_y_q4, ConvolveParams *conv_params);
RTCD_EXTERN void (*av1_jnt_convolve_y)(const uint8_t *src, int src_stride, uint8_t *dst, int dst_stride, int w, int h, const InterpFilterParams *filter_params_x, const InterpFilterParams *filter_params_y, const int subpel_x_q4, const int subpel_y_q4, ConvolveParams *conv_params);
void av1_selfguided_restoration_c(const uint8_t *dgd8, int width, int height,
int dgd_stride, int32_t *flt0, int32_t *flt1, int flt_stride,
int sgr_params_idx, int bit_depth, int highbd);
void av1_selfguided_restoration_sse4_1(const uint8_t *dgd8, int width, int height,
int dgd_stride, int32_t *flt0, int32_t *flt1, int flt_stride,
int sgr_params_idx, int bit_depth, int highbd);
void av1_selfguided_restoration_avx2(const uint8_t *dgd8, int width, int height,
int dgd_stride, int32_t *flt0, int32_t *flt1, int flt_stride,
int sgr_params_idx, int bit_depth, int highbd);
RTCD_EXTERN void (*av1_selfguided_restoration)(const uint8_t *dgd8, int width, int height,
int dgd_stride, int32_t *flt0, int32_t *flt1, int flt_stride,
int sgr_params_idx, int bit_depth, int highbd);
int av1_selfguided_restoration_c(const uint8_t *dgd8, int width, int height,
int dgd_stride, int32_t *flt0, int32_t *flt1, int flt_stride,
int sgr_params_idx, int bit_depth, int highbd);
int av1_selfguided_restoration_sse4_1(const uint8_t *dgd8, int width, int height,
int dgd_stride, int32_t *flt0, int32_t *flt1, int flt_stride,
int sgr_params_idx, int bit_depth, int highbd);
int av1_selfguided_restoration_avx2(const uint8_t *dgd8, int width, int height,
int dgd_stride, int32_t *flt0, int32_t *flt1, int flt_stride,
int sgr_params_idx, int bit_depth, int highbd);
RTCD_EXTERN int (*av1_selfguided_restoration)(const uint8_t *dgd8, int width, int height,
int dgd_stride, int32_t *flt0, int32_t *flt1, int flt_stride,
int sgr_params_idx, int bit_depth, int highbd);
void av1_upsample_intra_edge_c(uint8_t *p, int sz);
void av1_upsample_intra_edge_sse4_1(uint8_t *p, int sz);
@ -395,7 +424,7 @@ cfl_subtract_average_fn get_subtract_average_fn_sse2(TX_SIZE tx_size);
cfl_subtract_average_fn get_subtract_average_fn_avx2(TX_SIZE tx_size);
RTCD_EXTERN cfl_subtract_average_fn (*get_subtract_average_fn)(TX_SIZE tx_size);
void aom_rtcd(void);
void av1_rtcd(void);
#ifdef RTCD_C
#include "aom_ports/x86.h"
@ -410,8 +439,10 @@ static void setup_rtcd_internal(void)
if (flags & HAS_AVX2) apply_selfguided_restoration = apply_selfguided_restoration_avx2;
av1_build_compound_diffwtd_mask = av1_build_compound_diffwtd_mask_c;
if (flags & HAS_SSE4_1) av1_build_compound_diffwtd_mask = av1_build_compound_diffwtd_mask_sse4_1;
if (flags & HAS_AVX2) av1_build_compound_diffwtd_mask = av1_build_compound_diffwtd_mask_avx2;
av1_build_compound_diffwtd_mask_d16 = av1_build_compound_diffwtd_mask_d16_c;
if (flags & HAS_SSE4_1) av1_build_compound_diffwtd_mask_d16 = av1_build_compound_diffwtd_mask_d16_sse4_1;
if (flags & HAS_AVX2) av1_build_compound_diffwtd_mask_d16 = av1_build_compound_diffwtd_mask_d16_avx2;
av1_build_compound_diffwtd_mask_highbd = av1_build_compound_diffwtd_mask_highbd_c;
if (flags & HAS_SSSE3) av1_build_compound_diffwtd_mask_highbd = av1_build_compound_diffwtd_mask_highbd_ssse3;
if (flags & HAS_AVX2) av1_build_compound_diffwtd_mask_highbd = av1_build_compound_diffwtd_mask_highbd_avx2;
@ -453,6 +484,22 @@ static void setup_rtcd_internal(void)
av1_highbd_convolve_y_sr = av1_highbd_convolve_y_sr_c;
if (flags & HAS_SSSE3) av1_highbd_convolve_y_sr = av1_highbd_convolve_y_sr_ssse3;
if (flags & HAS_AVX2) av1_highbd_convolve_y_sr = av1_highbd_convolve_y_sr_avx2;
av1_highbd_inv_txfm_add = av1_highbd_inv_txfm_add_c;
if (flags & HAS_SSE4_1) av1_highbd_inv_txfm_add = av1_highbd_inv_txfm_add_sse4_1;
if (flags & HAS_AVX2) av1_highbd_inv_txfm_add = av1_highbd_inv_txfm_add_avx2;
av1_highbd_inv_txfm_add_16x16 = av1_highbd_inv_txfm_add_16x16_c;
if (flags & HAS_SSE4_1) av1_highbd_inv_txfm_add_16x16 = av1_highbd_inv_txfm_add_16x16_sse4_1;
av1_highbd_inv_txfm_add_16x8 = av1_highbd_inv_txfm_add_16x8_c;
if (flags & HAS_SSE4_1) av1_highbd_inv_txfm_add_16x8 = av1_highbd_inv_txfm_add_16x8_sse4_1;
av1_highbd_inv_txfm_add_32x32 = av1_highbd_inv_txfm_add_32x32_c;
if (flags & HAS_SSE4_1) av1_highbd_inv_txfm_add_32x32 = av1_highbd_inv_txfm_add_32x32_sse4_1;
if (flags & HAS_AVX2) av1_highbd_inv_txfm_add_32x32 = av1_highbd_inv_txfm_add_32x32_avx2;
av1_highbd_inv_txfm_add_4x4 = av1_highbd_inv_txfm_add_4x4_c;
if (flags & HAS_SSE4_1) av1_highbd_inv_txfm_add_4x4 = av1_highbd_inv_txfm_add_4x4_sse4_1;
av1_highbd_inv_txfm_add_8x16 = av1_highbd_inv_txfm_add_8x16_c;
if (flags & HAS_SSE4_1) av1_highbd_inv_txfm_add_8x16 = av1_highbd_inv_txfm_add_8x16_sse4_1;
av1_highbd_inv_txfm_add_8x8 = av1_highbd_inv_txfm_add_8x8_c;
if (flags & HAS_SSE4_1) av1_highbd_inv_txfm_add_8x8 = av1_highbd_inv_txfm_add_8x8_sse4_1;
av1_highbd_jnt_convolve_2d = av1_highbd_jnt_convolve_2d_c;
if (flags & HAS_SSE4_1) av1_highbd_jnt_convolve_2d = av1_highbd_jnt_convolve_2d_sse4_1;
if (flags & HAS_AVX2) av1_highbd_jnt_convolve_2d = av1_highbd_jnt_convolve_2d_avx2;
@ -470,14 +517,8 @@ static void setup_rtcd_internal(void)
av1_highbd_wiener_convolve_add_src = av1_highbd_wiener_convolve_add_src_c;
if (flags & HAS_SSSE3) av1_highbd_wiener_convolve_add_src = av1_highbd_wiener_convolve_add_src_ssse3;
if (flags & HAS_AVX2) av1_highbd_wiener_convolve_add_src = av1_highbd_wiener_convolve_add_src_avx2;
av1_inv_txfm2d_add_16x16 = av1_inv_txfm2d_add_16x16_c;
if (flags & HAS_SSE4_1) av1_inv_txfm2d_add_16x16 = av1_inv_txfm2d_add_16x16_sse4_1;
av1_inv_txfm2d_add_32x32 = av1_inv_txfm2d_add_32x32_c;
if (flags & HAS_AVX2) av1_inv_txfm2d_add_32x32 = av1_inv_txfm2d_add_32x32_avx2;
av1_inv_txfm2d_add_4x4 = av1_inv_txfm2d_add_4x4_c;
if (flags & HAS_SSE4_1) av1_inv_txfm2d_add_4x4 = av1_inv_txfm2d_add_4x4_sse4_1;
av1_inv_txfm2d_add_64x64 = av1_inv_txfm2d_add_64x64_c;
if (flags & HAS_SSE4_1) av1_inv_txfm2d_add_64x64 = av1_inv_txfm2d_add_64x64_sse4_1;
av1_inv_txfm2d_add_8x8 = av1_inv_txfm2d_add_8x8_c;
if (flags & HAS_SSE4_1) av1_inv_txfm2d_add_8x8 = av1_inv_txfm2d_add_8x8_sse4_1;
av1_inv_txfm_add = av1_inv_txfm_add_c;

Просмотреть файл

@ -14,6 +14,7 @@ ARCH_MIPS equ 0
ARCH_PPC equ 0
ARCH_X86 equ 1
ARCH_X86_64 equ 0
CONFIG_2PASS_PARTITION_SEARCH_LVL equ 1
CONFIG_ACCOUNTING equ 0
CONFIG_ANALYZER equ 0
CONFIG_AV1_DECODER equ 1
@ -21,30 +22,35 @@ CONFIG_AV1_ENCODER equ 0
CONFIG_BIG_ENDIAN equ 0
CONFIG_BITSTREAM_DEBUG equ 0
CONFIG_COEFFICIENT_RANGE_CHECKING equ 0
CONFIG_COLLECT_INTER_MODE_RD_STATS equ 1
CONFIG_COLLECT_INTER_MODE_RD_STATS equ 0
CONFIG_COLLECT_RD_STATS equ 0
CONFIG_DEBUG equ 0
CONFIG_DENOISE equ 0
CONFIG_DIST_8X8 equ 1
CONFIG_DENOISE equ 1
CONFIG_DIST_8X8 equ 0
CONFIG_ENTROPY_STATS equ 0
CONFIG_FILEOPTIONS equ 1
CONFIG_FIX_GF_LENGTH equ 1
CONFIG_FP_MB_STATS equ 0
CONFIG_GCC equ 1
CONFIG_GCOV equ 0
CONFIG_GLOBAL_MOTION_SEARCH equ 1
CONFIG_GPROF equ 0
CONFIG_INSPECTION equ 0
CONFIG_INTERNAL_STATS equ 0
CONFIG_INTER_STATS_ONLY equ 0
CONFIG_LIBYUV equ 0
CONFIG_LOWBITDEPTH equ 0
CONFIG_LOWBITDEPTH equ 1
CONFIG_MAX_DECODE_PROFILE equ 2
CONFIG_MISMATCH_DEBUG equ 0
CONFIG_MSVS equ 0
CONFIG_MULTITHREAD equ 1
CONFIG_NORMAL_TILE_MODE equ 0
CONFIG_OS_SUPPORT equ 1
CONFIG_PIC equ 0
CONFIG_RD_DEBUG equ 0
CONFIG_REDUCED_ENCODER_BORDER equ 0
CONFIG_RUNTIME_CPU_DETECT equ 1
CONFIG_SHARED equ 0
CONFIG_SHARP_SETTINGS equ 0
CONFIG_SIZE_LIMIT equ 0
CONFIG_SPATIAL_RESAMPLING equ 1
CONFIG_STATIC equ 1

Просмотреть файл

@ -16,6 +16,7 @@
#define ARCH_PPC 0
#define ARCH_X86 1
#define ARCH_X86_64 0
#define CONFIG_2PASS_PARTITION_SEARCH_LVL 1
#define CONFIG_ACCOUNTING 0
#define CONFIG_ANALYZER 0
#define CONFIG_AV1_DECODER 1
@ -23,30 +24,35 @@
#define CONFIG_BIG_ENDIAN 0
#define CONFIG_BITSTREAM_DEBUG 0
#define CONFIG_COEFFICIENT_RANGE_CHECKING 0
#define CONFIG_COLLECT_INTER_MODE_RD_STATS 1
#define CONFIG_COLLECT_INTER_MODE_RD_STATS 0
#define CONFIG_COLLECT_RD_STATS 0
#define CONFIG_DEBUG 0
#define CONFIG_DENOISE 0
#define CONFIG_DIST_8X8 1
#define CONFIG_DENOISE 1
#define CONFIG_DIST_8X8 0
#define CONFIG_ENTROPY_STATS 0
#define CONFIG_FILEOPTIONS 1
#define CONFIG_FIX_GF_LENGTH 1
#define CONFIG_FP_MB_STATS 0
#define CONFIG_GCC 1
#define CONFIG_GCOV 0
#define CONFIG_GLOBAL_MOTION_SEARCH 1
#define CONFIG_GPROF 0
#define CONFIG_INSPECTION 0
#define CONFIG_INTERNAL_STATS 0
#define CONFIG_INTER_STATS_ONLY 0
#define CONFIG_LIBYUV 0
#define CONFIG_LOWBITDEPTH 0
#define CONFIG_LOWBITDEPTH 1
#define CONFIG_MAX_DECODE_PROFILE 2
#define CONFIG_MISMATCH_DEBUG 0
#define CONFIG_MSVS 0
#define CONFIG_MULTITHREAD 1
#define CONFIG_NORMAL_TILE_MODE 0
#define CONFIG_OS_SUPPORT 1
#define CONFIG_PIC 0
#define CONFIG_RD_DEBUG 0
#define CONFIG_REDUCED_ENCODER_BORDER 0
#define CONFIG_RUNTIME_CPU_DETECT 1
#define CONFIG_SHARED 0
#define CONFIG_SHARP_SETTINGS 0
#define CONFIG_SIZE_LIMIT 0
#define CONFIG_SPATIAL_RESAMPLING 1
#define CONFIG_STATIC 1

Просмотреть файл

@ -28,6 +28,7 @@ RTCD_EXTERN void (*aom_blend_a64_hmask)(uint8_t *dst, uint32_t dst_stride, const
void aom_blend_a64_mask_c(uint8_t *dst, uint32_t dst_stride, const uint8_t *src0, uint32_t src0_stride, const uint8_t *src1, uint32_t src1_stride, const uint8_t *mask, uint32_t mask_stride, int w, int h, int subx, int suby);
void aom_blend_a64_mask_sse4_1(uint8_t *dst, uint32_t dst_stride, const uint8_t *src0, uint32_t src0_stride, const uint8_t *src1, uint32_t src1_stride, const uint8_t *mask, uint32_t mask_stride, int w, int h, int subx, int suby);
void aom_blend_a64_mask_avx2(uint8_t *dst, uint32_t dst_stride, const uint8_t *src0, uint32_t src0_stride, const uint8_t *src1, uint32_t src1_stride, const uint8_t *mask, uint32_t mask_stride, int w, int h, int subx, int suby);
RTCD_EXTERN void (*aom_blend_a64_mask)(uint8_t *dst, uint32_t dst_stride, const uint8_t *src0, uint32_t src0_stride, const uint8_t *src1, uint32_t src1_stride, const uint8_t *mask, uint32_t mask_stride, int w, int h, int subx, int suby);
void aom_blend_a64_vmask_c(uint8_t *dst, uint32_t dst_stride, const uint8_t *src0, uint32_t src0_stride, const uint8_t *src1, uint32_t src1_stride, const uint8_t *mask, int w, int h);
@ -1230,6 +1231,7 @@ RTCD_EXTERN void (*aom_highbd_v_predictor_8x8)(uint16_t *dst, ptrdiff_t y_stride
void aom_lowbd_blend_a64_d16_mask_c(uint8_t *dst, uint32_t dst_stride, const CONV_BUF_TYPE *src0, uint32_t src0_stride, const CONV_BUF_TYPE *src1, uint32_t src1_stride, const uint8_t *mask, uint32_t mask_stride, int w, int h, int subx, int suby, ConvolveParams *conv_params);
void aom_lowbd_blend_a64_d16_mask_sse4_1(uint8_t *dst, uint32_t dst_stride, const CONV_BUF_TYPE *src0, uint32_t src0_stride, const CONV_BUF_TYPE *src1, uint32_t src1_stride, const uint8_t *mask, uint32_t mask_stride, int w, int h, int subx, int suby, ConvolveParams *conv_params);
void aom_lowbd_blend_a64_d16_mask_avx2(uint8_t *dst, uint32_t dst_stride, const CONV_BUF_TYPE *src0, uint32_t src0_stride, const CONV_BUF_TYPE *src1, uint32_t src1_stride, const uint8_t *mask, uint32_t mask_stride, int w, int h, int subx, int suby, ConvolveParams *conv_params);
RTCD_EXTERN void (*aom_lowbd_blend_a64_d16_mask)(uint8_t *dst, uint32_t dst_stride, const CONV_BUF_TYPE *src0, uint32_t src0_stride, const CONV_BUF_TYPE *src1, uint32_t src1_stride, const uint8_t *mask, uint32_t mask_stride, int w, int h, int subx, int suby, ConvolveParams *conv_params);
void aom_lpf_horizontal_14_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh);
@ -1725,6 +1727,7 @@ static void setup_rtcd_internal(void)
if (flags & HAS_SSE4_1) aom_blend_a64_hmask = aom_blend_a64_hmask_sse4_1;
aom_blend_a64_mask = aom_blend_a64_mask_c;
if (flags & HAS_SSE4_1) aom_blend_a64_mask = aom_blend_a64_mask_sse4_1;
if (flags & HAS_AVX2) aom_blend_a64_mask = aom_blend_a64_mask_avx2;
aom_blend_a64_vmask = aom_blend_a64_vmask_c;
if (flags & HAS_SSE4_1) aom_blend_a64_vmask = aom_blend_a64_vmask_sse4_1;
aom_convolve8_horiz = aom_convolve8_horiz_c;
@ -2125,6 +2128,7 @@ static void setup_rtcd_internal(void)
if (flags & HAS_SSE2) aom_highbd_v_predictor_8x8 = aom_highbd_v_predictor_8x8_sse2;
aom_lowbd_blend_a64_d16_mask = aom_lowbd_blend_a64_d16_mask_c;
if (flags & HAS_SSE4_1) aom_lowbd_blend_a64_d16_mask = aom_lowbd_blend_a64_d16_mask_sse4_1;
if (flags & HAS_AVX2) aom_lowbd_blend_a64_d16_mask = aom_lowbd_blend_a64_d16_mask_avx2;
aom_lpf_horizontal_14 = aom_lpf_horizontal_14_c;
if (flags & HAS_SSE2) aom_lpf_horizontal_14 = aom_lpf_horizontal_14_sse2;
aom_lpf_horizontal_14_dual = aom_lpf_horizontal_14_dual_c;

Просмотреть файл

@ -1,6 +1,6 @@
// This file is generated. Do not edit.
#ifndef AOM_RTCD_H_
#define AOM_RTCD_H_
#ifndef AV1_RTCD_H_
#define AV1_RTCD_H_
#ifdef RTCD_C
#define RTCD_EXTERN
@ -58,10 +58,12 @@ RTCD_EXTERN void (*apply_selfguided_restoration)(const uint8_t *dat, int width,
void av1_build_compound_diffwtd_mask_c(uint8_t *mask, DIFFWTD_MASK_TYPE mask_type, const uint8_t *src0, int src0_stride, const uint8_t *src1, int src1_stride, int h, int w);
void av1_build_compound_diffwtd_mask_sse4_1(uint8_t *mask, DIFFWTD_MASK_TYPE mask_type, const uint8_t *src0, int src0_stride, const uint8_t *src1, int src1_stride, int h, int w);
void av1_build_compound_diffwtd_mask_avx2(uint8_t *mask, DIFFWTD_MASK_TYPE mask_type, const uint8_t *src0, int src0_stride, const uint8_t *src1, int src1_stride, int h, int w);
RTCD_EXTERN void (*av1_build_compound_diffwtd_mask)(uint8_t *mask, DIFFWTD_MASK_TYPE mask_type, const uint8_t *src0, int src0_stride, const uint8_t *src1, int src1_stride, int h, int w);
void av1_build_compound_diffwtd_mask_d16_c(uint8_t *mask, DIFFWTD_MASK_TYPE mask_type, const CONV_BUF_TYPE *src0, int src0_stride, const CONV_BUF_TYPE *src1, int src1_stride, int h, int w, ConvolveParams *conv_params, int bd);
void av1_build_compound_diffwtd_mask_d16_sse4_1(uint8_t *mask, DIFFWTD_MASK_TYPE mask_type, const CONV_BUF_TYPE *src0, int src0_stride, const CONV_BUF_TYPE *src1, int src1_stride, int h, int w, ConvolveParams *conv_params, int bd);
void av1_build_compound_diffwtd_mask_d16_avx2(uint8_t *mask, DIFFWTD_MASK_TYPE mask_type, const CONV_BUF_TYPE *src0, int src0_stride, const CONV_BUF_TYPE *src1, int src1_stride, int h, int w, ConvolveParams *conv_params, int bd);
RTCD_EXTERN void (*av1_build_compound_diffwtd_mask_d16)(uint8_t *mask, DIFFWTD_MASK_TYPE mask_type, const CONV_BUF_TYPE *src0, int src0_stride, const CONV_BUF_TYPE *src1, int src1_stride, int h, int w, ConvolveParams *conv_params, int bd);
void av1_build_compound_diffwtd_mask_highbd_c(uint8_t *mask, DIFFWTD_MASK_TYPE mask_type, const uint8_t *src0, int src0_stride, const uint8_t *src1, int src1_stride, int h, int w, int bd);
@ -170,6 +172,36 @@ void av1_highbd_dr_prediction_z2_c(uint16_t *dst, ptrdiff_t stride, int bw, int
void av1_highbd_dr_prediction_z3_c(uint16_t *dst, ptrdiff_t stride, int bw, int bh, const uint16_t *above, const uint16_t *left, int upsample_left, int dx, int dy, int bd);
#define av1_highbd_dr_prediction_z3 av1_highbd_dr_prediction_z3_c
void av1_highbd_inv_txfm_add_c(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_sse4_1(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_avx2(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
RTCD_EXTERN void (*av1_highbd_inv_txfm_add)(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_16x16_c(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_16x16_sse4_1(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
RTCD_EXTERN void (*av1_highbd_inv_txfm_add_16x16)(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_16x8_c(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_16x8_sse4_1(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
RTCD_EXTERN void (*av1_highbd_inv_txfm_add_16x8)(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_32x32_c(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_32x32_sse4_1(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_32x32_avx2(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
RTCD_EXTERN void (*av1_highbd_inv_txfm_add_32x32)(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_4x4_c(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_4x4_sse4_1(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
RTCD_EXTERN void (*av1_highbd_inv_txfm_add_4x4)(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_8x16_c(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_8x16_sse4_1(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
RTCD_EXTERN void (*av1_highbd_inv_txfm_add_8x16)(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_8x8_c(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_8x8_sse4_1(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
RTCD_EXTERN void (*av1_highbd_inv_txfm_add_8x8)(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_iwht4x4_16_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride, int bd);
#define av1_highbd_iwht4x4_16_add av1_highbd_iwht4x4_16_add_c
@ -206,8 +238,7 @@ void av1_highbd_wiener_convolve_add_src_avx2(const uint8_t *src, ptrdiff_t src_s
RTCD_EXTERN void (*av1_highbd_wiener_convolve_add_src)(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h, const ConvolveParams *conv_params, int bps);
void av1_inv_txfm2d_add_16x16_c(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd);
void av1_inv_txfm2d_add_16x16_sse4_1(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd);
RTCD_EXTERN void (*av1_inv_txfm2d_add_16x16)(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd);
#define av1_inv_txfm2d_add_16x16 av1_inv_txfm2d_add_16x16_c
void av1_inv_txfm2d_add_16x32_c(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd);
#define av1_inv_txfm2d_add_16x32 av1_inv_txfm2d_add_16x32_c
@ -225,8 +256,7 @@ void av1_inv_txfm2d_add_32x16_c(const int32_t *input, uint16_t *output, int stri
#define av1_inv_txfm2d_add_32x16 av1_inv_txfm2d_add_32x16_c
void av1_inv_txfm2d_add_32x32_c(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd);
void av1_inv_txfm2d_add_32x32_avx2(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd);
RTCD_EXTERN void (*av1_inv_txfm2d_add_32x32)(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd);
#define av1_inv_txfm2d_add_32x32 av1_inv_txfm2d_add_32x32_c
void av1_inv_txfm2d_add_32x64_c(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd);
#define av1_inv_txfm2d_add_32x64 av1_inv_txfm2d_add_32x64_c
@ -251,8 +281,7 @@ void av1_inv_txfm2d_add_64x32_c(const int32_t *input, uint16_t *output, int stri
#define av1_inv_txfm2d_add_64x32 av1_inv_txfm2d_add_64x32_c
void av1_inv_txfm2d_add_64x64_c(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd);
void av1_inv_txfm2d_add_64x64_sse4_1(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd);
RTCD_EXTERN void (*av1_inv_txfm2d_add_64x64)(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd);
#define av1_inv_txfm2d_add_64x64 av1_inv_txfm2d_add_64x64_c
void av1_inv_txfm2d_add_8x16_c(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd);
#define av1_inv_txfm2d_add_8x16 av1_inv_txfm2d_add_8x16_c
@ -292,18 +321,18 @@ void av1_jnt_convolve_y_sse2(const uint8_t *src, int src_stride, uint8_t *dst, i
void av1_jnt_convolve_y_avx2(const uint8_t *src, int src_stride, uint8_t *dst, int dst_stride, int w, int h, const InterpFilterParams *filter_params_x, const InterpFilterParams *filter_params_y, const int subpel_x_q4, const int subpel_y_q4, ConvolveParams *conv_params);
RTCD_EXTERN void (*av1_jnt_convolve_y)(const uint8_t *src, int src_stride, uint8_t *dst, int dst_stride, int w, int h, const InterpFilterParams *filter_params_x, const InterpFilterParams *filter_params_y, const int subpel_x_q4, const int subpel_y_q4, ConvolveParams *conv_params);
void av1_selfguided_restoration_c(const uint8_t *dgd8, int width, int height,
int dgd_stride, int32_t *flt0, int32_t *flt1, int flt_stride,
int sgr_params_idx, int bit_depth, int highbd);
void av1_selfguided_restoration_sse4_1(const uint8_t *dgd8, int width, int height,
int dgd_stride, int32_t *flt0, int32_t *flt1, int flt_stride,
int sgr_params_idx, int bit_depth, int highbd);
void av1_selfguided_restoration_avx2(const uint8_t *dgd8, int width, int height,
int dgd_stride, int32_t *flt0, int32_t *flt1, int flt_stride,
int sgr_params_idx, int bit_depth, int highbd);
RTCD_EXTERN void (*av1_selfguided_restoration)(const uint8_t *dgd8, int width, int height,
int dgd_stride, int32_t *flt0, int32_t *flt1, int flt_stride,
int sgr_params_idx, int bit_depth, int highbd);
int av1_selfguided_restoration_c(const uint8_t *dgd8, int width, int height,
int dgd_stride, int32_t *flt0, int32_t *flt1, int flt_stride,
int sgr_params_idx, int bit_depth, int highbd);
int av1_selfguided_restoration_sse4_1(const uint8_t *dgd8, int width, int height,
int dgd_stride, int32_t *flt0, int32_t *flt1, int flt_stride,
int sgr_params_idx, int bit_depth, int highbd);
int av1_selfguided_restoration_avx2(const uint8_t *dgd8, int width, int height,
int dgd_stride, int32_t *flt0, int32_t *flt1, int flt_stride,
int sgr_params_idx, int bit_depth, int highbd);
RTCD_EXTERN int (*av1_selfguided_restoration)(const uint8_t *dgd8, int width, int height,
int dgd_stride, int32_t *flt0, int32_t *flt1, int flt_stride,
int sgr_params_idx, int bit_depth, int highbd);
void av1_upsample_intra_edge_c(uint8_t *p, int sz);
void av1_upsample_intra_edge_sse4_1(uint8_t *p, int sz);
@ -395,7 +424,7 @@ cfl_subtract_average_fn get_subtract_average_fn_sse2(TX_SIZE tx_size);
cfl_subtract_average_fn get_subtract_average_fn_avx2(TX_SIZE tx_size);
RTCD_EXTERN cfl_subtract_average_fn (*get_subtract_average_fn)(TX_SIZE tx_size);
void aom_rtcd(void);
void av1_rtcd(void);
#ifdef RTCD_C
#include "aom_ports/x86.h"
@ -410,8 +439,10 @@ static void setup_rtcd_internal(void)
if (flags & HAS_AVX2) apply_selfguided_restoration = apply_selfguided_restoration_avx2;
av1_build_compound_diffwtd_mask = av1_build_compound_diffwtd_mask_c;
if (flags & HAS_SSE4_1) av1_build_compound_diffwtd_mask = av1_build_compound_diffwtd_mask_sse4_1;
if (flags & HAS_AVX2) av1_build_compound_diffwtd_mask = av1_build_compound_diffwtd_mask_avx2;
av1_build_compound_diffwtd_mask_d16 = av1_build_compound_diffwtd_mask_d16_c;
if (flags & HAS_SSE4_1) av1_build_compound_diffwtd_mask_d16 = av1_build_compound_diffwtd_mask_d16_sse4_1;
if (flags & HAS_AVX2) av1_build_compound_diffwtd_mask_d16 = av1_build_compound_diffwtd_mask_d16_avx2;
av1_build_compound_diffwtd_mask_highbd = av1_build_compound_diffwtd_mask_highbd_c;
if (flags & HAS_SSSE3) av1_build_compound_diffwtd_mask_highbd = av1_build_compound_diffwtd_mask_highbd_ssse3;
if (flags & HAS_AVX2) av1_build_compound_diffwtd_mask_highbd = av1_build_compound_diffwtd_mask_highbd_avx2;
@ -453,6 +484,22 @@ static void setup_rtcd_internal(void)
av1_highbd_convolve_y_sr = av1_highbd_convolve_y_sr_c;
if (flags & HAS_SSSE3) av1_highbd_convolve_y_sr = av1_highbd_convolve_y_sr_ssse3;
if (flags & HAS_AVX2) av1_highbd_convolve_y_sr = av1_highbd_convolve_y_sr_avx2;
av1_highbd_inv_txfm_add = av1_highbd_inv_txfm_add_c;
if (flags & HAS_SSE4_1) av1_highbd_inv_txfm_add = av1_highbd_inv_txfm_add_sse4_1;
if (flags & HAS_AVX2) av1_highbd_inv_txfm_add = av1_highbd_inv_txfm_add_avx2;
av1_highbd_inv_txfm_add_16x16 = av1_highbd_inv_txfm_add_16x16_c;
if (flags & HAS_SSE4_1) av1_highbd_inv_txfm_add_16x16 = av1_highbd_inv_txfm_add_16x16_sse4_1;
av1_highbd_inv_txfm_add_16x8 = av1_highbd_inv_txfm_add_16x8_c;
if (flags & HAS_SSE4_1) av1_highbd_inv_txfm_add_16x8 = av1_highbd_inv_txfm_add_16x8_sse4_1;
av1_highbd_inv_txfm_add_32x32 = av1_highbd_inv_txfm_add_32x32_c;
if (flags & HAS_SSE4_1) av1_highbd_inv_txfm_add_32x32 = av1_highbd_inv_txfm_add_32x32_sse4_1;
if (flags & HAS_AVX2) av1_highbd_inv_txfm_add_32x32 = av1_highbd_inv_txfm_add_32x32_avx2;
av1_highbd_inv_txfm_add_4x4 = av1_highbd_inv_txfm_add_4x4_c;
if (flags & HAS_SSE4_1) av1_highbd_inv_txfm_add_4x4 = av1_highbd_inv_txfm_add_4x4_sse4_1;
av1_highbd_inv_txfm_add_8x16 = av1_highbd_inv_txfm_add_8x16_c;
if (flags & HAS_SSE4_1) av1_highbd_inv_txfm_add_8x16 = av1_highbd_inv_txfm_add_8x16_sse4_1;
av1_highbd_inv_txfm_add_8x8 = av1_highbd_inv_txfm_add_8x8_c;
if (flags & HAS_SSE4_1) av1_highbd_inv_txfm_add_8x8 = av1_highbd_inv_txfm_add_8x8_sse4_1;
av1_highbd_jnt_convolve_2d = av1_highbd_jnt_convolve_2d_c;
if (flags & HAS_SSE4_1) av1_highbd_jnt_convolve_2d = av1_highbd_jnt_convolve_2d_sse4_1;
if (flags & HAS_AVX2) av1_highbd_jnt_convolve_2d = av1_highbd_jnt_convolve_2d_avx2;
@ -470,14 +517,8 @@ static void setup_rtcd_internal(void)
av1_highbd_wiener_convolve_add_src = av1_highbd_wiener_convolve_add_src_c;
if (flags & HAS_SSSE3) av1_highbd_wiener_convolve_add_src = av1_highbd_wiener_convolve_add_src_ssse3;
if (flags & HAS_AVX2) av1_highbd_wiener_convolve_add_src = av1_highbd_wiener_convolve_add_src_avx2;
av1_inv_txfm2d_add_16x16 = av1_inv_txfm2d_add_16x16_c;
if (flags & HAS_SSE4_1) av1_inv_txfm2d_add_16x16 = av1_inv_txfm2d_add_16x16_sse4_1;
av1_inv_txfm2d_add_32x32 = av1_inv_txfm2d_add_32x32_c;
if (flags & HAS_AVX2) av1_inv_txfm2d_add_32x32 = av1_inv_txfm2d_add_32x32_avx2;
av1_inv_txfm2d_add_4x4 = av1_inv_txfm2d_add_4x4_c;
if (flags & HAS_SSE4_1) av1_inv_txfm2d_add_4x4 = av1_inv_txfm2d_add_4x4_sse4_1;
av1_inv_txfm2d_add_64x64 = av1_inv_txfm2d_add_64x64_c;
if (flags & HAS_SSE4_1) av1_inv_txfm2d_add_64x64 = av1_inv_txfm2d_add_64x64_sse4_1;
av1_inv_txfm2d_add_8x8 = av1_inv_txfm2d_add_8x8_c;
if (flags & HAS_SSE4_1) av1_inv_txfm2d_add_8x8 = av1_inv_txfm2d_add_8x8_sse4_1;
av1_inv_txfm_add = av1_inv_txfm_add_c;

Просмотреть файл

@ -14,6 +14,7 @@ ARCH_MIPS equ 0
ARCH_PPC equ 0
ARCH_X86 equ 0
ARCH_X86_64 equ 1
CONFIG_2PASS_PARTITION_SEARCH_LVL equ 1
CONFIG_ACCOUNTING equ 0
CONFIG_ANALYZER equ 0
CONFIG_AV1_DECODER equ 1
@ -21,30 +22,35 @@ CONFIG_AV1_ENCODER equ 0
CONFIG_BIG_ENDIAN equ 0
CONFIG_BITSTREAM_DEBUG equ 0
CONFIG_COEFFICIENT_RANGE_CHECKING equ 0
CONFIG_COLLECT_INTER_MODE_RD_STATS equ 1
CONFIG_COLLECT_INTER_MODE_RD_STATS equ 0
CONFIG_COLLECT_RD_STATS equ 0
CONFIG_DEBUG equ 0
CONFIG_DENOISE equ 0
CONFIG_DIST_8X8 equ 1
CONFIG_DENOISE equ 1
CONFIG_DIST_8X8 equ 0
CONFIG_ENTROPY_STATS equ 0
CONFIG_FILEOPTIONS equ 1
CONFIG_FIX_GF_LENGTH equ 1
CONFIG_FP_MB_STATS equ 0
CONFIG_GCC equ 1
CONFIG_GCOV equ 0
CONFIG_GLOBAL_MOTION_SEARCH equ 1
CONFIG_GPROF equ 0
CONFIG_INSPECTION equ 0
CONFIG_INTERNAL_STATS equ 0
CONFIG_INTER_STATS_ONLY equ 0
CONFIG_LIBYUV equ 0
CONFIG_LOWBITDEPTH equ 0
CONFIG_LOWBITDEPTH equ 1
CONFIG_MAX_DECODE_PROFILE equ 2
CONFIG_MISMATCH_DEBUG equ 0
CONFIG_MSVS equ 0
CONFIG_MULTITHREAD equ 1
CONFIG_NORMAL_TILE_MODE equ 0
CONFIG_OS_SUPPORT equ 1
CONFIG_PIC equ 0
CONFIG_RD_DEBUG equ 0
CONFIG_REDUCED_ENCODER_BORDER equ 0
CONFIG_RUNTIME_CPU_DETECT equ 1
CONFIG_SHARED equ 0
CONFIG_SHARP_SETTINGS equ 0
CONFIG_SIZE_LIMIT equ 0
CONFIG_SPATIAL_RESAMPLING equ 1
CONFIG_STATIC equ 1

Просмотреть файл

@ -16,6 +16,7 @@
#define ARCH_PPC 0
#define ARCH_X86 0
#define ARCH_X86_64 1
#define CONFIG_2PASS_PARTITION_SEARCH_LVL 1
#define CONFIG_ACCOUNTING 0
#define CONFIG_ANALYZER 0
#define CONFIG_AV1_DECODER 1
@ -23,30 +24,35 @@
#define CONFIG_BIG_ENDIAN 0
#define CONFIG_BITSTREAM_DEBUG 0
#define CONFIG_COEFFICIENT_RANGE_CHECKING 0
#define CONFIG_COLLECT_INTER_MODE_RD_STATS 1
#define CONFIG_COLLECT_INTER_MODE_RD_STATS 0
#define CONFIG_COLLECT_RD_STATS 0
#define CONFIG_DEBUG 0
#define CONFIG_DENOISE 0
#define CONFIG_DIST_8X8 1
#define CONFIG_DENOISE 1
#define CONFIG_DIST_8X8 0
#define CONFIG_ENTROPY_STATS 0
#define CONFIG_FILEOPTIONS 1
#define CONFIG_FIX_GF_LENGTH 1
#define CONFIG_FP_MB_STATS 0
#define CONFIG_GCC 1
#define CONFIG_GCOV 0
#define CONFIG_GLOBAL_MOTION_SEARCH 1
#define CONFIG_GPROF 0
#define CONFIG_INSPECTION 0
#define CONFIG_INTERNAL_STATS 0
#define CONFIG_INTER_STATS_ONLY 0
#define CONFIG_LIBYUV 0
#define CONFIG_LOWBITDEPTH 0
#define CONFIG_LOWBITDEPTH 1
#define CONFIG_MAX_DECODE_PROFILE 2
#define CONFIG_MISMATCH_DEBUG 0
#define CONFIG_MSVS 0
#define CONFIG_MULTITHREAD 1
#define CONFIG_NORMAL_TILE_MODE 0
#define CONFIG_OS_SUPPORT 1
#define CONFIG_PIC 0
#define CONFIG_RD_DEBUG 0
#define CONFIG_REDUCED_ENCODER_BORDER 0
#define CONFIG_RUNTIME_CPU_DETECT 1
#define CONFIG_SHARED 0
#define CONFIG_SHARP_SETTINGS 0
#define CONFIG_SIZE_LIMIT 0
#define CONFIG_SPATIAL_RESAMPLING 1
#define CONFIG_STATIC 1

Просмотреть файл

@ -28,6 +28,7 @@ RTCD_EXTERN void (*aom_blend_a64_hmask)(uint8_t *dst, uint32_t dst_stride, const
void aom_blend_a64_mask_c(uint8_t *dst, uint32_t dst_stride, const uint8_t *src0, uint32_t src0_stride, const uint8_t *src1, uint32_t src1_stride, const uint8_t *mask, uint32_t mask_stride, int w, int h, int subx, int suby);
void aom_blend_a64_mask_sse4_1(uint8_t *dst, uint32_t dst_stride, const uint8_t *src0, uint32_t src0_stride, const uint8_t *src1, uint32_t src1_stride, const uint8_t *mask, uint32_t mask_stride, int w, int h, int subx, int suby);
void aom_blend_a64_mask_avx2(uint8_t *dst, uint32_t dst_stride, const uint8_t *src0, uint32_t src0_stride, const uint8_t *src1, uint32_t src1_stride, const uint8_t *mask, uint32_t mask_stride, int w, int h, int subx, int suby);
RTCD_EXTERN void (*aom_blend_a64_mask)(uint8_t *dst, uint32_t dst_stride, const uint8_t *src0, uint32_t src0_stride, const uint8_t *src1, uint32_t src1_stride, const uint8_t *mask, uint32_t mask_stride, int w, int h, int subx, int suby);
void aom_blend_a64_vmask_c(uint8_t *dst, uint32_t dst_stride, const uint8_t *src0, uint32_t src0_stride, const uint8_t *src1, uint32_t src1_stride, const uint8_t *mask, int w, int h);
@ -1232,6 +1233,7 @@ void aom_highbd_v_predictor_8x8_sse2(uint16_t *dst, ptrdiff_t y_stride, const ui
void aom_lowbd_blend_a64_d16_mask_c(uint8_t *dst, uint32_t dst_stride, const CONV_BUF_TYPE *src0, uint32_t src0_stride, const CONV_BUF_TYPE *src1, uint32_t src1_stride, const uint8_t *mask, uint32_t mask_stride, int w, int h, int subx, int suby, ConvolveParams *conv_params);
void aom_lowbd_blend_a64_d16_mask_sse4_1(uint8_t *dst, uint32_t dst_stride, const CONV_BUF_TYPE *src0, uint32_t src0_stride, const CONV_BUF_TYPE *src1, uint32_t src1_stride, const uint8_t *mask, uint32_t mask_stride, int w, int h, int subx, int suby, ConvolveParams *conv_params);
void aom_lowbd_blend_a64_d16_mask_avx2(uint8_t *dst, uint32_t dst_stride, const CONV_BUF_TYPE *src0, uint32_t src0_stride, const CONV_BUF_TYPE *src1, uint32_t src1_stride, const uint8_t *mask, uint32_t mask_stride, int w, int h, int subx, int suby, ConvolveParams *conv_params);
RTCD_EXTERN void (*aom_lowbd_blend_a64_d16_mask)(uint8_t *dst, uint32_t dst_stride, const CONV_BUF_TYPE *src0, uint32_t src0_stride, const CONV_BUF_TYPE *src1, uint32_t src1_stride, const uint8_t *mask, uint32_t mask_stride, int w, int h, int subx, int suby, ConvolveParams *conv_params);
void aom_lpf_horizontal_14_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh);
@ -1727,6 +1729,7 @@ static void setup_rtcd_internal(void)
if (flags & HAS_SSE4_1) aom_blend_a64_hmask = aom_blend_a64_hmask_sse4_1;
aom_blend_a64_mask = aom_blend_a64_mask_c;
if (flags & HAS_SSE4_1) aom_blend_a64_mask = aom_blend_a64_mask_sse4_1;
if (flags & HAS_AVX2) aom_blend_a64_mask = aom_blend_a64_mask_avx2;
aom_blend_a64_vmask = aom_blend_a64_vmask_c;
if (flags & HAS_SSE4_1) aom_blend_a64_vmask = aom_blend_a64_vmask_sse4_1;
aom_convolve8_horiz = aom_convolve8_horiz_sse2;
@ -1811,6 +1814,7 @@ static void setup_rtcd_internal(void)
if (flags & HAS_AVX2) aom_highbd_lpf_vertical_8_dual = aom_highbd_lpf_vertical_8_dual_avx2;
aom_lowbd_blend_a64_d16_mask = aom_lowbd_blend_a64_d16_mask_c;
if (flags & HAS_SSE4_1) aom_lowbd_blend_a64_d16_mask = aom_lowbd_blend_a64_d16_mask_sse4_1;
if (flags & HAS_AVX2) aom_lowbd_blend_a64_d16_mask = aom_lowbd_blend_a64_d16_mask_avx2;
aom_paeth_predictor_16x16 = aom_paeth_predictor_16x16_c;
if (flags & HAS_SSSE3) aom_paeth_predictor_16x16 = aom_paeth_predictor_16x16_ssse3;
if (flags & HAS_AVX2) aom_paeth_predictor_16x16 = aom_paeth_predictor_16x16_avx2;

Просмотреть файл

@ -1,6 +1,6 @@
// This file is generated. Do not edit.
#ifndef AOM_RTCD_H_
#define AOM_RTCD_H_
#ifndef AV1_RTCD_H_
#define AV1_RTCD_H_
#ifdef RTCD_C
#define RTCD_EXTERN
@ -58,10 +58,12 @@ RTCD_EXTERN void (*apply_selfguided_restoration)(const uint8_t *dat, int width,
void av1_build_compound_diffwtd_mask_c(uint8_t *mask, DIFFWTD_MASK_TYPE mask_type, const uint8_t *src0, int src0_stride, const uint8_t *src1, int src1_stride, int h, int w);
void av1_build_compound_diffwtd_mask_sse4_1(uint8_t *mask, DIFFWTD_MASK_TYPE mask_type, const uint8_t *src0, int src0_stride, const uint8_t *src1, int src1_stride, int h, int w);
void av1_build_compound_diffwtd_mask_avx2(uint8_t *mask, DIFFWTD_MASK_TYPE mask_type, const uint8_t *src0, int src0_stride, const uint8_t *src1, int src1_stride, int h, int w);
RTCD_EXTERN void (*av1_build_compound_diffwtd_mask)(uint8_t *mask, DIFFWTD_MASK_TYPE mask_type, const uint8_t *src0, int src0_stride, const uint8_t *src1, int src1_stride, int h, int w);
void av1_build_compound_diffwtd_mask_d16_c(uint8_t *mask, DIFFWTD_MASK_TYPE mask_type, const CONV_BUF_TYPE *src0, int src0_stride, const CONV_BUF_TYPE *src1, int src1_stride, int h, int w, ConvolveParams *conv_params, int bd);
void av1_build_compound_diffwtd_mask_d16_sse4_1(uint8_t *mask, DIFFWTD_MASK_TYPE mask_type, const CONV_BUF_TYPE *src0, int src0_stride, const CONV_BUF_TYPE *src1, int src1_stride, int h, int w, ConvolveParams *conv_params, int bd);
void av1_build_compound_diffwtd_mask_d16_avx2(uint8_t *mask, DIFFWTD_MASK_TYPE mask_type, const CONV_BUF_TYPE *src0, int src0_stride, const CONV_BUF_TYPE *src1, int src1_stride, int h, int w, ConvolveParams *conv_params, int bd);
RTCD_EXTERN void (*av1_build_compound_diffwtd_mask_d16)(uint8_t *mask, DIFFWTD_MASK_TYPE mask_type, const CONV_BUF_TYPE *src0, int src0_stride, const CONV_BUF_TYPE *src1, int src1_stride, int h, int w, ConvolveParams *conv_params, int bd);
void av1_build_compound_diffwtd_mask_highbd_c(uint8_t *mask, DIFFWTD_MASK_TYPE mask_type, const uint8_t *src0, int src0_stride, const uint8_t *src1, int src1_stride, int h, int w, int bd);
@ -173,6 +175,36 @@ void av1_highbd_dr_prediction_z2_c(uint16_t *dst, ptrdiff_t stride, int bw, int
void av1_highbd_dr_prediction_z3_c(uint16_t *dst, ptrdiff_t stride, int bw, int bh, const uint16_t *above, const uint16_t *left, int upsample_left, int dx, int dy, int bd);
#define av1_highbd_dr_prediction_z3 av1_highbd_dr_prediction_z3_c
void av1_highbd_inv_txfm_add_c(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_sse4_1(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_avx2(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
RTCD_EXTERN void (*av1_highbd_inv_txfm_add)(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_16x16_c(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_16x16_sse4_1(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
RTCD_EXTERN void (*av1_highbd_inv_txfm_add_16x16)(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_16x8_c(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_16x8_sse4_1(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
RTCD_EXTERN void (*av1_highbd_inv_txfm_add_16x8)(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_32x32_c(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_32x32_sse4_1(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_32x32_avx2(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
RTCD_EXTERN void (*av1_highbd_inv_txfm_add_32x32)(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_4x4_c(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_4x4_sse4_1(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
RTCD_EXTERN void (*av1_highbd_inv_txfm_add_4x4)(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_8x16_c(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_8x16_sse4_1(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
RTCD_EXTERN void (*av1_highbd_inv_txfm_add_8x16)(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_8x8_c(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_8x8_sse4_1(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
RTCD_EXTERN void (*av1_highbd_inv_txfm_add_8x8)(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_iwht4x4_16_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride, int bd);
#define av1_highbd_iwht4x4_16_add av1_highbd_iwht4x4_16_add_c
@ -209,8 +241,7 @@ void av1_highbd_wiener_convolve_add_src_avx2(const uint8_t *src, ptrdiff_t src_s
RTCD_EXTERN void (*av1_highbd_wiener_convolve_add_src)(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h, const ConvolveParams *conv_params, int bps);
void av1_inv_txfm2d_add_16x16_c(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd);
void av1_inv_txfm2d_add_16x16_sse4_1(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd);
RTCD_EXTERN void (*av1_inv_txfm2d_add_16x16)(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd);
#define av1_inv_txfm2d_add_16x16 av1_inv_txfm2d_add_16x16_c
void av1_inv_txfm2d_add_16x32_c(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd);
#define av1_inv_txfm2d_add_16x32 av1_inv_txfm2d_add_16x32_c
@ -228,8 +259,7 @@ void av1_inv_txfm2d_add_32x16_c(const int32_t *input, uint16_t *output, int stri
#define av1_inv_txfm2d_add_32x16 av1_inv_txfm2d_add_32x16_c
void av1_inv_txfm2d_add_32x32_c(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd);
void av1_inv_txfm2d_add_32x32_avx2(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd);
RTCD_EXTERN void (*av1_inv_txfm2d_add_32x32)(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd);
#define av1_inv_txfm2d_add_32x32 av1_inv_txfm2d_add_32x32_c
void av1_inv_txfm2d_add_32x64_c(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd);
#define av1_inv_txfm2d_add_32x64 av1_inv_txfm2d_add_32x64_c
@ -254,8 +284,7 @@ void av1_inv_txfm2d_add_64x32_c(const int32_t *input, uint16_t *output, int stri
#define av1_inv_txfm2d_add_64x32 av1_inv_txfm2d_add_64x32_c
void av1_inv_txfm2d_add_64x64_c(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd);
void av1_inv_txfm2d_add_64x64_sse4_1(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd);
RTCD_EXTERN void (*av1_inv_txfm2d_add_64x64)(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd);
#define av1_inv_txfm2d_add_64x64 av1_inv_txfm2d_add_64x64_c
void av1_inv_txfm2d_add_8x16_c(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd);
#define av1_inv_txfm2d_add_8x16 av1_inv_txfm2d_add_8x16_c
@ -295,18 +324,18 @@ void av1_jnt_convolve_y_sse2(const uint8_t *src, int src_stride, uint8_t *dst, i
void av1_jnt_convolve_y_avx2(const uint8_t *src, int src_stride, uint8_t *dst, int dst_stride, int w, int h, const InterpFilterParams *filter_params_x, const InterpFilterParams *filter_params_y, const int subpel_x_q4, const int subpel_y_q4, ConvolveParams *conv_params);
RTCD_EXTERN void (*av1_jnt_convolve_y)(const uint8_t *src, int src_stride, uint8_t *dst, int dst_stride, int w, int h, const InterpFilterParams *filter_params_x, const InterpFilterParams *filter_params_y, const int subpel_x_q4, const int subpel_y_q4, ConvolveParams *conv_params);
void av1_selfguided_restoration_c(const uint8_t *dgd8, int width, int height,
int dgd_stride, int32_t *flt0, int32_t *flt1, int flt_stride,
int sgr_params_idx, int bit_depth, int highbd);
void av1_selfguided_restoration_sse4_1(const uint8_t *dgd8, int width, int height,
int dgd_stride, int32_t *flt0, int32_t *flt1, int flt_stride,
int sgr_params_idx, int bit_depth, int highbd);
void av1_selfguided_restoration_avx2(const uint8_t *dgd8, int width, int height,
int dgd_stride, int32_t *flt0, int32_t *flt1, int flt_stride,
int sgr_params_idx, int bit_depth, int highbd);
RTCD_EXTERN void (*av1_selfguided_restoration)(const uint8_t *dgd8, int width, int height,
int dgd_stride, int32_t *flt0, int32_t *flt1, int flt_stride,
int sgr_params_idx, int bit_depth, int highbd);
int av1_selfguided_restoration_c(const uint8_t *dgd8, int width, int height,
int dgd_stride, int32_t *flt0, int32_t *flt1, int flt_stride,
int sgr_params_idx, int bit_depth, int highbd);
int av1_selfguided_restoration_sse4_1(const uint8_t *dgd8, int width, int height,
int dgd_stride, int32_t *flt0, int32_t *flt1, int flt_stride,
int sgr_params_idx, int bit_depth, int highbd);
int av1_selfguided_restoration_avx2(const uint8_t *dgd8, int width, int height,
int dgd_stride, int32_t *flt0, int32_t *flt1, int flt_stride,
int sgr_params_idx, int bit_depth, int highbd);
RTCD_EXTERN int (*av1_selfguided_restoration)(const uint8_t *dgd8, int width, int height,
int dgd_stride, int32_t *flt0, int32_t *flt1, int flt_stride,
int sgr_params_idx, int bit_depth, int highbd);
void av1_upsample_intra_edge_c(uint8_t *p, int sz);
void av1_upsample_intra_edge_sse4_1(uint8_t *p, int sz);
@ -398,7 +427,7 @@ cfl_subtract_average_fn get_subtract_average_fn_sse2(TX_SIZE tx_size);
cfl_subtract_average_fn get_subtract_average_fn_avx2(TX_SIZE tx_size);
RTCD_EXTERN cfl_subtract_average_fn (*get_subtract_average_fn)(TX_SIZE tx_size);
void aom_rtcd(void);
void av1_rtcd(void);
#ifdef RTCD_C
#include "aom_ports/x86.h"
@ -413,8 +442,10 @@ static void setup_rtcd_internal(void)
if (flags & HAS_AVX2) apply_selfguided_restoration = apply_selfguided_restoration_avx2;
av1_build_compound_diffwtd_mask = av1_build_compound_diffwtd_mask_c;
if (flags & HAS_SSE4_1) av1_build_compound_diffwtd_mask = av1_build_compound_diffwtd_mask_sse4_1;
if (flags & HAS_AVX2) av1_build_compound_diffwtd_mask = av1_build_compound_diffwtd_mask_avx2;
av1_build_compound_diffwtd_mask_d16 = av1_build_compound_diffwtd_mask_d16_c;
if (flags & HAS_SSE4_1) av1_build_compound_diffwtd_mask_d16 = av1_build_compound_diffwtd_mask_d16_sse4_1;
if (flags & HAS_AVX2) av1_build_compound_diffwtd_mask_d16 = av1_build_compound_diffwtd_mask_d16_avx2;
av1_build_compound_diffwtd_mask_highbd = av1_build_compound_diffwtd_mask_highbd_c;
if (flags & HAS_SSSE3) av1_build_compound_diffwtd_mask_highbd = av1_build_compound_diffwtd_mask_highbd_ssse3;
if (flags & HAS_AVX2) av1_build_compound_diffwtd_mask_highbd = av1_build_compound_diffwtd_mask_highbd_avx2;
@ -451,6 +482,22 @@ static void setup_rtcd_internal(void)
av1_highbd_convolve_y_sr = av1_highbd_convolve_y_sr_c;
if (flags & HAS_SSSE3) av1_highbd_convolve_y_sr = av1_highbd_convolve_y_sr_ssse3;
if (flags & HAS_AVX2) av1_highbd_convolve_y_sr = av1_highbd_convolve_y_sr_avx2;
av1_highbd_inv_txfm_add = av1_highbd_inv_txfm_add_c;
if (flags & HAS_SSE4_1) av1_highbd_inv_txfm_add = av1_highbd_inv_txfm_add_sse4_1;
if (flags & HAS_AVX2) av1_highbd_inv_txfm_add = av1_highbd_inv_txfm_add_avx2;
av1_highbd_inv_txfm_add_16x16 = av1_highbd_inv_txfm_add_16x16_c;
if (flags & HAS_SSE4_1) av1_highbd_inv_txfm_add_16x16 = av1_highbd_inv_txfm_add_16x16_sse4_1;
av1_highbd_inv_txfm_add_16x8 = av1_highbd_inv_txfm_add_16x8_c;
if (flags & HAS_SSE4_1) av1_highbd_inv_txfm_add_16x8 = av1_highbd_inv_txfm_add_16x8_sse4_1;
av1_highbd_inv_txfm_add_32x32 = av1_highbd_inv_txfm_add_32x32_c;
if (flags & HAS_SSE4_1) av1_highbd_inv_txfm_add_32x32 = av1_highbd_inv_txfm_add_32x32_sse4_1;
if (flags & HAS_AVX2) av1_highbd_inv_txfm_add_32x32 = av1_highbd_inv_txfm_add_32x32_avx2;
av1_highbd_inv_txfm_add_4x4 = av1_highbd_inv_txfm_add_4x4_c;
if (flags & HAS_SSE4_1) av1_highbd_inv_txfm_add_4x4 = av1_highbd_inv_txfm_add_4x4_sse4_1;
av1_highbd_inv_txfm_add_8x16 = av1_highbd_inv_txfm_add_8x16_c;
if (flags & HAS_SSE4_1) av1_highbd_inv_txfm_add_8x16 = av1_highbd_inv_txfm_add_8x16_sse4_1;
av1_highbd_inv_txfm_add_8x8 = av1_highbd_inv_txfm_add_8x8_c;
if (flags & HAS_SSE4_1) av1_highbd_inv_txfm_add_8x8 = av1_highbd_inv_txfm_add_8x8_sse4_1;
av1_highbd_jnt_convolve_2d = av1_highbd_jnt_convolve_2d_c;
if (flags & HAS_SSE4_1) av1_highbd_jnt_convolve_2d = av1_highbd_jnt_convolve_2d_sse4_1;
if (flags & HAS_AVX2) av1_highbd_jnt_convolve_2d = av1_highbd_jnt_convolve_2d_avx2;
@ -468,14 +515,8 @@ static void setup_rtcd_internal(void)
av1_highbd_wiener_convolve_add_src = av1_highbd_wiener_convolve_add_src_c;
if (flags & HAS_SSSE3) av1_highbd_wiener_convolve_add_src = av1_highbd_wiener_convolve_add_src_ssse3;
if (flags & HAS_AVX2) av1_highbd_wiener_convolve_add_src = av1_highbd_wiener_convolve_add_src_avx2;
av1_inv_txfm2d_add_16x16 = av1_inv_txfm2d_add_16x16_c;
if (flags & HAS_SSE4_1) av1_inv_txfm2d_add_16x16 = av1_inv_txfm2d_add_16x16_sse4_1;
av1_inv_txfm2d_add_32x32 = av1_inv_txfm2d_add_32x32_c;
if (flags & HAS_AVX2) av1_inv_txfm2d_add_32x32 = av1_inv_txfm2d_add_32x32_avx2;
av1_inv_txfm2d_add_4x4 = av1_inv_txfm2d_add_4x4_c;
if (flags & HAS_SSE4_1) av1_inv_txfm2d_add_4x4 = av1_inv_txfm2d_add_4x4_sse4_1;
av1_inv_txfm2d_add_64x64 = av1_inv_txfm2d_add_64x64_c;
if (flags & HAS_SSE4_1) av1_inv_txfm2d_add_64x64 = av1_inv_txfm2d_add_64x64_sse4_1;
av1_inv_txfm2d_add_8x8 = av1_inv_txfm2d_add_8x8_c;
if (flags & HAS_SSE4_1) av1_inv_txfm2d_add_8x8 = av1_inv_txfm2d_add_8x8_sse4_1;
av1_inv_txfm_add = av1_inv_txfm_add_c;

Просмотреть файл

@ -14,6 +14,7 @@ ARCH_MIPS equ 0
ARCH_PPC equ 0
ARCH_X86 equ 0
ARCH_X86_64 equ 1
CONFIG_2PASS_PARTITION_SEARCH_LVL equ 1
CONFIG_ACCOUNTING equ 0
CONFIG_ANALYZER equ 0
CONFIG_AV1_DECODER equ 1
@ -21,30 +22,35 @@ CONFIG_AV1_ENCODER equ 0
CONFIG_BIG_ENDIAN equ 0
CONFIG_BITSTREAM_DEBUG equ 0
CONFIG_COEFFICIENT_RANGE_CHECKING equ 0
CONFIG_COLLECT_INTER_MODE_RD_STATS equ 1
CONFIG_COLLECT_INTER_MODE_RD_STATS equ 0
CONFIG_COLLECT_RD_STATS equ 0
CONFIG_DEBUG equ 0
CONFIG_DENOISE equ 0
CONFIG_DIST_8X8 equ 1
CONFIG_DENOISE equ 1
CONFIG_DIST_8X8 equ 0
CONFIG_ENTROPY_STATS equ 0
CONFIG_FILEOPTIONS equ 1
CONFIG_FIX_GF_LENGTH equ 1
CONFIG_FP_MB_STATS equ 0
CONFIG_GCC equ 1
CONFIG_GCOV equ 0
CONFIG_GLOBAL_MOTION_SEARCH equ 1
CONFIG_GPROF equ 0
CONFIG_INSPECTION equ 0
CONFIG_INTERNAL_STATS equ 0
CONFIG_INTER_STATS_ONLY equ 0
CONFIG_LIBYUV equ 0
CONFIG_LOWBITDEPTH equ 0
CONFIG_LOWBITDEPTH equ 1
CONFIG_MAX_DECODE_PROFILE equ 2
CONFIG_MISMATCH_DEBUG equ 0
CONFIG_MSVS equ 1
CONFIG_MULTITHREAD equ 1
CONFIG_NORMAL_TILE_MODE equ 0
CONFIG_OS_SUPPORT equ 1
CONFIG_PIC equ 0
CONFIG_RD_DEBUG equ 0
CONFIG_REDUCED_ENCODER_BORDER equ 0
CONFIG_RUNTIME_CPU_DETECT equ 1
CONFIG_SHARED equ 0
CONFIG_SHARP_SETTINGS equ 0
CONFIG_SIZE_LIMIT equ 0
CONFIG_SPATIAL_RESAMPLING equ 1
CONFIG_STATIC equ 1

Просмотреть файл

@ -16,6 +16,7 @@
#define ARCH_PPC 0
#define ARCH_X86 0
#define ARCH_X86_64 1
#define CONFIG_2PASS_PARTITION_SEARCH_LVL 1
#define CONFIG_ACCOUNTING 0
#define CONFIG_ANALYZER 0
#define CONFIG_AV1_DECODER 1
@ -23,30 +24,35 @@
#define CONFIG_BIG_ENDIAN 0
#define CONFIG_BITSTREAM_DEBUG 0
#define CONFIG_COEFFICIENT_RANGE_CHECKING 0
#define CONFIG_COLLECT_INTER_MODE_RD_STATS 1
#define CONFIG_COLLECT_INTER_MODE_RD_STATS 0
#define CONFIG_COLLECT_RD_STATS 0
#define CONFIG_DEBUG 0
#define CONFIG_DENOISE 0
#define CONFIG_DIST_8X8 1
#define CONFIG_DENOISE 1
#define CONFIG_DIST_8X8 0
#define CONFIG_ENTROPY_STATS 0
#define CONFIG_FILEOPTIONS 1
#define CONFIG_FIX_GF_LENGTH 1
#define CONFIG_FP_MB_STATS 0
#define CONFIG_GCC 1
#define CONFIG_GCOV 0
#define CONFIG_GLOBAL_MOTION_SEARCH 1
#define CONFIG_GPROF 0
#define CONFIG_INSPECTION 0
#define CONFIG_INTERNAL_STATS 0
#define CONFIG_INTER_STATS_ONLY 0
#define CONFIG_LIBYUV 0
#define CONFIG_LOWBITDEPTH 0
#define CONFIG_LOWBITDEPTH 1
#define CONFIG_MAX_DECODE_PROFILE 2
#define CONFIG_MISMATCH_DEBUG 0
#define CONFIG_MSVS 1
#define CONFIG_MULTITHREAD 1
#define CONFIG_NORMAL_TILE_MODE 0
#define CONFIG_OS_SUPPORT 1
#define CONFIG_PIC 0
#define CONFIG_RD_DEBUG 0
#define CONFIG_REDUCED_ENCODER_BORDER 0
#define CONFIG_RUNTIME_CPU_DETECT 1
#define CONFIG_SHARED 0
#define CONFIG_SHARP_SETTINGS 0
#define CONFIG_SIZE_LIMIT 0
#define CONFIG_SPATIAL_RESAMPLING 1
#define CONFIG_STATIC 1

Просмотреть файл

@ -28,6 +28,7 @@ RTCD_EXTERN void (*aom_blend_a64_hmask)(uint8_t *dst, uint32_t dst_stride, const
void aom_blend_a64_mask_c(uint8_t *dst, uint32_t dst_stride, const uint8_t *src0, uint32_t src0_stride, const uint8_t *src1, uint32_t src1_stride, const uint8_t *mask, uint32_t mask_stride, int w, int h, int subx, int suby);
void aom_blend_a64_mask_sse4_1(uint8_t *dst, uint32_t dst_stride, const uint8_t *src0, uint32_t src0_stride, const uint8_t *src1, uint32_t src1_stride, const uint8_t *mask, uint32_t mask_stride, int w, int h, int subx, int suby);
void aom_blend_a64_mask_avx2(uint8_t *dst, uint32_t dst_stride, const uint8_t *src0, uint32_t src0_stride, const uint8_t *src1, uint32_t src1_stride, const uint8_t *mask, uint32_t mask_stride, int w, int h, int subx, int suby);
RTCD_EXTERN void (*aom_blend_a64_mask)(uint8_t *dst, uint32_t dst_stride, const uint8_t *src0, uint32_t src0_stride, const uint8_t *src1, uint32_t src1_stride, const uint8_t *mask, uint32_t mask_stride, int w, int h, int subx, int suby);
void aom_blend_a64_vmask_c(uint8_t *dst, uint32_t dst_stride, const uint8_t *src0, uint32_t src0_stride, const uint8_t *src1, uint32_t src1_stride, const uint8_t *mask, int w, int h);
@ -1232,6 +1233,7 @@ void aom_highbd_v_predictor_8x8_sse2(uint16_t *dst, ptrdiff_t y_stride, const ui
void aom_lowbd_blend_a64_d16_mask_c(uint8_t *dst, uint32_t dst_stride, const CONV_BUF_TYPE *src0, uint32_t src0_stride, const CONV_BUF_TYPE *src1, uint32_t src1_stride, const uint8_t *mask, uint32_t mask_stride, int w, int h, int subx, int suby, ConvolveParams *conv_params);
void aom_lowbd_blend_a64_d16_mask_sse4_1(uint8_t *dst, uint32_t dst_stride, const CONV_BUF_TYPE *src0, uint32_t src0_stride, const CONV_BUF_TYPE *src1, uint32_t src1_stride, const uint8_t *mask, uint32_t mask_stride, int w, int h, int subx, int suby, ConvolveParams *conv_params);
void aom_lowbd_blend_a64_d16_mask_avx2(uint8_t *dst, uint32_t dst_stride, const CONV_BUF_TYPE *src0, uint32_t src0_stride, const CONV_BUF_TYPE *src1, uint32_t src1_stride, const uint8_t *mask, uint32_t mask_stride, int w, int h, int subx, int suby, ConvolveParams *conv_params);
RTCD_EXTERN void (*aom_lowbd_blend_a64_d16_mask)(uint8_t *dst, uint32_t dst_stride, const CONV_BUF_TYPE *src0, uint32_t src0_stride, const CONV_BUF_TYPE *src1, uint32_t src1_stride, const uint8_t *mask, uint32_t mask_stride, int w, int h, int subx, int suby, ConvolveParams *conv_params);
void aom_lpf_horizontal_14_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh);
@ -1727,6 +1729,7 @@ static void setup_rtcd_internal(void)
if (flags & HAS_SSE4_1) aom_blend_a64_hmask = aom_blend_a64_hmask_sse4_1;
aom_blend_a64_mask = aom_blend_a64_mask_c;
if (flags & HAS_SSE4_1) aom_blend_a64_mask = aom_blend_a64_mask_sse4_1;
if (flags & HAS_AVX2) aom_blend_a64_mask = aom_blend_a64_mask_avx2;
aom_blend_a64_vmask = aom_blend_a64_vmask_c;
if (flags & HAS_SSE4_1) aom_blend_a64_vmask = aom_blend_a64_vmask_sse4_1;
aom_convolve8_horiz = aom_convolve8_horiz_sse2;
@ -1811,6 +1814,7 @@ static void setup_rtcd_internal(void)
if (flags & HAS_AVX2) aom_highbd_lpf_vertical_8_dual = aom_highbd_lpf_vertical_8_dual_avx2;
aom_lowbd_blend_a64_d16_mask = aom_lowbd_blend_a64_d16_mask_c;
if (flags & HAS_SSE4_1) aom_lowbd_blend_a64_d16_mask = aom_lowbd_blend_a64_d16_mask_sse4_1;
if (flags & HAS_AVX2) aom_lowbd_blend_a64_d16_mask = aom_lowbd_blend_a64_d16_mask_avx2;
aom_paeth_predictor_16x16 = aom_paeth_predictor_16x16_c;
if (flags & HAS_SSSE3) aom_paeth_predictor_16x16 = aom_paeth_predictor_16x16_ssse3;
if (flags & HAS_AVX2) aom_paeth_predictor_16x16 = aom_paeth_predictor_16x16_avx2;

Просмотреть файл

@ -1,6 +1,6 @@
// This file is generated. Do not edit.
#ifndef AOM_RTCD_H_
#define AOM_RTCD_H_
#ifndef AV1_RTCD_H_
#define AV1_RTCD_H_
#ifdef RTCD_C
#define RTCD_EXTERN
@ -58,10 +58,12 @@ RTCD_EXTERN void (*apply_selfguided_restoration)(const uint8_t *dat, int width,
void av1_build_compound_diffwtd_mask_c(uint8_t *mask, DIFFWTD_MASK_TYPE mask_type, const uint8_t *src0, int src0_stride, const uint8_t *src1, int src1_stride, int h, int w);
void av1_build_compound_diffwtd_mask_sse4_1(uint8_t *mask, DIFFWTD_MASK_TYPE mask_type, const uint8_t *src0, int src0_stride, const uint8_t *src1, int src1_stride, int h, int w);
void av1_build_compound_diffwtd_mask_avx2(uint8_t *mask, DIFFWTD_MASK_TYPE mask_type, const uint8_t *src0, int src0_stride, const uint8_t *src1, int src1_stride, int h, int w);
RTCD_EXTERN void (*av1_build_compound_diffwtd_mask)(uint8_t *mask, DIFFWTD_MASK_TYPE mask_type, const uint8_t *src0, int src0_stride, const uint8_t *src1, int src1_stride, int h, int w);
void av1_build_compound_diffwtd_mask_d16_c(uint8_t *mask, DIFFWTD_MASK_TYPE mask_type, const CONV_BUF_TYPE *src0, int src0_stride, const CONV_BUF_TYPE *src1, int src1_stride, int h, int w, ConvolveParams *conv_params, int bd);
void av1_build_compound_diffwtd_mask_d16_sse4_1(uint8_t *mask, DIFFWTD_MASK_TYPE mask_type, const CONV_BUF_TYPE *src0, int src0_stride, const CONV_BUF_TYPE *src1, int src1_stride, int h, int w, ConvolveParams *conv_params, int bd);
void av1_build_compound_diffwtd_mask_d16_avx2(uint8_t *mask, DIFFWTD_MASK_TYPE mask_type, const CONV_BUF_TYPE *src0, int src0_stride, const CONV_BUF_TYPE *src1, int src1_stride, int h, int w, ConvolveParams *conv_params, int bd);
RTCD_EXTERN void (*av1_build_compound_diffwtd_mask_d16)(uint8_t *mask, DIFFWTD_MASK_TYPE mask_type, const CONV_BUF_TYPE *src0, int src0_stride, const CONV_BUF_TYPE *src1, int src1_stride, int h, int w, ConvolveParams *conv_params, int bd);
void av1_build_compound_diffwtd_mask_highbd_c(uint8_t *mask, DIFFWTD_MASK_TYPE mask_type, const uint8_t *src0, int src0_stride, const uint8_t *src1, int src1_stride, int h, int w, int bd);
@ -173,6 +175,36 @@ void av1_highbd_dr_prediction_z2_c(uint16_t *dst, ptrdiff_t stride, int bw, int
void av1_highbd_dr_prediction_z3_c(uint16_t *dst, ptrdiff_t stride, int bw, int bh, const uint16_t *above, const uint16_t *left, int upsample_left, int dx, int dy, int bd);
#define av1_highbd_dr_prediction_z3 av1_highbd_dr_prediction_z3_c
void av1_highbd_inv_txfm_add_c(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_sse4_1(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_avx2(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
RTCD_EXTERN void (*av1_highbd_inv_txfm_add)(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_16x16_c(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_16x16_sse4_1(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
RTCD_EXTERN void (*av1_highbd_inv_txfm_add_16x16)(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_16x8_c(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_16x8_sse4_1(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
RTCD_EXTERN void (*av1_highbd_inv_txfm_add_16x8)(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_32x32_c(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_32x32_sse4_1(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_32x32_avx2(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
RTCD_EXTERN void (*av1_highbd_inv_txfm_add_32x32)(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_4x4_c(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_4x4_sse4_1(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
RTCD_EXTERN void (*av1_highbd_inv_txfm_add_4x4)(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_8x16_c(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_8x16_sse4_1(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
RTCD_EXTERN void (*av1_highbd_inv_txfm_add_8x16)(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_8x8_c(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_inv_txfm_add_8x8_sse4_1(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
RTCD_EXTERN void (*av1_highbd_inv_txfm_add_8x8)(const tran_low_t *dqcoeff, uint8_t *dst, int stride, const TxfmParam *txfm_param);
void av1_highbd_iwht4x4_16_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride, int bd);
#define av1_highbd_iwht4x4_16_add av1_highbd_iwht4x4_16_add_c
@ -209,8 +241,7 @@ void av1_highbd_wiener_convolve_add_src_avx2(const uint8_t *src, ptrdiff_t src_s
RTCD_EXTERN void (*av1_highbd_wiener_convolve_add_src)(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h, const ConvolveParams *conv_params, int bps);
void av1_inv_txfm2d_add_16x16_c(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd);
void av1_inv_txfm2d_add_16x16_sse4_1(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd);
RTCD_EXTERN void (*av1_inv_txfm2d_add_16x16)(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd);
#define av1_inv_txfm2d_add_16x16 av1_inv_txfm2d_add_16x16_c
void av1_inv_txfm2d_add_16x32_c(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd);
#define av1_inv_txfm2d_add_16x32 av1_inv_txfm2d_add_16x32_c
@ -228,8 +259,7 @@ void av1_inv_txfm2d_add_32x16_c(const int32_t *input, uint16_t *output, int stri
#define av1_inv_txfm2d_add_32x16 av1_inv_txfm2d_add_32x16_c
void av1_inv_txfm2d_add_32x32_c(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd);
void av1_inv_txfm2d_add_32x32_avx2(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd);
RTCD_EXTERN void (*av1_inv_txfm2d_add_32x32)(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd);
#define av1_inv_txfm2d_add_32x32 av1_inv_txfm2d_add_32x32_c
void av1_inv_txfm2d_add_32x64_c(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd);
#define av1_inv_txfm2d_add_32x64 av1_inv_txfm2d_add_32x64_c
@ -254,8 +284,7 @@ void av1_inv_txfm2d_add_64x32_c(const int32_t *input, uint16_t *output, int stri
#define av1_inv_txfm2d_add_64x32 av1_inv_txfm2d_add_64x32_c
void av1_inv_txfm2d_add_64x64_c(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd);
void av1_inv_txfm2d_add_64x64_sse4_1(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd);
RTCD_EXTERN void (*av1_inv_txfm2d_add_64x64)(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd);
#define av1_inv_txfm2d_add_64x64 av1_inv_txfm2d_add_64x64_c
void av1_inv_txfm2d_add_8x16_c(const int32_t *input, uint16_t *output, int stride, TX_TYPE tx_type, int bd);
#define av1_inv_txfm2d_add_8x16 av1_inv_txfm2d_add_8x16_c
@ -295,18 +324,18 @@ void av1_jnt_convolve_y_sse2(const uint8_t *src, int src_stride, uint8_t *dst, i
void av1_jnt_convolve_y_avx2(const uint8_t *src, int src_stride, uint8_t *dst, int dst_stride, int w, int h, const InterpFilterParams *filter_params_x, const InterpFilterParams *filter_params_y, const int subpel_x_q4, const int subpel_y_q4, ConvolveParams *conv_params);
RTCD_EXTERN void (*av1_jnt_convolve_y)(const uint8_t *src, int src_stride, uint8_t *dst, int dst_stride, int w, int h, const InterpFilterParams *filter_params_x, const InterpFilterParams *filter_params_y, const int subpel_x_q4, const int subpel_y_q4, ConvolveParams *conv_params);
void av1_selfguided_restoration_c(const uint8_t *dgd8, int width, int height,
int dgd_stride, int32_t *flt0, int32_t *flt1, int flt_stride,
int sgr_params_idx, int bit_depth, int highbd);
void av1_selfguided_restoration_sse4_1(const uint8_t *dgd8, int width, int height,
int dgd_stride, int32_t *flt0, int32_t *flt1, int flt_stride,
int sgr_params_idx, int bit_depth, int highbd);
void av1_selfguided_restoration_avx2(const uint8_t *dgd8, int width, int height,
int dgd_stride, int32_t *flt0, int32_t *flt1, int flt_stride,
int sgr_params_idx, int bit_depth, int highbd);
RTCD_EXTERN void (*av1_selfguided_restoration)(const uint8_t *dgd8, int width, int height,
int dgd_stride, int32_t *flt0, int32_t *flt1, int flt_stride,
int sgr_params_idx, int bit_depth, int highbd);
int av1_selfguided_restoration_c(const uint8_t *dgd8, int width, int height,
int dgd_stride, int32_t *flt0, int32_t *flt1, int flt_stride,
int sgr_params_idx, int bit_depth, int highbd);
int av1_selfguided_restoration_sse4_1(const uint8_t *dgd8, int width, int height,
int dgd_stride, int32_t *flt0, int32_t *flt1, int flt_stride,
int sgr_params_idx, int bit_depth, int highbd);
int av1_selfguided_restoration_avx2(const uint8_t *dgd8, int width, int height,
int dgd_stride, int32_t *flt0, int32_t *flt1, int flt_stride,
int sgr_params_idx, int bit_depth, int highbd);
RTCD_EXTERN int (*av1_selfguided_restoration)(const uint8_t *dgd8, int width, int height,
int dgd_stride, int32_t *flt0, int32_t *flt1, int flt_stride,
int sgr_params_idx, int bit_depth, int highbd);
void av1_upsample_intra_edge_c(uint8_t *p, int sz);
void av1_upsample_intra_edge_sse4_1(uint8_t *p, int sz);
@ -398,7 +427,7 @@ cfl_subtract_average_fn get_subtract_average_fn_sse2(TX_SIZE tx_size);
cfl_subtract_average_fn get_subtract_average_fn_avx2(TX_SIZE tx_size);
RTCD_EXTERN cfl_subtract_average_fn (*get_subtract_average_fn)(TX_SIZE tx_size);
void aom_rtcd(void);
void av1_rtcd(void);
#ifdef RTCD_C
#include "aom_ports/x86.h"
@ -413,8 +442,10 @@ static void setup_rtcd_internal(void)
if (flags & HAS_AVX2) apply_selfguided_restoration = apply_selfguided_restoration_avx2;
av1_build_compound_diffwtd_mask = av1_build_compound_diffwtd_mask_c;
if (flags & HAS_SSE4_1) av1_build_compound_diffwtd_mask = av1_build_compound_diffwtd_mask_sse4_1;
if (flags & HAS_AVX2) av1_build_compound_diffwtd_mask = av1_build_compound_diffwtd_mask_avx2;
av1_build_compound_diffwtd_mask_d16 = av1_build_compound_diffwtd_mask_d16_c;
if (flags & HAS_SSE4_1) av1_build_compound_diffwtd_mask_d16 = av1_build_compound_diffwtd_mask_d16_sse4_1;
if (flags & HAS_AVX2) av1_build_compound_diffwtd_mask_d16 = av1_build_compound_diffwtd_mask_d16_avx2;
av1_build_compound_diffwtd_mask_highbd = av1_build_compound_diffwtd_mask_highbd_c;
if (flags & HAS_SSSE3) av1_build_compound_diffwtd_mask_highbd = av1_build_compound_diffwtd_mask_highbd_ssse3;
if (flags & HAS_AVX2) av1_build_compound_diffwtd_mask_highbd = av1_build_compound_diffwtd_mask_highbd_avx2;
@ -451,6 +482,22 @@ static void setup_rtcd_internal(void)
av1_highbd_convolve_y_sr = av1_highbd_convolve_y_sr_c;
if (flags & HAS_SSSE3) av1_highbd_convolve_y_sr = av1_highbd_convolve_y_sr_ssse3;
if (flags & HAS_AVX2) av1_highbd_convolve_y_sr = av1_highbd_convolve_y_sr_avx2;
av1_highbd_inv_txfm_add = av1_highbd_inv_txfm_add_c;
if (flags & HAS_SSE4_1) av1_highbd_inv_txfm_add = av1_highbd_inv_txfm_add_sse4_1;
if (flags & HAS_AVX2) av1_highbd_inv_txfm_add = av1_highbd_inv_txfm_add_avx2;
av1_highbd_inv_txfm_add_16x16 = av1_highbd_inv_txfm_add_16x16_c;
if (flags & HAS_SSE4_1) av1_highbd_inv_txfm_add_16x16 = av1_highbd_inv_txfm_add_16x16_sse4_1;
av1_highbd_inv_txfm_add_16x8 = av1_highbd_inv_txfm_add_16x8_c;
if (flags & HAS_SSE4_1) av1_highbd_inv_txfm_add_16x8 = av1_highbd_inv_txfm_add_16x8_sse4_1;
av1_highbd_inv_txfm_add_32x32 = av1_highbd_inv_txfm_add_32x32_c;
if (flags & HAS_SSE4_1) av1_highbd_inv_txfm_add_32x32 = av1_highbd_inv_txfm_add_32x32_sse4_1;
if (flags & HAS_AVX2) av1_highbd_inv_txfm_add_32x32 = av1_highbd_inv_txfm_add_32x32_avx2;
av1_highbd_inv_txfm_add_4x4 = av1_highbd_inv_txfm_add_4x4_c;
if (flags & HAS_SSE4_1) av1_highbd_inv_txfm_add_4x4 = av1_highbd_inv_txfm_add_4x4_sse4_1;
av1_highbd_inv_txfm_add_8x16 = av1_highbd_inv_txfm_add_8x16_c;
if (flags & HAS_SSE4_1) av1_highbd_inv_txfm_add_8x16 = av1_highbd_inv_txfm_add_8x16_sse4_1;
av1_highbd_inv_txfm_add_8x8 = av1_highbd_inv_txfm_add_8x8_c;
if (flags & HAS_SSE4_1) av1_highbd_inv_txfm_add_8x8 = av1_highbd_inv_txfm_add_8x8_sse4_1;
av1_highbd_jnt_convolve_2d = av1_highbd_jnt_convolve_2d_c;
if (flags & HAS_SSE4_1) av1_highbd_jnt_convolve_2d = av1_highbd_jnt_convolve_2d_sse4_1;
if (flags & HAS_AVX2) av1_highbd_jnt_convolve_2d = av1_highbd_jnt_convolve_2d_avx2;
@ -468,14 +515,8 @@ static void setup_rtcd_internal(void)
av1_highbd_wiener_convolve_add_src = av1_highbd_wiener_convolve_add_src_c;
if (flags & HAS_SSSE3) av1_highbd_wiener_convolve_add_src = av1_highbd_wiener_convolve_add_src_ssse3;
if (flags & HAS_AVX2) av1_highbd_wiener_convolve_add_src = av1_highbd_wiener_convolve_add_src_avx2;
av1_inv_txfm2d_add_16x16 = av1_inv_txfm2d_add_16x16_c;
if (flags & HAS_SSE4_1) av1_inv_txfm2d_add_16x16 = av1_inv_txfm2d_add_16x16_sse4_1;
av1_inv_txfm2d_add_32x32 = av1_inv_txfm2d_add_32x32_c;
if (flags & HAS_AVX2) av1_inv_txfm2d_add_32x32 = av1_inv_txfm2d_add_32x32_avx2;
av1_inv_txfm2d_add_4x4 = av1_inv_txfm2d_add_4x4_c;
if (flags & HAS_SSE4_1) av1_inv_txfm2d_add_4x4 = av1_inv_txfm2d_add_4x4_sse4_1;
av1_inv_txfm2d_add_64x64 = av1_inv_txfm2d_add_64x64_c;
if (flags & HAS_SSE4_1) av1_inv_txfm2d_add_64x64 = av1_inv_txfm2d_add_64x64_sse4_1;
av1_inv_txfm2d_add_8x8 = av1_inv_txfm2d_add_8x8_c;
if (flags & HAS_SSE4_1) av1_inv_txfm2d_add_8x8 = av1_inv_txfm2d_add_8x8_sse4_1;
av1_inv_txfm_add = av1_inv_txfm_add_c;

Просмотреть файл

@ -62,24 +62,14 @@ if __name__ == '__main__':
'CMAKE_CURRENT_SOURCE_DIR': AOM_DIR,
'CONFIG_AV1_DECODER': 1,
'CONFIG_AV1_ENCODER': 0,
'CONFIG_BGSPRITE': 0,
'CONFIG_CDEF_SINGLEPASS': 0,
'CONFIG_CFL': 0,
'CONFIG_HASH_ME': 0,
'CONFIG_HIGH_BITDEPTH': 0,
'CONFIG_COLLECT_INTER_MODE_RD_STATS': 0,
'CONFIG_INSPECTION': 0,
'CONFIG_INTERNAL_STATS': 0,
'CONFIG_LIBYUV': 0,
'CONFIG_LOWBITDEPTH': 0,
'CONFIG_LV_MAP': 0,
'CONFIG_MOTION_VAR': 0,
'CONFIG_LOWBITDEPTH': 1,
'CONFIG_MULTITHREAD': 1,
'CONFIG_NCOBMC_ADAPT_WEIGHT': 0,
'CONFIG_PIC': 0,
'CONFIG_PVQ': 0,
'CONFIG_UNIT_TESTS': 0,
'CONFIG_WEBM_IO': 0,
'CONFIG_XIPHRC': 0,
'CMAKE_CURRENT_BINARY_DIR': 'OBJDIR',
'CMAKE_INSTALL_PREFIX': 'INSTALLDIR',
'CMAKE_SYSTEM_NAME': 'Linux',
@ -87,6 +77,7 @@ if __name__ == '__main__':
'ENABLE_EXAMPLES': 0,
'ENABLE_TESTS': 0,
'ENABLE_TOOLS': 0,
'ENABLE_DOCS': 0,
'AOM_TEST_TEST_CMAKE_': 1, #prevent building tests
}
@ -115,6 +106,8 @@ if __name__ == '__main__':
variables['INLINE'] = 'inline'
if cpu == 'x86' and system == 'linux':
variables['CONFIG_PIC'] = 1
if cpu == 'armv7':
variables['CONFIG_PIC'] = 1
if system == 'win' and not arch.startswith('mingw'):
variables['MSVC'] = 1
@ -124,9 +117,7 @@ if __name__ == '__main__':
# Disable HAVE_UNISTD_H.
cache_variables.remove('HAVE_UNISTD_H')
write_aom_config(system, arch, variables, cache_variables)
# Currently, the sources are the same for each supported cpu
# regardless of operating system / compiler. If that changes, we'll
# have to generate sources for each combination.

Просмотреть файл

@ -34,21 +34,21 @@ function gen_rtcd_header {
AOM_CONFIG=$BASE_DIR/$LIBAOM_CONFIG_DIR/$1/config/aom_config.h
$BASE_DIR/$LIBAOM_SRC_DIR/build/make/rtcd.pl \
$BASE_DIR/$LIBAOM_SRC_DIR/build/cmake/rtcd.pl \
--arch=$2 \
--sym=aom_rtcd $3 \
--sym=av1_rtcd $3 \
--config=$AOM_CONFIG \
$BASE_DIR/$LIBAOM_SRC_DIR/av1/common/av1_rtcd_defs.pl \
> $BASE_DIR/$LIBAOM_CONFIG_DIR/$1/config/av1_rtcd.h
$BASE_DIR/$LIBAOM_SRC_DIR/build/make/rtcd.pl \
$BASE_DIR/$LIBAOM_SRC_DIR/build/cmake/rtcd.pl \
--arch=$2 \
--sym=aom_scale_rtcd $3 \
--config=$AOM_CONFIG \
$BASE_DIR/$LIBAOM_SRC_DIR/aom_scale/aom_scale_rtcd.pl \
> $BASE_DIR/$LIBAOM_CONFIG_DIR/$1/config/aom_scale_rtcd.h
$BASE_DIR/$LIBAOM_SRC_DIR/build/make/rtcd.pl \
$BASE_DIR/$LIBAOM_SRC_DIR/build/cmake/rtcd.pl \
--arch=$2 \
--sym=aom_dsp_rtcd $3 \
--config=$AOM_CONFIG \

Просмотреть файл

@ -36,6 +36,7 @@ files = {
'../../third_party/aom/aom_dsp/arm/subtract_neon.c',
'../../third_party/aom/aom_dsp/binary_codes_reader.c',
'../../third_party/aom/aom_dsp/bitreader_buffer.c',
'../../third_party/aom/aom_dsp/bitwriter_buffer.c',
'../../third_party/aom/aom_dsp/blend_a64_hmask.c',
'../../third_party/aom/aom_dsp/blend_a64_mask.c',
'../../third_party/aom/aom_dsp/blend_a64_vmask.c',
@ -67,6 +68,7 @@ files = {
'../../third_party/aom/av1/common/arm/jnt_convolve_neon.c',
'../../third_party/aom/av1/common/arm/reconinter_neon.c',
'../../third_party/aom/av1/common/arm/selfguided_neon.c',
'../../third_party/aom/av1/common/arm/warp_plane_neon.c',
'../../third_party/aom/av1/common/arm/wiener_convolve_neon.c',
'../../third_party/aom/av1/common/av1_inv_txfm1d.c',
'../../third_party/aom/av1/common/av1_inv_txfm2d.c',
@ -86,6 +88,7 @@ files = {
'../../third_party/aom/av1/common/frame_buffers.c',
'../../third_party/aom/av1/common/idct.c',
'../../third_party/aom/av1/common/mvref_common.c',
'../../third_party/aom/av1/common/obu_util.c',
'../../third_party/aom/av1/common/odintrin.c',
'../../third_party/aom/av1/common/pred_common.c',
'../../third_party/aom/av1/common/quant_common.c',
@ -139,6 +142,7 @@ files = {
'../../third_party/aom/aom_dsp/aom_dsp_rtcd.c',
'../../third_party/aom/aom_dsp/binary_codes_reader.c',
'../../third_party/aom/aom_dsp/bitreader_buffer.c',
'../../third_party/aom/aom_dsp/bitwriter_buffer.c',
'../../third_party/aom/aom_dsp/blend_a64_hmask.c',
'../../third_party/aom/aom_dsp/blend_a64_mask.c',
'../../third_party/aom/aom_dsp/blend_a64_vmask.c',
@ -177,6 +181,7 @@ files = {
'../../third_party/aom/av1/common/frame_buffers.c',
'../../third_party/aom/av1/common/idct.c',
'../../third_party/aom/av1/common/mvref_common.c',
'../../third_party/aom/av1/common/obu_util.c',
'../../third_party/aom/av1/common/odintrin.c',
'../../third_party/aom/av1/common/pred_common.c',
'../../third_party/aom/av1/common/quant_common.c',
@ -229,6 +234,7 @@ files = {
'../../third_party/aom/aom_dsp/aom_dsp_rtcd.c',
'../../third_party/aom/aom_dsp/binary_codes_reader.c',
'../../third_party/aom/aom_dsp/bitreader_buffer.c',
'../../third_party/aom/aom_dsp/bitwriter_buffer.c',
'../../third_party/aom/aom_dsp/blend_a64_hmask.c',
'../../third_party/aom/aom_dsp/blend_a64_mask.c',
'../../third_party/aom/aom_dsp/blend_a64_vmask.c',
@ -251,6 +257,7 @@ files = {
'../../third_party/aom/aom_dsp/x86/aom_subpixel_bilinear_sse2.asm',
'../../third_party/aom/aom_dsp/x86/aom_subpixel_bilinear_ssse3.asm',
'../../third_party/aom/aom_dsp/x86/blend_a64_hmask_sse4.c',
'../../third_party/aom/aom_dsp/x86/blend_a64_mask_avx2.c',
'../../third_party/aom/aom_dsp/x86/blend_a64_mask_sse4.c',
'../../third_party/aom/aom_dsp/x86/blend_a64_vmask_sse4.c',
'../../third_party/aom/aom_dsp/x86/fft_avx2.c',
@ -300,6 +307,7 @@ files = {
'../../third_party/aom/av1/common/frame_buffers.c',
'../../third_party/aom/av1/common/idct.c',
'../../third_party/aom/av1/common/mvref_common.c',
'../../third_party/aom/av1/common/obu_util.c',
'../../third_party/aom/av1/common/odintrin.c',
'../../third_party/aom/av1/common/pred_common.c',
'../../third_party/aom/av1/common/quant_common.c',
@ -389,6 +397,7 @@ files = {
'../../third_party/aom/aom_dsp/aom_dsp_rtcd.c',
'../../third_party/aom/aom_dsp/binary_codes_reader.c',
'../../third_party/aom/aom_dsp/bitreader_buffer.c',
'../../third_party/aom/aom_dsp/bitwriter_buffer.c',
'../../third_party/aom/aom_dsp/blend_a64_hmask.c',
'../../third_party/aom/aom_dsp/blend_a64_mask.c',
'../../third_party/aom/aom_dsp/blend_a64_vmask.c',
@ -411,6 +420,7 @@ files = {
'../../third_party/aom/aom_dsp/x86/aom_subpixel_bilinear_sse2.asm',
'../../third_party/aom/aom_dsp/x86/aom_subpixel_bilinear_ssse3.asm',
'../../third_party/aom/aom_dsp/x86/blend_a64_hmask_sse4.c',
'../../third_party/aom/aom_dsp/x86/blend_a64_mask_avx2.c',
'../../third_party/aom/aom_dsp/x86/blend_a64_mask_sse4.c',
'../../third_party/aom/aom_dsp/x86/blend_a64_vmask_sse4.c',
'../../third_party/aom/aom_dsp/x86/fft_avx2.c',
@ -459,6 +469,7 @@ files = {
'../../third_party/aom/av1/common/frame_buffers.c',
'../../third_party/aom/av1/common/idct.c',
'../../third_party/aom/av1/common/mvref_common.c',
'../../third_party/aom/av1/common/obu_util.c',
'../../third_party/aom/av1/common/odintrin.c',
'../../third_party/aom/av1/common/pred_common.c',
'../../third_party/aom/av1/common/quant_common.c',

Просмотреть файл

@ -1528,7 +1528,7 @@ TransportLayerDtls::RecordCipherTelemetry() {
nsresult rv = GetCipherSuite(&cipher);
if (NS_FAILED(rv)) {
MOZ_MTLOG(ML_ERROR, "Failed to get cipher suite");
MOZ_MTLOG(ML_ERROR, "Failed to get DTLS cipher suite");
return;
}
@ -1580,6 +1580,34 @@ TransportLayerDtls::RecordCipherTelemetry() {
}
Telemetry::Accumulate(Telemetry::WEBRTC_DTLS_CIPHER, t_cipher);
rv = GetSrtpCipher(&cipher);
if (NS_FAILED(rv)) {
MOZ_MTLOG(ML_ERROR, "Failed to get SRTP cipher suite");
return;
}
mozilla::Telemetry::LABELS_WEBRTC_SRTP_CIPHER label =
mozilla::Telemetry::LABELS_WEBRTC_SRTP_CIPHER::Unknown;
switch (cipher) {
case kDtlsSrtpAes128CmHmacSha1_80:
label = Telemetry::LABELS_WEBRTC_SRTP_CIPHER::Aes128CmHmacSha1_80;
break;
case kDtlsSrtpAes128CmHmacSha1_32:
label = Telemetry::LABELS_WEBRTC_SRTP_CIPHER::Aes128CmHmacSha1_32;
break;
case kDtlsSrtpAeadAes128Gcm:
label = Telemetry::LABELS_WEBRTC_SRTP_CIPHER::AeadAes128Gcm;
break;
case kDtlsSrtpAeadAes256Gcm:
label = Telemetry::LABELS_WEBRTC_SRTP_CIPHER::AeadAes256Gcm;
break;
}
Telemetry::AccumulateCategorical(label);
}
} // close namespace

Просмотреть файл

@ -98,8 +98,16 @@ cargo_extra_outputs = {
}
cargo_extra_flags = {
'style': [
'-l', 'static=global_static',
'-L', 'native=%(libloading_outdir)s',
]
'custom-build': {
'style': [
'-l', 'static=global_static',
'-L', 'native=%(libloading_outdir)s',
],
},
'lib': {
'lmdb-sys': [
'-l', 'static=lmdb',
'-L', 'native=%(lmdb-sys_outdir)s'
]
}
}

Просмотреть файл

@ -796,6 +796,13 @@ class TupBackend(CommonBackend):
invocation['outputs'][0].endswith('.rlib')):
return invocation['env']['OUT_DIR']
def get_lmdb_sys_outdir():
for invocation in invocations:
if (invocation['package_name'] == 'lmdb-sys' and
len(invocation['outputs']) >= 1 and
invocation['outputs'][0].endswith('.rlib')):
return invocation['env']['OUT_DIR']
def display_name(invocation):
output_str = ''
if invocation['outputs']:
@ -843,11 +850,13 @@ class TupBackend(CommonBackend):
for output in cargo_extra_outputs.get(shortname, []):
outputs.append(os.path.join(invocation['env']['OUT_DIR'], output))
if (invocation['target_kind'][0] == 'custom-build' and
os.path.basename(invocation['program']) == 'rustc'):
flags = cargo_extra_flags.get(shortname, [])
if os.path.basename(invocation['program']) == 'rustc':
flags = cargo_extra_flags.get(invocation['target_kind'][0], {}).get(shortname, [])
for flag in flags:
command.append(flag % {'libloading_outdir': get_libloading_outdir()})
command.append(flag % {
'libloading_outdir': get_libloading_outdir(),
'lmdb-sys_outdir': get_lmdb_sys_outdir(),
})
if 'rustc' in invocation['program']:
header = 'RUSTC'

Просмотреть файл

@ -53,6 +53,13 @@ nsSecureBrowserUIImpl::Init(mozIDOMWindowProxy* aWindow)
return NS_ERROR_FAILURE;
}
// Save this so we can compare it to the web progress in OnLocationChange.
nsresult rv;
mWebProgress = do_GetWeakReference(wp, &rv);
if (NS_FAILED(rv)) {
return rv;
}
return wp->AddProgressListener(this, nsIWebProgress::NOTIFY_LOCATION);
}
@ -239,10 +246,17 @@ nsSecureBrowserUIImpl::UpdateStateAndSecurityInfo(nsIChannel* channel,
return NS_OK;
}
// We receive this notification whenever a top-level navigation occurs. When we
// do, we extract any relevant security information and set our state
// accordingly. We then call OnSecurityChange to notify any downstream listeners
// of the security state.
// We receive this notification for the nsIWebProgress we added ourselves to
// (i.e. the window we were passed in Init, which should be the top-level
// window or whatever corresponds to an <iframe mozbrowser> element). In some
// cases, we also receive it from nsIWebProgress instances that are children of
// that nsIWebProgress. We ignore notifications from children because they don't
// change the top-level state (if children load mixed or tracking content, the
// docShell will know and will tell us in GetState when we call
// CheckForBlockedContent).
// When we receive a notification from the top-level nsIWebProgress, we extract
// any relevant security information and set our state accordingly. We then call
// OnSecurityChange to notify any downstream listeners of the security state.
NS_IMETHODIMP
nsSecureBrowserUIImpl::OnLocationChange(nsIWebProgress* aWebProgress,
nsIRequest* aRequest,
@ -258,6 +272,17 @@ nsSecureBrowserUIImpl::OnLocationChange(nsIWebProgress* aWebProgress,
("%p OnLocationChange: %p %p %s %x", this, aWebProgress, aRequest,
aLocation->GetSpecOrDefault().get(), aFlags));
// Filter out events from children. See comment at the top of this function.
// It would be nice if the attribute isTopLevel worked for this, but that
// filters out events for <iframe mozbrowser> elements, which means they don't
// get OnSecurityChange events from this implementation. Instead, we check to
// see if the web progress we were handed here is the same one as we were
// initialized with.
nsCOMPtr<nsIWebProgress> originalWebProgress = do_QueryReferent(mWebProgress);
if (aWebProgress != originalWebProgress) {
return NS_OK;
}
// Clear any state that varies by location.
if (!(aFlags & LOCATION_CHANGE_SAME_DOCUMENT)) {
mState = 0;

Просмотреть файл

@ -39,6 +39,7 @@ protected:
uint32_t mState;
nsWeakPtr mDocShell;
nsWeakPtr mWebProgress;
nsCOMPtr<nsITransportSecurityInfo> mTopLevelSecurityInfo;
};

Просмотреть файл

@ -7,7 +7,7 @@
<%helpers:shorthand
name="overflow"
flags="SHORTHAND_IN_GETCS"
sub_properties="overflow-y overflow-x"
sub_properties="overflow-x overflow-y"
spec="https://drafts.csswg.org/css-overflow/#propdef-overflow"
>
use properties::longhands::overflow_x::parse as parse_overflow;
@ -52,9 +52,9 @@
}
}
% endif
let overflow_y = parse_overflow(context, input)?;
let overflow_x =
input.try(|i| parse_overflow(context, i)).unwrap_or(overflow_y);
let overflow_x = parse_overflow(context, input)?;
let overflow_y =
input.try(|i| parse_overflow(context, i)).unwrap_or(overflow_x);
Ok(expanded! {
overflow_x: overflow_x,
overflow_y: overflow_y,
@ -63,10 +63,10 @@
impl<'a> ToCss for LonghandsToSerialize<'a> {
fn to_css<W>(&self, dest: &mut CssWriter<W>) -> fmt::Result where W: fmt::Write {
self.overflow_y.to_css(dest)?;
self.overflow_x.to_css(dest)?;
if self.overflow_x != self.overflow_y {
dest.write_char(' ')?;
self.overflow_x.to_css(dest)?;
self.overflow_y.to_css(dest)?;
}
Ok(())
}

Просмотреть файл

@ -29,7 +29,7 @@ def get_changed_files(repository, revision):
logger.debug("Querying version control for metadata: %s", url)
def get_automationrelevance():
response = requests.get(url, timeout=5)
response = requests.get(url, timeout=30)
return response.json()
contents = retry(get_automationrelevance, attempts=10, sleeptime=10)

Просмотреть файл

@ -24,5 +24,5 @@ setup(name=PACKAGE_NAME,
include_package_data=True,
zip_safe=False,
install_requires=['six >= 1.10.0'],
tests_require=['mozhttpd']
tests_require=['wptserve']
)

Просмотреть файл

@ -2,9 +2,7 @@
subsuite = mozbase, os == "linux"
[test_extract.py]
[test_load.py]
skip-if = python == 3
[test_move_remove.py]
skip-if = python == 3
[test_tempdir.py]
[test_tempfile.py]
[test_tree.py]

Просмотреть файл

@ -6,63 +6,62 @@ tests for mozfile.load
from __future__ import absolute_import
import mozhttpd
import os
import tempfile
import unittest
import mozunit
import pytest
from wptserve.handlers import handler
from wptserve.server import WebTestHttpd
from mozfile import load
class TestLoad(unittest.TestCase):
"""test the load function"""
@pytest.fixture(name="httpd_url")
def fixture_httpd_url():
"""Yield a started WebTestHttpd server."""
def test_http(self):
"""test with mozhttpd and a http:// URL"""
@handler
def example(request, response):
"""Example request handler."""
body = b"example"
return (
200,
[("Content-type", "text/plain"), ("Content-length", len(body))],
body,
)
def example(request):
"""example request handler"""
body = 'example'
return (200, {'Content-type': 'text/plain',
'Content-length': len(body)
}, body)
httpd = WebTestHttpd(host="127.0.0.1", routes=[("GET", "*", example)])
host = '127.0.0.1'
httpd = mozhttpd.MozHttpd(host=host,
urlhandlers=[{'method': 'GET',
'path': '.*',
'function': example}])
try:
httpd.start(block=False)
content = load(httpd.get_url()).read()
self.assertEqual(content, 'example')
finally:
httpd.stop()
def test_file_path(self):
"""test loading from file path"""
try:
# create a temporary file
tmp = tempfile.NamedTemporaryFile(delete=False)
tmp.write('foo bar')
tmp.close()
# read the file
contents = file(tmp.name).read()
self.assertEqual(contents, 'foo bar')
# read the file with load and a file path
self.assertEqual(load(tmp.name).read(), contents)
# read the file with load and a file URL
self.assertEqual(load('file://%s' % tmp.name).read(), contents)
finally:
# remove the tempfile
if os.path.exists(tmp.name):
os.remove(tmp.name)
httpd.start(block=False)
yield httpd.get_url()
httpd.stop()
if __name__ == '__main__':
def test_http(httpd_url):
"""Test with WebTestHttpd and a http:// URL."""
content = load(httpd_url).read()
assert content == b"example"
@pytest.fixture(name="temporary_file")
def fixture_temporary_file(tmpdir):
"""Yield a path to a temporary file."""
foobar = tmpdir.join("foobar.txt")
foobar.write("hello world")
yield str(foobar)
foobar.remove()
def test_file_path(temporary_file):
"""Test loading from a file path."""
assert load(temporary_file).read() == "hello world"
def test_file_url(temporary_file):
"""Test loading from a file URL."""
assert load("file://%s" % temporary_file).read() == "hello world"
if __name__ == "__main__":
mozunit.main()

Просмотреть файл

@ -81,7 +81,7 @@ class MozfileRemoveTestCase(unittest.TestCase):
"""Test removing a directory with an open file"""
# Open a file in the generated stub
filepath = os.path.join(self.tempdir, *stubs.files[1])
f = file(filepath, 'w')
f = open(filepath, 'w')
f.write('foo-bar')
# keep file open and then try removing the dir-tree

Просмотреть файл

@ -549992,7 +549992,7 @@
"testharness"
],
"css/css-overflow/overflow-shorthand-001.html": [
"d922e902720ae6a38ff9c644ddd63ddfd5e62c37",
"f425636c3bb4297e4e6564d1c2629dc10dde5607",
"testharness"
],
"css/css-overflow/reference/input-scrollable-region-001-ref.html": [
@ -578424,7 +578424,7 @@
"testharness"
],
"css/cssom/shorthand-values.html": [
"1e4d93acb26e3f644b103974b910203abf93c56e",
"d8d7f5349a4561cb4d764f366236e88eb3775c8f",
"testharness"
],
"css/cssom/style-attr-update-across-documents.html": [
@ -578764,7 +578764,7 @@
"reftest"
],
"css/filter-effects/filter-cb-abspos-inline-001-ref.html": [
"b4beae8004155c30dad4f48db3e2087f66c42c4f",
"6ebe4635511242cd0f5965a778a5a491cc406436",
"support"
],
"css/filter-effects/filter-cb-abspos-inline-001.html": [
@ -598516,7 +598516,7 @@
"support"
],
"fullscreen/api/document-exit-fullscreen-active-document.html": [
"8279fae533774fcf6daced99ffc84413a0a9172d",
"18b0bb6493bd8275a750091b862c7ee5ee770abf",
"testharness"
],
"fullscreen/api/document-exit-fullscreen-manual.html": [
@ -656340,7 +656340,7 @@
"support"
],
"tools/wptrunner/wptrunner/browsers/firefox.py": [
"9f7ebfa2ca544616e2feaeb53c8af73220d7271a",
"04f2ce84a41619a23e29d5436430b11fa2b6d7c5",
"support"
],
"tools/wptrunner/wptrunner/browsers/ie.py": [
@ -668704,7 +668704,7 @@
"testharness"
],
"x-frame-options/multiple.sub.html": [
"717e9fd25c51ee80f3adf029740d475790b3875e",
"f7a28e40ee22be3493c3926e15c40d2e814ad2e4",
"testharness"
],
"x-frame-options/redirect.sub.html": [

Просмотреть файл

@ -0,0 +1,4 @@
[transform-3d-rotateY-stair-above-001.xht]
expected:
if webrender: FAIL
PASS

Просмотреть файл

@ -1,4 +1,3 @@
[transform-3d-rotateY-stair-below-001.xht]
expected:
if webrender: PASS
FAIL

Просмотреть файл

@ -8,15 +8,15 @@
<div id="test-div"></div>
<script>
let div = document.getElementById("test-div");
function testOverflowShorthand(y, x) {
function testOverflowShorthand(x, y) {
test(function() {
div.style.overflowX = x;
div.style.overflowY = y;
let expectedX = getComputedStyle(div).overflowX;
let expectedY = getComputedStyle(div).overflowY;
let expectedComputedSerialization = expectedX == expectedY ? expectedX : `${expectedY} ${expectedX}`;
let expectedSpecifiedSerialization = x == y ? x : `${y} ${x}`;
let expectedComputedSerialization = expectedX == expectedY ? expectedX : `${expectedX} ${expectedY}`;
let expectedSpecifiedSerialization = x == y ? x : `${x} ${y}`;
assert_equals(div.style.overflow, expectedSpecifiedSerialization);
assert_equals(getComputedStyle(div).overflow, expectedComputedSerialization);
@ -25,18 +25,18 @@ function testOverflowShorthand(y, x) {
div.style.overflowY = "";
assert_equals(div.style.overflow, "");
div.style.overflow = `${y} ${x}`;
div.style.overflow = `${x} ${y}`;
assert_equals(div.style.overflow, expectedSpecifiedSerialization);
assert_equals(div.style.overflowX, x);
assert_equals(div.style.overflowY, y);
assert_equals(getComputedStyle(div).overflow, expectedComputedSerialization);
assert_equals(getComputedStyle(div).overflowX, expectedX);
assert_equals(getComputedStyle(div).overflowY, expectedY);
}, `overflow: ${y} ${x} works`);
}, `overflow: ${x} ${y} works`);
}
let OVERFLOW_VALUES = [ "auto", "hidden", "scroll", "visible" ];
for (let x of OVERFLOW_VALUES)
for (let y of OVERFLOW_VALUES)
testOverflowShorthand(y, x);
testOverflowShorthand(x, y);
</script>

Просмотреть файл

@ -22,7 +22,7 @@
assert_equals(styleSheet.cssRules[1].style.cssText, "overflow: hidden;", "Single value overflow with non-CSS-wide keyword should serialize correctly.");
assert_equals(styleSheet.cssRules[2].style.cssText, "overflow: initial;", "Overflow-x/y longhands with same CSS-wide keyword should serialize correctly.");
assert_equals(styleSheet.cssRules[3].style.cssText, "overflow: scroll;", "Overflow-x/y longhands with same non-CSS-wide keyword should serialize correctly.");
assert_equals(styleSheet.cssRules[4].style.cssText, "overflow: hidden scroll;", "Overflow-x/y longhands with different keywords should serialize correctly.");
assert_equals(styleSheet.cssRules[4].style.cssText, "overflow: scroll hidden;", "Overflow-x/y longhands with different keywords should serialize correctly.");
var div = document.createElement('div');
div.style.overflow = "inherit";
@ -42,7 +42,7 @@
div.style.overflowX = "scroll";
div.style.overflowY = "hidden";
assert_equals(div.style.overflow, "hidden scroll", "Overflow-x/y longhands with different keywords should serialize correctly.");
assert_equals(div.style.overflow, "scroll hidden", "Overflow-x/y longhands with different keywords should serialize correctly.");
});
</script>
</head>

Просмотреть файл

@ -32,7 +32,7 @@
'border: 1px; border-top-color: red;': 'border-width: 1px; border-top-color: red;',
'border: solid; border-style: dotted': 'border: dotted;',
'border-width: 1px;': 'border-width: 1px;',
'overflow-x: scroll; overflow-y: hidden;': 'overflow: hidden scroll;',
'overflow-x: scroll; overflow-y: hidden;': 'overflow: scroll hidden;',
'overflow-x: scroll; overflow-y: scroll;': 'overflow: scroll;',
'outline-width: 2px; outline-style: dotted; outline-color: blue;': 'outline: blue dotted 2px;',
'margin-top: 1px; margin-right: 2px; margin-bottom: 3px; margin-left: 4px;': 'margin: 1px 2px 3px 4px;',

76
third_party/aom/CMakeLists.txt поставляемый
Просмотреть файл

@ -18,45 +18,6 @@ if(NOT EMSCRIPTEN)
endif()
endif()
option(ENABLE_CCACHE "Enable ccache support." OFF)
option(ENABLE_DECODE_PERF_TESTS "Enables decoder performance tests" OFF)
option(ENABLE_DISTCC "Enable distcc support." OFF)
option(ENABLE_DOCS "Enable documentation generation (doxygen required)." ON)
option(ENABLE_ENCODE_PERF_TESTS "Enables encoder performance tests" OFF)
option(ENABLE_EXAMPLES "Enables build of example code." ON)
option(ENABLE_GOMA "Enable goma support." OFF)
option(ENABLE_IDE_TEST_HOSTING
"Enables running tests within IDEs like Visual Studio and Xcode." OFF)
option(ENABLE_NASM "Use nasm instead of yasm for x86 assembly." OFF)
option(ENABLE_TESTDATA "Enables unit test data download targets." ON)
option(ENABLE_TESTS "Enables unit tests." ON)
option(ENABLE_TOOLS "Enable applications in tools sub directory." ON)
option(ENABLE_WERROR "Converts warnings to errors at compile time." OFF)
# ARM assembly/intrinsics flags.
option(ENABLE_NEON "Enables NEON optimizations on ARM targets." ON)
# MIPS assembly/intrinsics flags.
option(ENABLE_DSPR2 "Enables DSPR2 optimizations on MIPS targets." OFF)
option(ENABLE_MSA "Enables MSA optimizations on MIPS targets." OFF)
# VSX intrinsics flags.
option(ENABLE_VSX "Enables VSX optimizations on PowerPC targets." ON)
# x86/x86_64 assembly/intrinsics flags.
option(ENABLE_MMX "Enables MMX optimizations on x86/x86_64 targets." ON)
option(ENABLE_SSE "Enables SSE optimizations on x86/x86_64 targets." ON)
option(ENABLE_SSE2 "Enables SSE2 optimizations on x86/x86_64 targets." ON)
option(ENABLE_SSE3 "Enables SSE3 optimizations on x86/x86_64 targets." ON)
option(ENABLE_SSSE3 "Enables SSSE3 optimizations on x86/x86_64 targets." ON)
option(ENABLE_SSE4_1 "Enables SSE4_1 optimizations on x86/x86_64 targets." ON)
option(ENABLE_SSE4_2 "Enables SSE4_2 optimizations on x86/x86_64 targets." ON)
option(ENABLE_AVX "Enables AVX optimizations on x86/x86_64 targets." ON)
option(ENABLE_AVX2 "Enables AVX2 optimizations on x86/x86_64 targets." ON)
# $BUILD_SHARED_LIBS is a CMake built-in-- it's listed here for visibility.
option(BUILD_SHARED_LIBS "CMake should generate a shared library build." OFF)
project(AOM C CXX)
set(AOM_ROOT "${CMAKE_CURRENT_SOURCE_DIR}")
@ -95,7 +56,7 @@ list(APPEND AOM_RTCD_SOURCES
"${AOM_ROOT}/aom_scale/aom_scale_rtcd.c"
"${AOM_ROOT}/av1/common/av1_rtcd_defs.pl"
"${AOM_ROOT}/av1/common/av1_rtcd.c"
"${AOM_ROOT}/build/make/rtcd.pl")
"${AOM_ROOT}/build/cmake/rtcd.pl")
list(APPEND AOM_LIBWEBM_SOURCES
"${AOM_ROOT}/third_party/libwebm/common/hdr_util.cc"
@ -161,12 +122,19 @@ list(APPEND AOM_SOURCES
"${AOM_ROOT}/aom/src/aom_image.c"
"${AOM_ROOT}/aom/src/aom_integer.c")
list(APPEND AOM_COMMON_APP_UTIL_SOURCES "${AOM_ROOT}/common/args.c"
"${AOM_ROOT}/common/args.h" "${AOM_ROOT}/common/md5_utils.c"
list(APPEND AOM_COMMON_APP_UTIL_SOURCES
"${AOM_ROOT}/common/args.c"
"${AOM_ROOT}/common/args.h"
"${AOM_ROOT}/common/av1_config.c"
"${AOM_ROOT}/common/av1_config.h"
"${AOM_ROOT}/common/md5_utils.c"
"${AOM_ROOT}/common/md5_utils.h"
"${AOM_ROOT}/common/tools_common.c"
"${AOM_ROOT}/common/tools_common.h"
"${AOM_ROOT}/common/video_common.h" "${AOM_ROOT}/common/y4menc.c"
"${AOM_ROOT}/common/video_common.h"
"${AOM_ROOT}/common/rawenc.c"
"${AOM_ROOT}/common/rawenc.h"
"${AOM_ROOT}/common/y4menc.c"
"${AOM_ROOT}/common/y4menc.h")
list(APPEND AOM_DECODER_APP_UTIL_SOURCES "${AOM_ROOT}/common/ivfdec.c"
@ -255,10 +223,10 @@ add_rtcd_build_step("${AOM_ROOT}/av1/common/av1_rtcd_defs.pl"
add_library(aom_rtcd OBJECT ${AOM_RTCD_SOURCES})
add_dependencies(aom_rtcd aom_version)
if (ENABLE_EXAMPLES)
add_library(aom_encoder_stats OBJECT ${AOM_ENCODER_STATS_SOURCES})
endif ()
if(ENABLE_EXAMPLES)
add_library(aom_encoder_stats OBJECT ${AOM_ENCODER_STATS_SOURCES})
set(AOM_LIB_TARGETS ${AOM_LIB_TARGETS} aom_encoder_stats)
endif()
add_library(aom ${AOM_SOURCES} $<TARGET_OBJECTS:aom_rtcd>)
if(NOT MSVC AND NOT APPLE)
@ -288,8 +256,8 @@ endforeach()
# aom_common_app_util library must define this function. This is a convenience
# to allow omission of the function from applications that might want to use
# other pieces of the util support without defining usage_exit().
file(WRITE "${AOM_CONFIG_DIR}/usage_exit.c" "void usage_exit(void) {}")
file(WRITE "${AOM_CONFIG_DIR}/usage_exit.cc"
file(WRITE "${AOM_GEN_SRC_DIR}/usage_exit.c" "void usage_exit(void) {}")
file(WRITE "${AOM_GEN_SRC_DIR}/usage_exit.cc"
"extern \"C\" void usage_exit(void) {}")
#
@ -349,6 +317,8 @@ if(CONFIG_AV1_DECODER AND ENABLE_EXAMPLES)
add_preproc_definition(_POSIX_SOURCE)
append_link_flag_to_target("inspect" "-s TOTAL_MEMORY=402653184")
append_link_flag_to_target("inspect" "-s MODULARIZE=1")
append_link_flag_to_target(
"inspect" "-s \'EXTRA_EXPORTED_RUNTIME_METHODS=[\"UTF8ToString\"]\'")
append_link_flag_to_target("inspect"
"-s EXPORT_NAME=\"\'DecoderModule\'\"")
append_link_flag_to_target("inspect" "--memory-init-file 0")
@ -407,7 +377,7 @@ if(CONFIG_AV1_ENCODER)
# TODO(tomfinegan): Sort out why a simple link command with
# aom_entropy_optimizer.c won't work on macos, but dragging in all the
# helper machinery allows the link to succeed.
add_executable(aom_entropy_optimizer "${AOM_CONFIG_DIR}/usage_exit.c"
add_executable(aom_entropy_optimizer "${AOM_GEN_SRC_DIR}/usage_exit.c"
"${AOM_ROOT}/tools/aom_entropy_optimizer.c"
$<TARGET_OBJECTS:aom_common_app_util>
$<TARGET_OBJECTS:aom_encoder_app_util>)
@ -434,7 +404,7 @@ endif()
if(ENABLE_TOOLS)
if(CONFIG_AV1_DECODER)
require_cxx_flag_nomsvc("-std=c++11" NO)
add_executable(dump_obu "${AOM_CONFIG_DIR}/usage_exit.cc"
add_executable(dump_obu "${AOM_GEN_SRC_DIR}/usage_exit.cc"
"${AOM_ROOT}/tools/dump_obu.cc"
"${AOM_ROOT}/tools/obu_parser.cc"
"${AOM_ROOT}/tools/obu_parser.h"
@ -555,9 +525,7 @@ endif()
if(HAVE_PTHREAD_H AND CONFIG_MULTITHREAD)
find_package(Threads)
foreach(app_target ${AOM_APP_TARGETS})
target_link_libraries(${app_target} ${AOM_LIB_LINK_TYPE} Threads::Threads)
endforeach()
target_link_libraries(aom ${AOM_LIB_LINK_TYPE} Threads::Threads)
endif()
if(XCODE)

10
third_party/aom/README.md поставляемый
Просмотреть файл

@ -414,6 +414,16 @@ First, add the new test data file to the `aom-test-data` bucket of the
`aomedia-testing` project on Google Cloud Platform. You may need to ask someone
with the necessary access permissions to do this for you.
NOTE: When a new test data file is added to the `aom-test-data` bucket, its
"Public access" is initially "Not public". We need to change its
"Public access" to "Public" by using the following
[`gsutil`](https://cloud.google.com/storage/docs/gsutil_install) command:
~~~
$ gsutil acl ch -g all:R gs://aom-test-data/test-data-file-name
~~~
This command grants the `AllUsers` group READ access to the file named
"test-data-file-name" in the `aom-test-data` bucket.
Once the new test data file has been added to `aom-test-data`, create a CL to
add the name of the new test data file to `test/test_data_util.cmake` and add
the SHA1 checksum of the new test data file to `test/test-data.sha1`. (The SHA1

6
third_party/aom/aom/aom.h поставляемый
Просмотреть файл

@ -28,8 +28,8 @@
/*!\file
* \brief Provides controls common to both the AOM encoder and decoder.
*/
#ifndef AOM_AOM_H_
#define AOM_AOM_H_
#ifndef AOM_AOM_AOM_H_
#define AOM_AOM_AOM_H_
#include "aom/aom_codec.h"
#include "aom/aom_image.h"
@ -144,4 +144,4 @@ AOM_CTRL_USE_TYPE(AV1_COPY_NEW_FRAME_IMAGE, aom_image_t *)
} // extern "C"
#endif
#endif // AOM_AOM_H_
#endif // AOM_AOM_AOM_H_

14
third_party/aom/aom/aom_codec.h поставляемый
Просмотреть файл

@ -33,11 +33,11 @@
* }
* </pre>
*
* Once initialized, the instance is manged using other functions from
* Once initialized, the instance is managed using other functions from
* the aom_codec_* family.
*/
#ifndef AOM_AOM_CODEC_H_
#define AOM_AOM_CODEC_H_
#ifndef AOM_AOM_AOM_CODEC_H_
#define AOM_AOM_AOM_CODEC_H_
#ifdef __cplusplus
extern "C" {
@ -259,12 +259,6 @@ typedef enum aom_superblock_size {
*
*/
int aom_codec_version(void);
#define AOM_VERSION_MAJOR(v) \
((v >> 16) & 0xff) /**< extract major from packed version */
#define AOM_VERSION_MINOR(v) \
((v >> 8) & 0xff) /**< extract minor from packed version */
#define AOM_VERSION_PATCH(v) \
((v >> 0) & 0xff) /**< extract patch from packed version */
/*!\brief Return the version major number */
#define aom_codec_version_major() ((aom_codec_version() >> 16) & 0xff)
@ -526,4 +520,4 @@ typedef struct cfg_options {
#ifdef __cplusplus
}
#endif
#endif // AOM_AOM_CODEC_H_
#endif // AOM_AOM_AOM_CODEC_H_

6
third_party/aom/aom/aom_decoder.h поставляемый
Просмотреть файл

@ -8,8 +8,8 @@
* Media Patent License 1.0 was not distributed with this source code in the
* PATENTS file, you can obtain it at www.aomedia.org/license/patent.
*/
#ifndef AOM_AOM_DECODER_H_
#define AOM_AOM_DECODER_H_
#ifndef AOM_AOM_AOM_DECODER_H_
#define AOM_AOM_AOM_DECODER_H_
/*!\defgroup decoder Decoder Algorithm Interface
* \ingroup codec
@ -361,4 +361,4 @@ aom_codec_err_t aom_codec_set_frame_buffer_functions(
#ifdef __cplusplus
}
#endif
#endif // AOM_AOM_DECODER_H_
#endif // AOM_AOM_AOM_DECODER_H_

35
third_party/aom/aom/aom_encoder.h поставляемый
Просмотреть файл

@ -8,8 +8,8 @@
* Media Patent License 1.0 was not distributed with this source code in the
* PATENTS file, you can obtain it at www.aomedia.org/license/patent.
*/
#ifndef AOM_AOM_ENCODER_H_
#define AOM_AOM_ENCODER_H_
#ifndef AOM_AOM_AOM_ENCODER_H_
#define AOM_AOM_AOM_ENCODER_H_
/*!\defgroup encoder Encoder Algorithm Interface
* \ingroup codec
@ -54,13 +54,6 @@ extern "C" {
*/
#define AOM_CODEC_CAP_PSNR 0x10000 /**< Can issue PSNR packets */
/*! Can output one partition at a time. Each partition is returned in its
* own AOM_CODEC_CX_FRAME_PKT, with the FRAME_IS_FRAGMENT flag set for
* every partition but the last. In this mode all frames are always
* returned partition by partition.
*/
#define AOM_CODEC_CAP_OUTPUT_PARTITION 0x20000
/*! Can support input images at greater than 8 bitdepth.
*/
#define AOM_CODEC_CAP_HIGHBITDEPTH 0x40000
@ -74,7 +67,6 @@ extern "C" {
*/
#define AOM_CODEC_USE_PSNR 0x10000 /**< Calculate PSNR on each frame */
/*!\brief Make the encoder output one partition at a time. */
#define AOM_CODEC_USE_OUTPUT_PARTITION 0x20000
#define AOM_CODEC_USE_HIGHBITDEPTH 0x40000 /**< Use high bitdepth */
/*!\brief Generic fixed size buffer structure
@ -119,11 +111,6 @@ typedef uint32_t aom_codec_frame_flags_t;
typedef uint32_t aom_codec_er_flags_t;
/*!\brief Improve resiliency against losses of whole frames */
#define AOM_ERROR_RESILIENT_DEFAULT 0x1
/*!\brief The frame partitions are independently decodable by the bool decoder,
* meaning that partitions can be decoded even though earlier partitions have
* been lost. Note that intra prediction is still done over the partition
* boundary. */
#define AOM_ERROR_RESILIENT_PARTITIONS 0x2
/*!\brief Encoder output packet variants
*
@ -849,13 +836,25 @@ aom_codec_err_t aom_codec_enc_config_set(aom_codec_ctx_t *ctx,
/*!\brief Get global stream headers
*
* Retrieves a stream level global header packet, if supported by the codec.
* Calls to this function should be deferred until all configuration information
* has been passed to libaom. Otherwise the global header data may be
* invalidated by additional configuration changes.
*
* The AV1 implementation of this function returns an OBU. The OBU returned is
* in Low Overhead Bitstream Format. Specifically, the obu_has_size_field bit is
* set, and the buffer contains the obu_size field for the returned OBU.
*
* \param[in] ctx Pointer to this instance's context
*
* \retval NULL
* Encoder does not support global header
* Encoder does not support global header, or an error occurred while
* generating the global header.
*
* \retval Non-NULL
* Pointer to buffer containing global header packet
* Pointer to buffer containing global header packet. The caller owns the
* memory associated with this buffer, and must free the 'buf' member of the
* aom_fixed_buf_t as well as the aom_fixed_buf_t pointer. Memory returned
* must be freed via call to free().
*/
aom_fixed_buf_t *aom_codec_get_global_headers(aom_codec_ctx_t *ctx);
@ -979,4 +978,4 @@ const aom_image_t *aom_codec_get_preview_frame(aom_codec_ctx_t *ctx);
#ifdef __cplusplus
}
#endif
#endif // AOM_AOM_ENCODER_H_
#endif // AOM_AOM_AOM_ENCODER_H_

6
third_party/aom/aom/aom_frame_buffer.h поставляемый
Просмотреть файл

@ -9,8 +9,8 @@
* PATENTS file, you can obtain it at www.aomedia.org/license/patent.
*/
#ifndef AOM_AOM_FRAME_BUFFER_H_
#define AOM_AOM_FRAME_BUFFER_H_
#ifndef AOM_AOM_AOM_FRAME_BUFFER_H_
#define AOM_AOM_AOM_FRAME_BUFFER_H_
/*!\file
* \brief Describes the decoder external frame buffer interface.
@ -81,4 +81,4 @@ typedef int (*aom_release_frame_buffer_cb_fn_t)(void *priv,
} // extern "C"
#endif
#endif // AOM_AOM_FRAME_BUFFER_H_
#endif // AOM_AOM_AOM_FRAME_BUFFER_H_

Некоторые файлы не были показаны из-за слишком большого количества измененных файлов Показать больше