diff --git a/src/data/images/pricing/creator.jpg b/src/data/images/pricing/creator.jpg deleted file mode 100644 index c4fb2cbeb..000000000 Binary files a/src/data/images/pricing/creator.jpg and /dev/null differ diff --git a/src/data/images/pricing/enterprise.jpg b/src/data/images/pricing/enterprise.jpg deleted file mode 100644 index ab0ded0cf..000000000 Binary files a/src/data/images/pricing/enterprise.jpg and /dev/null differ diff --git a/src/data/images/pricing/pro.jpg b/src/data/images/pricing/pro.jpg deleted file mode 100644 index 7a80c0002..000000000 Binary files a/src/data/images/pricing/pro.jpg and /dev/null differ diff --git a/src/data/videos/homepage/coqui_license_explainer.mp4 b/src/data/videos/homepage/coqui_license_explainer.mp4 new file mode 100644 index 000000000..ca395bf05 Binary files /dev/null and b/src/data/videos/homepage/coqui_license_explainer.mp4 differ diff --git a/src/data/videos/homepage/coqui_license_explainer.webm b/src/data/videos/homepage/coqui_license_explainer.webm new file mode 100644 index 000000000..936056c4c Binary files /dev/null and b/src/data/videos/homepage/coqui_license_explainer.webm differ diff --git a/src/layouts/Home/components/Hero.tsx b/src/layouts/Home/components/Hero.tsx index 790727b1b..bf18ee3fd 100644 --- a/src/layouts/Home/components/Hero.tsx +++ b/src/layouts/Home/components/Hero.tsx @@ -7,6 +7,7 @@ import { mediaQuery } from '@zendeskgarden/react-theming'; import React from 'react'; +import { Link } from 'gatsby'; import { css } from 'styled-components'; import ClientSide from 'utils/ClientSide'; import { PrimaryButton, SecondaryButton } from './Buttons'; @@ -82,11 +83,19 @@ export const Hero = () => {

- XTTS: realistic, emotive text-to-speech through - generative AI. + XTTS: local, on-premise, realistic, emotive{' '} + text-to-speech through generative AI. +

+

+ Interested in a commercial license? Read the FAQ.

{ path="https://huggingface.co/spaces/coqui/xtts" /> + + +
+ +
+
+
+ +
diff --git a/src/layouts/Home/components/VideoFrame.tsx b/src/layouts/Home/components/VideoFrame.tsx index d829f8aad..dafeaab59 100644 --- a/src/layouts/Home/components/VideoFrame.tsx +++ b/src/layouts/Home/components/VideoFrame.tsx @@ -10,8 +10,8 @@ import { ReactComponent as MutedIcon } from '@zendeskgarden/svg-icons/src/16/vol import { ReactComponent as SpeakerIcon } from '@zendeskgarden/svg-icons/src/16/volume-unmuted-stroke.svg'; import React, { ReactNode, useState } from 'react'; import { css } from 'styled-components'; -import CoquiExplainerMp4 from '../../../data/videos/homepage/coqui_explainer.mp4'; -import CoquiExplainerWebM from '../../../data/videos/homepage/coqui_explainer.webm'; +import CoquiExplainerMp4 from '../../../data/videos/homepage/coqui_license_explainer.mp4'; +import CoquiExplainerWebM from '../../../data/videos/homepage/coqui_license_explainer.webm'; import { StyledButton } from './StyledButtons'; const VolumeIcon = ({ muted, children, ...rest }: { muted: boolean; children: ReactNode }) => { diff --git a/src/layouts/Home/components/Voices.tsx b/src/layouts/Home/components/Voices.tsx index 7b43555cc..7db7af40b 100644 --- a/src/layouts/Home/components/Voices.tsx +++ b/src/layouts/Home/components/Voices.tsx @@ -16,7 +16,6 @@ import { graphql, useStaticQuery } from 'gatsby'; import { PlayCircle, StopCircle } from 'iconsax-react'; import React, { useRef, useState } from 'react'; import styled, { css } from 'styled-components'; -import { TryNowButton } from './Buttons'; import { headerStyling } from './Styles'; const VoiceCard = styled.div` @@ -222,10 +221,9 @@ export const Voices = () => { text-align: center; `} > - Clone your voice in seconds or choose from our available AI voices, with more being added - with every release + Clone your voice using seconds of audio, fine-tune with minutes, or choose from our + available AI voices. -
{ `} />

- To get more voices, you can instantly clone any voice with just 3 seconds of audio + To get more voices, you can instantly clone any voice with seconds of audio or + fine-tune with minutes.

-
diff --git a/src/layouts/Home/index.tsx b/src/layouts/Home/index.tsx index 22d83e99f..6cf16fdd5 100644 --- a/src/layouts/Home/index.tsx +++ b/src/layouts/Home/index.tsx @@ -6,19 +6,14 @@ */ import React from 'react'; -import { Features } from './components/Features'; -import { GetStartedCtA } from './components/GetStartedCta'; import { Hero } from './components/Hero'; import { Voices } from './components/Voices'; -import { WhyCoqui } from './components/WhyCoqui'; export const HomeLayout = () => { return ( <> - - ); }; diff --git a/src/layouts/Root/components/Header.tsx b/src/layouts/Root/components/Header.tsx index fb857fe3a..3278914ff 100644 --- a/src/layouts/Root/components/Header.tsx +++ b/src/layouts/Root/components/Header.tsx @@ -13,7 +13,6 @@ import { ReactComponent as OverflowVerticalStroke } from '@zendeskgarden/svg-ico import { ReactComponent as CloseStroke } from '@zendeskgarden/svg-icons/src/16/x-stroke.svg'; import { graphql, Link, useStaticQuery } from 'gatsby'; import Img from 'gatsby-image'; -import { TryNowButton } from 'layouts/Home/components/Buttons'; import queryString from 'query-string'; import React, { HTMLAttributes, useEffect, useState } from 'react'; import styled, { css, DefaultTheme } from 'styled-components'; @@ -198,6 +197,9 @@ const MobileNav = ({ padding: ${p => p.theme.space.lg} ${p => p.theme.space.xxl}; `} > + + FAQ + { window.location.href = item; @@ -220,9 +222,6 @@ const MobileNav = ({ Dubbing - - - ); }; @@ -255,6 +254,7 @@ const Header = ({}) => { } `} > + FAQ { window.location.href = item; @@ -279,20 +279,6 @@ const Header = ({}) => { -
mediaQuery('down', 'sm', p.theme)} { - display: none; - } - `} - > - -
} label="Global navigation" diff --git a/src/pages/faq.tsx b/src/pages/faq.tsx new file mode 100644 index 000000000..bf48b9de5 --- /dev/null +++ b/src/pages/faq.tsx @@ -0,0 +1,233 @@ +/** + * Copyright Coqui GmbH + * + * Use of this source code is governed under the Apache License, Version 2.0 + * found at http://www.apache.org/licenses/LICENSE-2.0. + */ + +import React, { useEffect } from 'react'; +import { Link } from 'gatsby'; +import SEO from 'components/SEO'; +import RootLayout from 'layouts/Root'; +import MinWidthLayout from 'layouts/MinWidth'; +import { Anchor } from '@zendeskgarden/react-buttons'; +import { mediaQuery } from '@zendeskgarden/react-theming'; +import { Grid, Row, Col } from '@zendeskgarden/react-grid'; +import { LG, Paragraph, Span } from '@zendeskgarden/react-typography'; + +import GogleAnalyticsCookieConsent from 'components/Cookies'; +import { consentedToGoogleAnalytics } from 'utils/GoogleAnalytics'; + +const PrivacyPage: React.FC = () => { + useEffect(() => { + consentedToGoogleAnalytics(); + }); + + return ( + + + + mediaQuery('down', 'md', p.theme)} { + padding-right: ${p => p.theme.space.lg}; + padding-left: ${p => p.theme.space.lg}; + } + `} + > + + p.theme.space.base * 40}px; + margin-bottom: ${p => p.theme.space.base * 40}px; + `} + > + p.theme.space.lg}; + margin-bottom: ${p => p.theme.space.lg}; + `} + > + Coqui XTTS Commercial License FAQ + + p.theme.space.lg}; + margin-bottom: ${p => p.theme.space.lg}; + `} + > + Q. How do I buy an XTTS Commercial License? + + + + + Here's the checkout link. + + + + p.theme.space.lg}; + margin-bottom: ${p => p.theme.space.lg}; + `} + > + Q. Is this a one-time $365 or $1 per day purchase? + + + + One-time $365. That covers you for 1-year. + + + p.theme.space.lg}; + margin-bottom: ${p => p.theme.space.lg}; + `} + > + Q. Which XTTS versions does the license cover? + + + + + All versions released to-date (v1.x, v2.x), plus any new versions released while + your license is active. + + + + p.theme.space.lg}; + margin-bottom: ${p => p.theme.space.lg}; + `} + > + Q. Can I sell content that I produced after the license finishes? + + + + + Yes. If you make an audiobook today with XTTS, you can sell that audiobook even + after your XTTS license expires. + + + + p.theme.space.lg}; + margin-bottom: ${p => p.theme.space.lg}; + `} + > + Q. Do I need the license if my use-case isn't commercial? + + + + + Nope. If you're using XTTS non-commercially, it's free. You're + already covered under the default license (the{' '} + Coqui Public Model License). + + + + p.theme.space.lg}; + margin-bottom: ${p => p.theme.space.lg}; + `} + > + + Q. Is this licensing for unlimited web-based SaaS API usage or is the license for + self-hosting / on-premise / locally running the model? + + + + + + It's a bring-your-own GPU deal. You can run XTTS on your servers, on a + macbook, on a desktop computer... wherever you want. While you have an active + license, they're your model weights, you run them where you want. + + + + p.theme.space.lg}; + margin-bottom: ${p => p.theme.space.lg}; + `} + > + Q. If I fine-tune a model, is that covered under the same license? + + + + + Yes. A fine-tuned model is covered under the XTTS commercial license. However, + like the base XTTS model, you will always need a license to use any fine-tuned + model commercially. + + + + p.theme.space.lg}; + margin-bottom: ${p => p.theme.space.lg}; + `} + > + Q. Does the license come with dedicated support? + + + + + No. However, if you need dedicated support, we're happy to talk about that + under a custom{' '} + licensing@coqui.ai + + + + p.theme.space.lg}; + margin-bottom: ${p => p.theme.space.lg}; + `} + > + + Q. Does the license cover shipping the model to customer's computers? Like a + videogame that runs locally on the gamer's desktop? + + + + + + Yes. But you'll need an active license for your users to upgrade to XTTS + new releases. + + + + p.theme.space.lg}; + margin-bottom: ${p => p.theme.space.lg}; + `} + > + + Q. My company isn't generating revenue yet, do we qualify for the license? + + + + + + Maybe. If you have both under $1M USD in annual revenue and under $1M USD in + funding, then you quality. If you are over that bar, we're happy to talk + about a custom commercial license:{' '} + licensing@coqui.ai + + + + + + + + + + ); +}; + +export default PrivacyPage;